diff options
-rw-r--r-- | meta-oe/recipes-devtools/xerces-c/xerces-c/0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch | 58 | ||||
-rw-r--r-- | meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb | 8 |
2 files changed, 61 insertions, 5 deletions
diff --git a/meta-oe/recipes-devtools/xerces-c/xerces-c/0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch b/meta-oe/recipes-devtools/xerces-c/xerces-c/0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch new file mode 100644 index 0000000000..2ad7beb51c --- /dev/null +++ b/meta-oe/recipes-devtools/xerces-c/xerces-c/0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch | |||
@@ -0,0 +1,58 @@ | |||
1 | From d001f12d428f7adaeaadee5263a22c797c99d67b Mon Sep 17 00:00:00 2001 | ||
2 | From: Martin Jansa <martin.jansa@gmail.com> | ||
3 | Date: Fri, 30 Aug 2024 11:42:27 +0200 | ||
4 | Subject: [PATCH] aclocal.m4: don't use full path of $with_curl in xerces-c.pc | ||
5 | |||
6 | * fixes: | ||
7 | ERROR: QA Issue: File /usr/lib32/pkgconfig/xerces-c.pc in package lib32-libxerces-c-dev contains reference to TMPDIR [buildpaths] | ||
8 | |||
9 | * xerces-c was blacklisted due to tmpdir since 2016: | ||
10 | https://git.openembedded.org/meta-openembedded/commit/?id=1af196e42c811947bb483df30bfce758adee83d1 | ||
11 | |||
12 | * then sed call: | ||
13 | sed -i -e 's:-L${STAGING_DIR}/lib:-L\$\{libdir\}:g' ${B}/xerces-c.pc | ||
14 | was added to do_install:append and blacklist dropped in: | ||
15 | https://git.openembedded.org/meta-openembedded/commit/?id=87b9efff79e62f569525e4760adc594d0d9ac476 | ||
16 | |||
17 | * sed call was adjusted in: | ||
18 | https://git.openembedded.org/meta-openembedded/commit/?id=87c9e9537dc43468a6aaf706853b784ce6de14e0 | ||
19 | sed -i s:-L${STAGING_LIBDIR}::g ${B}/xerces-c.pc | ||
20 | |||
21 | * but it was still failing in some cases, e.g. with multilib where libdir is /usr/lib64, so the sed call is: | ||
22 | sed -i s:-L{WORKDIR}/recipe-sysroot/usr/lib64::g ${WORKDIR}/build/xerces-c.pc | ||
23 | but the actual xerces-c.pc file still has: | ||
24 | |||
25 | Libs: -L${libdir} -lxerces-c | ||
26 | Libs.private: -L${WORKDIR}/recipe-sysroot/usr/lib -lcurl | ||
27 | |||
28 | because this aclocal was always hardcoding "lib" (appended to --with-curl | ||
29 | value which is passed together with ${prefix}) and not respecting the libdir value: | ||
30 | PACKAGECONFIG[curl] = "--with-curl=${STAGING_DIR_TARGET}${prefix},--with-curl=no,curl" | ||
31 | PACKAGECONFIG[icu] = "--with-icu=${STAGING_DIR_TARGET}${prefix},--with-icu=no,icu" | ||
32 | |||
33 | * xerces-c supports CMake since 2017: | ||
34 | https://github.com/apache/xerces-c/commit/2606b2924c3e2bf0cf50f72b79378721b6bcf04e | ||
35 | switching from autotools to CMake would probably resolve some of this as well | ||
36 | |||
37 | Signed-off-by: Martin Jansa <martin.jansa@gmail.com> | ||
38 | --- | ||
39 | Upstream-Status: Pending [It would be better to just switch to CMake] | ||
40 | |||
41 | m4/xerces_curl_prefix.m4 | 4 ++-- | ||
42 | 1 file changed, 2 insertions(+), 2 deletions(-) | ||
43 | |||
44 | diff --git a/m4/xerces_curl_prefix.m4 b/m4/xerces_curl_prefix.m4 | ||
45 | index d1d015c..7928bdc 100644 | ||
46 | --- a/m4/xerces_curl_prefix.m4 | ||
47 | +++ b/m4/xerces_curl_prefix.m4 | ||
48 | @@ -39,8 +39,8 @@ AC_DEFUN([XERCES_CURL_PREFIX], | ||
49 | curl_libs=`$curl_config --libs` | ||
50 | else | ||
51 | if test -n "$with_curl"; then | ||
52 | - curl_flags="-I$with_curl/include" | ||
53 | - curl_libs="-L$with_curl/lib -lcurl" | ||
54 | + curl_flags="" | ||
55 | + curl_libs="-lcurl" | ||
56 | else | ||
57 | # Default compiler paths. | ||
58 | # | ||
diff --git a/meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb b/meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb index 1643af2546..9fd7e8fbab 100644 --- a/meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb +++ b/meta-oe/recipes-devtools/xerces-c/xerces-c_3.2.5.bb | |||
@@ -9,7 +9,9 @@ SECTION = "libs" | |||
9 | LICENSE = "Apache-2.0" | 9 | LICENSE = "Apache-2.0" |
10 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" | 10 | LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57" |
11 | 11 | ||
12 | SRC_URI = "http://archive.apache.org/dist/xerces/c/3/sources/${BP}.tar.bz2" | 12 | SRC_URI = "http://archive.apache.org/dist/xerces/c/3/sources/${BP}.tar.bz2 \ |
13 | file://0001-aclocal.m4-don-t-use-full-path-of-with_curl-in-xerce.patch \ | ||
14 | " | ||
13 | SRC_URI[sha256sum] = "1db4028c9b7f1f778efbf4a9462d65e13f9938f2c22f9e9994e12c49ba97e252" | 15 | SRC_URI[sha256sum] = "1db4028c9b7f1f778efbf4a9462d65e13f9938f2c22f9e9994e12c49ba97e252" |
14 | 16 | ||
15 | inherit autotools | 17 | inherit autotools |
@@ -18,10 +20,6 @@ PACKAGECONFIG ??= "curl icu" | |||
18 | PACKAGECONFIG[curl] = "--with-curl=${STAGING_DIR_TARGET}${prefix},--with-curl=no,curl" | 20 | PACKAGECONFIG[curl] = "--with-curl=${STAGING_DIR_TARGET}${prefix},--with-curl=no,curl" |
19 | PACKAGECONFIG[icu] = "--with-icu=${STAGING_DIR_TARGET}${prefix},--with-icu=no,icu" | 21 | PACKAGECONFIG[icu] = "--with-icu=${STAGING_DIR_TARGET}${prefix},--with-icu=no,icu" |
20 | 22 | ||
21 | do_install:prepend () { | ||
22 | sed -i s:-L${STAGING_LIBDIR}::g ${B}/xerces-c.pc | ||
23 | } | ||
24 | |||
25 | PACKAGES = "libxerces-c \ | 23 | PACKAGES = "libxerces-c \ |
26 | libxerces-c-dev \ | 24 | libxerces-c-dev \ |
27 | xerces-c-samples \ | 25 | xerces-c-samples \ |