diff options
| author | Ross Burton <ross.burton@arm.com> | 2025-06-17 15:16:48 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-06-18 14:04:17 +0100 |
| commit | b1b3318eff36d4d9b2d3a935dee607c4f012f992 (patch) | |
| tree | bbbcd4a736c20c261001d47cd15360ce2a2feda1 | |
| parent | 27c5b245aae1fa411450f547175424f18e61dab3 (diff) | |
| download | poky-b1b3318eff36d4d9b2d3a935dee607c4f012f992.tar.gz | |
libcheck: disable subunit support
We don't have a recipe for subunit in core (or any layer in the layer
index), and unfortunately a bug in the CMakeLists means that the native
build can detect subunit on the host (so host contamination) and only
half-enable it, so the build fails.
Take a patch from upstream's github to add an option for subunit, and
explicitly disable it.
(From OE-Core rev: 155f0f65fa0f08a4586d3c9a02976f43a10b08aa)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/recipes-support/libcheck/libcheck/subunit.patch | 43 | ||||
| -rw-r--r-- | meta/recipes-support/libcheck/libcheck_0.15.2.bb | 5 |
2 files changed, 46 insertions, 2 deletions
diff --git a/meta/recipes-support/libcheck/libcheck/subunit.patch b/meta/recipes-support/libcheck/libcheck/subunit.patch new file mode 100644 index 0000000000..29c4b15601 --- /dev/null +++ b/meta/recipes-support/libcheck/libcheck/subunit.patch | |||
| @@ -0,0 +1,43 @@ | |||
| 1 | From a6cd376b9ebcb4afc9ab06bce23b9bd909811ece Mon Sep 17 00:00:00 2001 | ||
| 2 | From: Christopher Obbard <christopher.obbard@linaro.org> | ||
| 3 | Date: Thu, 13 Jun 2024 09:49:53 +0100 | ||
| 4 | Subject: [PATCH] Allow disabling autodetection of subunit library | ||
| 5 | |||
| 6 | It can be useful to avoid linking to subunit when we are building the check | ||
| 7 | library for the host, e.g. in a buildroot recipe, where the built check is | ||
| 8 | linked into other applications which are used on the host to build images. | ||
| 9 | |||
| 10 | These applications are built with the host's cross-compiler and can use | ||
| 11 | the host's pkgconfig to determine if libraries are available. When check | ||
| 12 | is linked against other libraries, it can fail this check for subunit. | ||
| 13 | |||
| 14 | Allow disabling the autodetection of subunit with a configure flag | ||
| 15 | -DENABLE_SUBUNIT_EXT=OFF | ||
| 16 | |||
| 17 | Signed-off-by: Christopher Obbard <christopher.obbard@linaro.org> | ||
| 18 | |||
| 19 | Upstream-Status: Submitted [https://github.com/libcheck/check/pull/353/] | ||
| 20 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
| 21 | --- | ||
| 22 | CMakeLists.txt | 8 +++++++- | ||
| 23 | 1 file changed, 7 insertions(+), 1 deletion(-) | ||
| 24 | |||
| 25 | diff --git a/CMakeLists.txt b/CMakeLists.txt | ||
| 26 | index 2ee580bc..6b36015b 100644 | ||
| 27 | --- a/CMakeLists.txt | ||
| 28 | +++ b/CMakeLists.txt | ||
| 29 | @@ -393,7 +393,13 @@ if (HAVE_LIBRT) | ||
| 30 | ADD_DEFINITIONS(-DHAVE_LIBRT=1) | ||
| 31 | endif (HAVE_LIBRT) | ||
| 32 | |||
| 33 | -check_library_exists(subunit subunit_test_start "" HAVE_SUBUNIT) | ||
| 34 | +# Allow disabling subunit | ||
| 35 | +IF(ENABLE_SUBUNIT_EXT) | ||
| 36 | + check_library_exists(subunit subunit_test_start "" HAVE_SUBUNIT) | ||
| 37 | +ELSE(ENABLE_SUBUNIT_EXT) | ||
| 38 | + set(HAVE_SUBUNIT, false) | ||
| 39 | +ENDIF(ENABLE_SUBUNIT_EXT) | ||
| 40 | + | ||
| 41 | if (HAVE_SUBUNIT) | ||
| 42 | set(SUBUNIT "subunit") | ||
| 43 | set(ENABLE_SUBUNIT 1) | ||
diff --git a/meta/recipes-support/libcheck/libcheck_0.15.2.bb b/meta/recipes-support/libcheck/libcheck_0.15.2.bb index ea0453a166..2e56a1ab00 100644 --- a/meta/recipes-support/libcheck/libcheck_0.15.2.bb +++ b/meta/recipes-support/libcheck/libcheck_0.15.2.bb | |||
| @@ -11,7 +11,8 @@ LICENSE = "LGPL-2.1-or-later" | |||
| 11 | LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1" | 11 | LIC_FILES_CHKSUM = "file://COPYING.LESSER;md5=2d5025d4aa3495befef8f17206a5b0a1" |
| 12 | 12 | ||
| 13 | SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/check-${PV}.tar.gz \ | 13 | SRC_URI = "${GITHUB_BASE_URI}/download/${PV}/check-${PV}.tar.gz \ |
| 14 | file://automake-output.patch" | 14 | file://automake-output.patch \ |
| 15 | file://subunit.patch" | ||
| 15 | SRC_URI[sha256sum] = "a8de4e0bacfb4d76dd1c618ded263523b53b85d92a146d8835eb1a52932fa20a" | 16 | SRC_URI[sha256sum] = "a8de4e0bacfb4d76dd1c618ded263523b53b85d92a146d8835eb1a52932fa20a" |
| 16 | GITHUB_BASE_URI = "https://github.com/libcheck/check/releases/" | 17 | GITHUB_BASE_URI = "https://github.com/libcheck/check/releases/" |
| 17 | 18 | ||
| @@ -22,6 +23,7 @@ inherit cmake pkgconfig texinfo github-releases | |||
| 22 | RREPLACES:${PN} = "check (<= 0.9.5)" | 23 | RREPLACES:${PN} = "check (<= 0.9.5)" |
| 23 | 24 | ||
| 24 | EXTRA_OECMAKE:append:class-target = " -DAWK_PATH=${bindir}/awk" | 25 | EXTRA_OECMAKE:append:class-target = " -DAWK_PATH=${bindir}/awk" |
| 26 | EXTRA_OECMAKE = "-DENABLE_SUBUNIT_EXT=OFF" | ||
| 25 | 27 | ||
| 26 | do_install:append:class-native() { | 28 | do_install:append:class-native() { |
| 27 | create_cmdline_shebang_wrapper ${D}${bindir}/checkmk | 29 | create_cmdline_shebang_wrapper ${D}${bindir}/checkmk |
| @@ -34,4 +36,3 @@ PACKAGES =+ "checkmk" | |||
| 34 | FILES:checkmk = "${bindir}/checkmk" | 36 | FILES:checkmk = "${bindir}/checkmk" |
| 35 | 37 | ||
| 36 | RDEPENDS:checkmk = "gawk" | 38 | RDEPENDS:checkmk = "gawk" |
| 37 | |||
