From 949e2cc73896014a3f9ad32c44d22a8622ba1bea Mon Sep 17 00:00:00 2001 From: Wang Mingyu Date: Wed, 4 Jun 2025 16:44:39 +0800 Subject: apr: upgrade 1.7.5 -> 1.7.6 0001-Add-option-to-disable-timed-dependant-tests.patch 0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch 0002-apr-Remove-workdir-path-references-from-installed-ap.patch 0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch refreshed for 1.7.6 (From OE-Core rev: 21721ba0701acbb691d59da7892af10a222d3fcb) Signed-off-by: Wang Mingyu Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- ...d-option-to-disable-timed-dependant-tests.patch | 11 +- ...emove-runtime-test-for-mmap-that-can-map-.patch | 7 +- ...workdir-path-references-from-installed-ap.patch | 9 +- ...n-fix-LTFLAGS-to-make-it-work-with-ccache.patch | 11 +- meta/recipes-support/apr/apr_1.7.5.bb | 137 --------------------- meta/recipes-support/apr/apr_1.7.6.bb | 137 +++++++++++++++++++++ 6 files changed, 153 insertions(+), 159 deletions(-) delete mode 100644 meta/recipes-support/apr/apr_1.7.5.bb create mode 100644 meta/recipes-support/apr/apr_1.7.6.bb diff --git a/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch b/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch index b46dc76a86..72a2ab777e 100644 --- a/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch +++ b/meta/recipes-support/apr/apr/0001-Add-option-to-disable-timed-dependant-tests.patch @@ -1,4 +1,4 @@ -From 225abf37cd0b49960664b59f08e515a4c4ea5ad0 Mon Sep 17 00:00:00 2001 +From dc02ac2f43e47178a9b1f35ef6906d7835dc121b Mon Sep 17 00:00:00 2001 From: Jeremy Puhlman Date: Thu, 26 Mar 2020 18:30:36 +0000 Subject: [PATCH] Add option to disable timed dependant tests @@ -9,7 +9,6 @@ a timer or other timing related issues. Upstream-Status: Submitted [https://github.com/apache/apr/pull/54] Signed-off-by: Jeremy Puhlman - --- configure.in | 6 ++++++ include/apr.h.in | 1 + @@ -17,10 +16,10 @@ Signed-off-by: Jeremy Puhlman 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/configure.in b/configure.in -index bfd488b..3663220 100644 +index 0ce20ab..3d42953 100644 --- a/configure.in +++ b/configure.in -@@ -3023,6 +3023,12 @@ AC_ARG_ENABLE(timedlocks, +@@ -3119,6 +3119,12 @@ AC_ARG_ENABLE(timedlocks, ) AC_SUBST(apr_has_timedlocks) @@ -34,10 +33,10 @@ index bfd488b..3663220 100644 # so getaddrinfo/gai_strerror are not used. if test $have_ipv6 = 0; then diff --git a/include/apr.h.in b/include/apr.h.in -index ee99def..c46a5f4 100644 +index 637ed38..e7cb9b9 100644 --- a/include/apr.h.in +++ b/include/apr.h.in -@@ -298,6 +298,7 @@ extern "C" { +@@ -307,6 +307,7 @@ extern "C" { #define APR_HAS_XTHREAD_FILES @apr_has_xthread_files@ #define APR_HAS_OS_UUID @osuuid@ #define APR_HAS_TIMEDLOCKS @apr_has_timedlocks@ diff --git a/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch b/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch index 3480deaa4d..7e22270b88 100644 --- a/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch +++ b/meta/recipes-support/apr/apr/0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch @@ -1,4 +1,4 @@ -From 316b81c462f065927d7fec56aadd5c8cb94d1cf0 Mon Sep 17 00:00:00 2001 +From 84990901ba642238779c74a003c1f5e572ab8d38 Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 26 Aug 2022 00:28:08 -0700 Subject: [PATCH] configure: Remove runtime test for mmap that can map @@ -10,16 +10,15 @@ mutexes Upstream-Status: Inappropriate [Cross-compile specific] Signed-off-by: Khem Raj - --- configure.in | 30 ------------------------------ 1 file changed, 30 deletions(-) diff --git a/configure.in b/configure.in -index 3663220..dce9789 100644 +index 3d42953..7e43b0f 100644 --- a/configure.in +++ b/configure.in -@@ -1303,36 +1303,6 @@ AC_CHECK_FUNCS([mmap munmap shm_open shm_unlink shmget shmat shmdt shmctl \ +@@ -1391,36 +1391,6 @@ AC_CHECK_FUNCS([mmap munmap shm_open shm_unlink shmget shmat shmdt shmctl \ APR_CHECK_DEFINE(MAP_ANON, sys/mman.h) AC_CHECK_FILE(/dev/zero) diff --git a/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch b/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch index d63423f3a1..2a9cfb0f3d 100644 --- a/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch +++ b/meta/recipes-support/apr/apr/0002-apr-Remove-workdir-path-references-from-installed-ap.patch @@ -1,4 +1,4 @@ -From 689a8db96a6d1e1cae9cbfb35d05ac82140a6555 Mon Sep 17 00:00:00 2001 +From 5050645e626a8ee91a7f45070ef2d3911e1870d7 Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Tue, 30 Jan 2018 09:39:06 +0800 Subject: [PATCH] apr: Remove workdir path references from installed apr files @@ -13,16 +13,15 @@ packages at target run time, the workdir path caused confusion. Rebase to 1.6.3 Signed-off-by: Hongxu Jia - --- apr-config.in | 32 ++------------------------------ 1 file changed, 2 insertions(+), 30 deletions(-) diff --git a/apr-config.in b/apr-config.in -index bed47ca..47874e5 100644 +index 626d3b0..42be269 100644 --- a/apr-config.in +++ b/apr-config.in -@@ -164,16 +164,7 @@ while test $# -gt 0; do +@@ -179,16 +179,7 @@ while test $# -gt 0; do flags="$flags $LDFLAGS" ;; --includes) @@ -39,7 +38,7 @@ index bed47ca..47874e5 100644 ;; --srcdir) echo $APR_SOURCE_DIR -@@ -197,33 +188,14 @@ while test $# -gt 0; do +@@ -212,33 +203,14 @@ while test $# -gt 0; do exit 0 ;; --link-ld) diff --git a/meta/recipes-support/apr/apr/0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch b/meta/recipes-support/apr/apr/0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch index 02634e6fde..bd8e7786ba 100644 --- a/meta/recipes-support/apr/apr/0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch +++ b/meta/recipes-support/apr/apr/0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch @@ -1,7 +1,7 @@ -From 2e66cece0c3adff92733332111204ddc1d730a07 Mon Sep 17 00:00:00 2001 +From 2f5db35d6c6b4d40e04591c98d297ef764777aa3 Mon Sep 17 00:00:00 2001 From: Robert Yang Date: Thu, 19 Nov 2015 18:25:38 -0800 -Subject: [PATCH 5/7] configure.in: fix LTFLAGS to make it work with ccache +Subject: [PATCH] configure.in: fix LTFLAGS to make it work with ccache When ccache is enabled, libtool requires --tag=CC when use ccache, otherwise when building apr-util with ccache enabled: @@ -19,10 +19,10 @@ Signed-off-by: Robert Yang 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure.in b/configure.in -index 361120f..3b10422 100644 +index b0457e2..0ce20ab 100644 --- a/configure.in +++ b/configure.in -@@ -249,7 +249,7 @@ case $host in +@@ -266,7 +266,7 @@ case $host in ;; *) if test "x$LTFLAGS" = "x"; then @@ -31,6 +31,3 @@ index 361120f..3b10422 100644 fi if test "$experimental_libtool" = "yes"; then # Use a custom-made libtool replacement --- -1.8.3.1 - diff --git a/meta/recipes-support/apr/apr_1.7.5.bb b/meta/recipes-support/apr/apr_1.7.5.bb deleted file mode 100644 index 83d84bfdb6..0000000000 --- a/meta/recipes-support/apr/apr_1.7.5.bb +++ /dev/null @@ -1,137 +0,0 @@ -SUMMARY = "Apache Portable Runtime (APR) library" - -DESCRIPTION = "Create and maintain software libraries that provide a predictable \ -and consistent interface to underlying platform-specific implementations." - -HOMEPAGE = "http://apr.apache.org/" -SECTION = "libs" -DEPENDS = "util-linux" - -LICENSE = "Apache-2.0" -LIC_FILES_CHKSUM = "file://LICENSE;md5=4dfd4cd216828c8cae5de5a12f3844c8 \ - file://include/apr_lib.h;endline=15;md5=823b3d1a7225df8f7b68a69c3c2b4c71" - -BBCLASSEXTEND = "native nativesdk" - -SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \ - file://run-ptest \ - file://0002-apr-Remove-workdir-path-references-from-installed-ap.patch \ - file://0004-Fix-packet-discards-HTTP-redirect.patch \ - file://0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch \ - file://0001-Add-option-to-disable-timed-dependant-tests.patch \ - file://0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch \ - file://autoconf-2.73.patch \ - file://0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch \ - " - -SRC_URI[sha256sum] = "cd0f5d52b9ab1704c72160c5ee3ed5d3d4ca2df4a7f8ab564e3cb352b67232f2" - -inherit autotools-brokensep lib_package binconfig multilib_header ptest multilib_script - -OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" - -# Added to fix some issues with cmake. Refer to https://github.com/bmwcarit/meta-ros/issues/68#issuecomment-19896928 -CACHED_CONFIGUREVARS += "apr_cv_mutex_recursive=yes" -# Enable largefile -CACHED_CONFIGUREVARS += "apr_cv_use_lfs64=yes" -# Additional AC_TRY_RUN tests which will need to be cached for cross compile -CACHED_CONFIGUREVARS += "apr_cv_epoll=yes epoll_create1=yes apr_cv_sock_cloexec=yes \ - ac_cv_struct_rlimit=yes \ - ac_cv_func_sem_open=yes \ - apr_cv_process_shared_works=yes \ - apr_cv_mutex_robust_shared=yes \ - " -# Also suppress trying to use sctp. -# -CACHED_CONFIGUREVARS += "ac_cv_header_netinet_sctp_h=no ac_cv_header_netinet_sctp_uio_h=no" - -# ac_cv_sizeof_struct_iovec is deduced using runtime check which will fail during cross-compile -CACHED_CONFIGUREVARS += "${@['ac_cv_sizeof_struct_iovec=16','ac_cv_sizeof_struct_iovec=8'][d.getVar('SITEINFO_BITS') != '32']}" - -CACHED_CONFIGUREVARS += "ac_cv_file__dev_zero=yes" - -CACHED_CONFIGUREVARS:append:libc-musl = " ac_cv_strerror_r_rc_int=yes" -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" -PACKAGECONFIG:append:libc-musl = " xsi-strerror" -PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," -PACKAGECONFIG[timed-tests] = "--enable-timed-tests,--disable-timed-tests," -PACKAGECONFIG[xsi-strerror] = "ac_cv_strerror_r_rc_int=yes,ac_cv_strerror_r_rc_int=no," - -do_configure:prepend() { - # Avoid absolute paths for grep since it causes failures - # when using sstate between different hosts with different - # install paths for grep. - export GREP="grep" - - cd ${S} - # The "2" means libtool version 2. - ./buildconf 2 -} - -MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apr-1-config \ - ${PN}-dev:${datadir}/build-1/apr_rules.mk" - -FILES:${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*" -RDEPENDS:${PN}-dev += "bash libtool" - -RDEPENDS:${PN}-ptest += "libgcc" - -#for some reason, build/libtool.m4 handled by buildconf still be overwritten -#when autoconf, so handle it again. -do_configure:append() { - sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4 - sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk -} - -do_install:append() { - oe_multilib_header apr.h - install -d ${D}${datadir}/apr -} - -do_install:append:class-target() { - rm -f ${D}${datadir}/build-1/libtool - sed -i s,LIBTOOL=.*,LIBTOOL=libtool,g ${D}${datadir}/build-1/apr_rules.mk - sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \ - -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk - sed -i -e 's,${STAGING_DIR_HOST},,g' \ - -e 's,APR_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \ - -e 's,APR_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apr-1-config -} - -SSTATE_SCAN_FILES += "apr_rules.mk libtool" - -SYSROOT_PREPROCESS_FUNCS += "apr_sysroot_preprocess" - -apr_sysroot_preprocess () { - d=${SYSROOT_DESTDIR}${datadir}/apr - install -d $d/ - cp ${S}/build/apr_rules.mk $d/ - sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk - sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk - sed -i s,LIBTOOL=.*,LIBTOOL=libtool,g $d/apr_rules.mk - sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk - cp ${S}/build/mkdir.sh $d/ - cp ${S}/build/make_exports.awk $d/ - cp ${S}/build/make_var_export.awk $d/ - cp ${S}/libtool ${SYSROOT_DESTDIR}${datadir}/build-1/libtool -} - -do_compile_ptest() { - cd ${S}/test - oe_runmake -} - -do_install_ptest() { - t=${D}${PTEST_PATH}/test - mkdir -p $t/.libs - cp -r ${S}/test/data $t/ - cp -r ${S}/test/.libs/*.so $t/.libs/ - cp ${S}/test/proc_child $t/ - cp ${S}/test/readchild $t/ - cp ${S}/test/sockchild $t/ - cp ${S}/test/sockperf $t/ - cp ${S}/test/testall $t/ - cp ${S}/test/tryread $t/ -} - -export CONFIG_SHELL = "/bin/bash" diff --git a/meta/recipes-support/apr/apr_1.7.6.bb b/meta/recipes-support/apr/apr_1.7.6.bb new file mode 100644 index 0000000000..13fa5daa3c --- /dev/null +++ b/meta/recipes-support/apr/apr_1.7.6.bb @@ -0,0 +1,137 @@ +SUMMARY = "Apache Portable Runtime (APR) library" + +DESCRIPTION = "Create and maintain software libraries that provide a predictable \ +and consistent interface to underlying platform-specific implementations." + +HOMEPAGE = "http://apr.apache.org/" +SECTION = "libs" +DEPENDS = "util-linux" + +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://LICENSE;md5=4dfd4cd216828c8cae5de5a12f3844c8 \ + file://include/apr_lib.h;endline=15;md5=823b3d1a7225df8f7b68a69c3c2b4c71" + +BBCLASSEXTEND = "native nativesdk" + +SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.bz2 \ + file://run-ptest \ + file://0002-apr-Remove-workdir-path-references-from-installed-ap.patch \ + file://0004-Fix-packet-discards-HTTP-redirect.patch \ + file://0005-configure.in-fix-LTFLAGS-to-make-it-work-with-ccache.patch \ + file://0001-Add-option-to-disable-timed-dependant-tests.patch \ + file://0001-configure-Remove-runtime-test-for-mmap-that-can-map-.patch \ + file://autoconf-2.73.patch \ + file://0001-dso-Check-for-NULL-handle-in-apr_dso_sym.patch \ + " + +SRC_URI[sha256sum] = "49030d92d2575da735791b496dc322f3ce5cff9494779ba8cc28c7f46c5deb32" + +inherit autotools-brokensep lib_package binconfig multilib_header ptest multilib_script + +OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'" + +# Added to fix some issues with cmake. Refer to https://github.com/bmwcarit/meta-ros/issues/68#issuecomment-19896928 +CACHED_CONFIGUREVARS += "apr_cv_mutex_recursive=yes" +# Enable largefile +CACHED_CONFIGUREVARS += "apr_cv_use_lfs64=yes" +# Additional AC_TRY_RUN tests which will need to be cached for cross compile +CACHED_CONFIGUREVARS += "apr_cv_epoll=yes epoll_create1=yes apr_cv_sock_cloexec=yes \ + ac_cv_struct_rlimit=yes \ + ac_cv_func_sem_open=yes \ + apr_cv_process_shared_works=yes \ + apr_cv_mutex_robust_shared=yes \ + " +# Also suppress trying to use sctp. +# +CACHED_CONFIGUREVARS += "ac_cv_header_netinet_sctp_h=no ac_cv_header_netinet_sctp_uio_h=no" + +# ac_cv_sizeof_struct_iovec is deduced using runtime check which will fail during cross-compile +CACHED_CONFIGUREVARS += "${@['ac_cv_sizeof_struct_iovec=16','ac_cv_sizeof_struct_iovec=8'][d.getVar('SITEINFO_BITS') != '32']}" + +CACHED_CONFIGUREVARS += "ac_cv_file__dev_zero=yes" + +CACHED_CONFIGUREVARS:append:libc-musl = " ac_cv_strerror_r_rc_int=yes" +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)}" +PACKAGECONFIG:append:libc-musl = " xsi-strerror" +PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," +PACKAGECONFIG[timed-tests] = "--enable-timed-tests,--disable-timed-tests," +PACKAGECONFIG[xsi-strerror] = "ac_cv_strerror_r_rc_int=yes,ac_cv_strerror_r_rc_int=no," + +do_configure:prepend() { + # Avoid absolute paths for grep since it causes failures + # when using sstate between different hosts with different + # install paths for grep. + export GREP="grep" + + cd ${S} + # The "2" means libtool version 2. + ./buildconf 2 +} + +MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apr-1-config \ + ${PN}-dev:${datadir}/build-1/apr_rules.mk" + +FILES:${PN}-dev += "${libdir}/apr.exp ${datadir}/build-1/*" +RDEPENDS:${PN}-dev += "bash libtool" + +RDEPENDS:${PN}-ptest += "libgcc" + +#for some reason, build/libtool.m4 handled by buildconf still be overwritten +#when autoconf, so handle it again. +do_configure:append() { + sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/libtool.m4 + sed -i -e 's/LIBTOOL=\(.*\)top_build/LIBTOOL=\1apr_build/' ${S}/build/apr_rules.mk +} + +do_install:append() { + oe_multilib_header apr.h + install -d ${D}${datadir}/apr +} + +do_install:append:class-target() { + rm -f ${D}${datadir}/build-1/libtool + sed -i s,LIBTOOL=.*,LIBTOOL=libtool,g ${D}${datadir}/build-1/apr_rules.mk + sed -i -e 's,${DEBUG_PREFIX_MAP},,g' \ + -e 's,${STAGING_DIR_HOST},,g' ${D}${datadir}/build-1/apr_rules.mk + sed -i -e 's,${STAGING_DIR_HOST},,g' \ + -e 's,APR_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \ + -e 's,APR_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apr-1-config +} + +SSTATE_SCAN_FILES += "apr_rules.mk libtool" + +SYSROOT_PREPROCESS_FUNCS += "apr_sysroot_preprocess" + +apr_sysroot_preprocess () { + d=${SYSROOT_DESTDIR}${datadir}/apr + install -d $d/ + cp ${S}/build/apr_rules.mk $d/ + sed -i s,apr_builddir=.*,apr_builddir=,g $d/apr_rules.mk + sed -i s,apr_builders=.*,apr_builders=,g $d/apr_rules.mk + sed -i s,LIBTOOL=.*,LIBTOOL=libtool,g $d/apr_rules.mk + sed -i s,\$\(apr_builders\),${STAGING_DATADIR}/apr/,g $d/apr_rules.mk + cp ${S}/build/mkdir.sh $d/ + cp ${S}/build/make_exports.awk $d/ + cp ${S}/build/make_var_export.awk $d/ + cp ${S}/libtool ${SYSROOT_DESTDIR}${datadir}/build-1/libtool +} + +do_compile_ptest() { + cd ${S}/test + oe_runmake +} + +do_install_ptest() { + t=${D}${PTEST_PATH}/test + mkdir -p $t/.libs + cp -r ${S}/test/data $t/ + cp -r ${S}/test/.libs/*.so $t/.libs/ + cp ${S}/test/proc_child $t/ + cp ${S}/test/readchild $t/ + cp ${S}/test/sockchild $t/ + cp ${S}/test/sockperf $t/ + cp ${S}/test/testall $t/ + cp ${S}/test/tryread $t/ +} + +export CONFIG_SHELL = "/bin/bash" -- cgit v1.2.3-54-g00ecf