Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
From 3a97f58cfb40fc1911bbfd067e8457a472613d75 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 18 Apr 2023 22:58:00 -0700
|
||||
Subject: [PATCH] test_transformation: Check if transform is supported before
|
||||
using it
|
||||
|
||||
This helps in excluding these tests on systems where these are not
|
||||
available e.g. musl
|
||||
|
||||
Upstream-Status: Submitted [https://bz.apache.org/bugzilla/show_bug.cgi?id=66570]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
test/testxlate.c | 8 ++++++--
|
||||
1 file changed, 6 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/testxlate.c b/test/testxlate.c
|
||||
index 6981eff..de00fa4 100644
|
||||
--- a/test/testxlate.c
|
||||
+++ b/test/testxlate.c
|
||||
@@ -116,8 +116,12 @@ static void test_transformation(abts_case *tc, void *data)
|
||||
}
|
||||
|
||||
/* 4. Transformation using charset aliases */
|
||||
- one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p);
|
||||
- one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p);
|
||||
+ if (is_transform_supported(tc, "UTF-8", "UTF-7", p)) {
|
||||
+ one_test(tc, "UTF-8", "UTF-7", test_utf8, test_utf7, p);
|
||||
+ }
|
||||
+ if (is_transform_supported(tc, "UTF-7", "UTF-8", p)) {
|
||||
+ one_test(tc, "UTF-7", "UTF-8", test_utf7, test_utf8, p);
|
||||
+ }
|
||||
}
|
||||
|
||||
#endif /* APR_HAS_XLATE */
|
||||
--
|
||||
2.40.0
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Index: apr-util-1.3.4/apu-config.in
|
||||
===================================================================
|
||||
--- apr-util-1.3.4.orig/apu-config.in 2009-01-12 17:08:06.000000000 +0000
|
||||
+++ apr-util-1.3.4/apu-config.in 2009-01-12 17:09:00.000000000 +0000
|
||||
@@ -134,14 +134,7 @@
|
||||
exit 0
|
||||
;;
|
||||
--includes)
|
||||
- if test "$location" = "installed"; then
|
||||
flags="$flags -I$includedir $INCLUDES"
|
||||
- elif test "$location" = "source"; then
|
||||
- flags="$flags -I$APU_SOURCE_DIR/include $INCLUDES"
|
||||
- else
|
||||
- # this is for VPATH builds
|
||||
- flags="$flags -I$APU_BUILD_DIR/include -I$APU_SOURCE_DIR/include $INCLUDES"
|
||||
- fi
|
||||
;;
|
||||
--ldflags)
|
||||
flags="$flags $LDFLAGS"
|
||||
@@ -155,28 +148,10 @@
|
||||
exit 0
|
||||
;;
|
||||
--link-ld)
|
||||
- if test "$location" = "installed"; then
|
||||
- ### avoid using -L if libdir is a "standard" location like /usr/lib
|
||||
flags="$flags -L$libdir -l$APRUTIL_LIBNAME"
|
||||
- else
|
||||
- flags="$flags -L$APU_BUILD_DIR -l$APRUTIL_LIBNAME"
|
||||
- fi
|
||||
;;
|
||||
--link-libtool)
|
||||
- # If the LA_FILE exists where we think it should be, use it. If we're
|
||||
- # installed and the LA_FILE does not exist, assume to use -L/-l
|
||||
- # (the LA_FILE may not have been installed). If we're building ourselves,
|
||||
- # we'll assume that at some point the .la file be created.
|
||||
- if test -f "$LA_FILE"; then
|
||||
- flags="$flags $LA_FILE"
|
||||
- elif test "$location" = "installed"; then
|
||||
- ### avoid using -L if libdir is a "standard" location like /usr/lib
|
||||
- # Since the user is specifying they are linking with libtool, we
|
||||
- # *know* that -R will be recognized by libtool.
|
||||
- flags="$flags -L$libdir -R$libdir -l$APRUTIL_LIBNAME"
|
||||
- else
|
||||
- flags="$flags $LA_FILE"
|
||||
- fi
|
||||
+ flags="$flags -l$APRUTIL_LIBNAME"
|
||||
;;
|
||||
--apu-la-file)
|
||||
if test -f "$LA_FILE"; then
|
||||
@@ -0,0 +1,31 @@
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Index: apr-util-1.4.1/configure.in
|
||||
===================================================================
|
||||
--- apr-util-1.4.1.orig/configure.in 2009-12-18 03:15:19.000000000 +0800
|
||||
+++ apr-util-1.4.1/configure.in 2011-12-30 13:32:07.000000000 +0800
|
||||
@@ -8,15 +8,15 @@
|
||||
AC_CONFIG_HEADER(include/private/apu_config.h)
|
||||
AC_CONFIG_AUX_DIR(build)
|
||||
|
||||
-sinclude(build/apu-conf.m4)
|
||||
-sinclude(build/apu-iconv.m4)
|
||||
-sinclude(build/apu-hints.m4)
|
||||
-sinclude(build/apr_common.m4)
|
||||
-sinclude(build/find_apr.m4)
|
||||
-sinclude(build/crypto.m4)
|
||||
-sinclude(build/dbm.m4)
|
||||
-sinclude(build/dbd.m4)
|
||||
-sinclude(build/dso.m4)
|
||||
+#sinclude(build/apu-conf.m4)
|
||||
+#sinclude(build/apu-iconv.m4)
|
||||
+#sinclude(build/apu-hints.m4)
|
||||
+#sinclude(build/apr_common.m4)
|
||||
+#sinclude(build/find_apr.m4)
|
||||
+#sinclude(build/crypto.m4)
|
||||
+#sinclude(build/dbm.m4)
|
||||
+#sinclude(build/dbd.m4)
|
||||
+#sinclude(build/dso.m4)
|
||||
|
||||
dnl Generate ./config.nice for reproducing runs of configure
|
||||
dnl
|
||||
6
sources/poky/meta/recipes-support/apr/apr-util/run-ptest
Normal file
6
sources/poky/meta/recipes-support/apr/apr-util/run-ptest
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
cd test
|
||||
./testall |sed \
|
||||
-e 's|\(.*\): SUCCESS|PASS: \1|' \
|
||||
-e 's|\(.*\): FAILED|FAIL: \1|'
|
||||
97
sources/poky/meta/recipes-support/apr/apr-util_1.6.3.bb
Normal file
97
sources/poky/meta/recipes-support/apr/apr-util_1.6.3.bb
Normal file
@@ -0,0 +1,97 @@
|
||||
SUMMARY = "Apache Portable Runtime (APR) companion library"
|
||||
HOMEPAGE = "http://apr.apache.org/"
|
||||
SECTION = "libs"
|
||||
DEPENDS = "apr expat"
|
||||
|
||||
BBCLASSEXTEND = "native nativesdk"
|
||||
|
||||
LICENSE = "Apache-2.0"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=158aa0b1efe0c12f23d4b007ddb9a5db \
|
||||
file://include/apu_version.h;endline=15;md5=823b3d1a7225df8f7b68a69c3c2b4c71"
|
||||
|
||||
SRC_URI = "${APACHE_MIRROR}/apr/${BPN}-${PV}.tar.gz \
|
||||
file://configfix.patch \
|
||||
file://configure_fixes.patch \
|
||||
file://0001-test_transformation-Check-if-transform-is-supported-.patch \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
SRC_URI[sha256sum] = "2b74d8932703826862ca305b094eef2983c27b39d5c9414442e9976a9acf1983"
|
||||
|
||||
EXTRA_OECONF = "--with-apr=${STAGING_BINDIR_CROSS}/apr-1-config \
|
||||
--without-odbc \
|
||||
--without-pgsql \
|
||||
--without-sqlite2 \
|
||||
--with-expat=${STAGING_DIR_HOST}${prefix}"
|
||||
|
||||
|
||||
inherit autotools lib_package binconfig multilib_script
|
||||
|
||||
MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/apu-1-config"
|
||||
|
||||
OE_BINCONFIG_EXTRA_MANGLE = " -e 's:location=source:location=installed:'"
|
||||
|
||||
do_configure:append() {
|
||||
if [ "${CLASSOVERRIDE}" = "class-target" ]; then
|
||||
cp ${STAGING_DATADIR}/apr/apr_rules.mk ${B}/build/rules.mk
|
||||
sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${B}/build/rules.mk
|
||||
fi
|
||||
}
|
||||
do_configure:prepend:class-native() {
|
||||
mkdir ${B}/build
|
||||
cp ${STAGING_DATADIR_NATIVE}/apr/apr_rules.mk ${B}/build/rules.mk
|
||||
}
|
||||
do_configure:append:class-native() {
|
||||
sed -i "s#LIBTOOL=\$(SHELL) \$(apr_builddir)#LIBTOOL=\$(SHELL) ${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk
|
||||
# sometimes there isn't SHELL
|
||||
sed -i "s#LIBTOOL=\$(apr_builddir)#LIBTOOL=${STAGING_BINDIR_NATIVE}#" ${B}/build/rules.mk
|
||||
}
|
||||
|
||||
do_configure:prepend:class-nativesdk() {
|
||||
cp ${STAGING_DATADIR}/apr/apr_rules.mk ${S}/build/rules.mk
|
||||
sed -i -e 's#^CFLAGS=.*#CFLAGS=${TARGET_CFLAGS}#g' ${S}/build/rules.mk
|
||||
}
|
||||
|
||||
do_configure:append:class-nativesdk() {
|
||||
sed -i "s#\(apr_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
|
||||
sed -i "s#\(apr_builders\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
|
||||
sed -i "s#\(top_builddir\)=.*#\1=${STAGING_DATADIR}/build-1#" ${B}/build/rules.mk
|
||||
sed -i "s#\(LIBTOOL=\$(apr_builddir)\).*#\1/libtool#" ${B}/build/rules.mk
|
||||
}
|
||||
|
||||
do_install:append:class-target() {
|
||||
sed -i -e 's,${STAGING_DIR_HOST},,g' \
|
||||
-e 's,APU_SOURCE_DIR=.*,APR_SOURCE_DIR=,g' \
|
||||
-e 's,APU_BUILD_DIR=.*,APR_BUILD_DIR=,g' ${D}${bindir}/apu-1-config
|
||||
}
|
||||
|
||||
PACKAGECONFIG ??= "crypto gdbm"
|
||||
PACKAGECONFIG[ldap] = "--with-ldap,--without-ldap,openldap"
|
||||
PACKAGECONFIG[crypto] = "--with-openssl=${STAGING_DIR_HOST}${prefix} --with-crypto,--without-crypto,openssl"
|
||||
PACKAGECONFIG[sqlite3] = "--with-sqlite3=${STAGING_DIR_HOST}${prefix},--without-sqlite3,sqlite3"
|
||||
PACKAGECONFIG[gdbm] = "--with-dbm=gdbm --with-gdbm=${STAGING_DIR_HOST}${prefix},--without-gdbm,gdbm"
|
||||
|
||||
#files ${libdir}/apr-util-1/*.so are not symlinks but loadable modules thus they are packaged in ${PN}
|
||||
FILES:${PN} += "${libdir}/apr-util-1/apr*${SOLIBS} ${libdir}/apr-util-1/apr*${SOLIBSDEV}"
|
||||
FILES:${PN}-dev += "${libdir}/aprutil.exp ${libdir}/apr-util-1/*.la"
|
||||
FILES:${PN}-staticdev += "${libdir}/apr-util-1/*.a"
|
||||
|
||||
INSANE_SKIP:${PN} += "dev-so"
|
||||
|
||||
inherit ptest
|
||||
|
||||
RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-1 glibc-gconv-iso8859-2 glibc-gconv-utf-7"
|
||||
RDEPENDS:${PN}-ptest += "libgcc"
|
||||
|
||||
do_compile_ptest() {
|
||||
cd ${B}/test
|
||||
oe_runmake
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
t=${D}${PTEST_PATH}/test
|
||||
mkdir $t
|
||||
for i in testall data; do \
|
||||
cp -r ${B}/test/$i $t; \
|
||||
done
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
From 225abf37cd0b49960664b59f08e515a4c4ea5ad0 Mon Sep 17 00:00:00 2001
|
||||
From: Jeremy Puhlman <jpuhlman@mvista.com>
|
||||
Date: Thu, 26 Mar 2020 18:30:36 +0000
|
||||
Subject: [PATCH] Add option to disable timed dependant tests
|
||||
|
||||
The disabled tests rely on timing to pass correctly. On a virtualized
|
||||
system under heavy load, these tests randomly fail because they miss
|
||||
a timer or other timing related issues.
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/apache/apr/pull/54]
|
||||
Signed-off-by: Jeremy Puhlman <jpuhlman@mvista.com>
|
||||
|
||||
---
|
||||
configure.in | 6 ++++++
|
||||
include/apr.h.in | 1 +
|
||||
test/testlock.c | 4 ++--
|
||||
3 files changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/configure.in b/configure.in
|
||||
index bfd488b..3663220 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -3023,6 +3023,12 @@ AC_ARG_ENABLE(timedlocks,
|
||||
)
|
||||
AC_SUBST(apr_has_timedlocks)
|
||||
|
||||
+AC_ARG_ENABLE(timed-tests,
|
||||
+ [ --disable-timed-tests Disable timed tests ],
|
||||
+ [apr_has_timedtests="0"], [apr_has_timedtests="1"]
|
||||
+)
|
||||
+AC_SUBST(apr_has_timedtests)
|
||||
+
|
||||
# hstrerror is only needed if IPv6 is not enabled,
|
||||
# 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
|
||||
--- a/include/apr.h.in
|
||||
+++ b/include/apr.h.in
|
||||
@@ -298,6 +298,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@
|
||||
+#define APR_HAVE_TIME_DEPENDANT_TESTS @apr_has_timedtests@
|
||||
|
||||
#define APR_PROCATTR_USER_SET_REQUIRES_PASSWORD @apr_procattr_user_set_requires_password@
|
||||
|
||||
diff --git a/test/testlock.c b/test/testlock.c
|
||||
index e3437c1..04e01b9 100644
|
||||
--- a/test/testlock.c
|
||||
+++ b/test/testlock.c
|
||||
@@ -535,7 +535,7 @@ abts_suite *testlock(abts_suite *suite)
|
||||
abts_run_test(suite, threads_not_impl, NULL);
|
||||
#else
|
||||
abts_run_test(suite, test_thread_mutex, NULL);
|
||||
-#if APR_HAS_TIMEDLOCKS
|
||||
+#if APR_HAS_TIMEDLOCKS && APR_HAVE_TIME_DEPENDANT_TESTS
|
||||
abts_run_test(suite, test_thread_timedmutex, NULL);
|
||||
#endif
|
||||
abts_run_test(suite, test_thread_nestedmutex, NULL);
|
||||
@@ -543,7 +543,7 @@ abts_suite *testlock(abts_suite *suite)
|
||||
abts_run_test(suite, test_thread_rwlock, NULL);
|
||||
abts_run_test(suite, test_cond, NULL);
|
||||
abts_run_test(suite, test_timeoutcond, NULL);
|
||||
-#if APR_HAS_TIMEDLOCKS
|
||||
+#if APR_HAS_TIMEDLOCKS && APR_HAVE_TIME_DEPENDANT_TESTS
|
||||
abts_run_test(suite, test_timeoutmutex, NULL);
|
||||
#endif
|
||||
#ifdef WIN32
|
||||
@@ -0,0 +1,58 @@
|
||||
From 316b81c462f065927d7fec56aadd5c8cb94d1cf0 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 26 Aug 2022 00:28:08 -0700
|
||||
Subject: [PATCH] configure: Remove runtime test for mmap that can map
|
||||
/dev/zero
|
||||
|
||||
This never works for cross-compile moreover it ends up disabling
|
||||
ac_cv_file__dev_zero which then results in compiler errors in shared
|
||||
mutexes
|
||||
|
||||
Upstream-Status: Inappropriate [Cross-compile specific]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
configure.in | 30 ------------------------------
|
||||
1 file changed, 30 deletions(-)
|
||||
|
||||
diff --git a/configure.in b/configure.in
|
||||
index 3663220..dce9789 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -1303,36 +1303,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)
|
||||
|
||||
-# Not all systems can mmap /dev/zero (such as HP-UX). Check for that.
|
||||
-if test "$ac_cv_func_mmap" = "yes" &&
|
||||
- test "$ac_cv_file__dev_zero" = "yes"; then
|
||||
- AC_CACHE_CHECK([for mmap that can map /dev/zero],
|
||||
- [ac_cv_mmap__dev_zero],
|
||||
- [AC_TRY_RUN([#include <sys/types.h>
|
||||
-#include <sys/stat.h>
|
||||
-#include <fcntl.h>
|
||||
-#ifdef HAVE_SYS_MMAN_H
|
||||
-#include <sys/mman.h>
|
||||
-#endif
|
||||
- int main(int argc, const char *argv[])
|
||||
- {
|
||||
- int fd;
|
||||
- void *m;
|
||||
- fd = open("/dev/zero", O_RDWR);
|
||||
- if (fd < 0) {
|
||||
- return 1;
|
||||
- }
|
||||
- m = mmap(0, sizeof(void*), PROT_READ|PROT_WRITE, MAP_SHARED, fd, 0);
|
||||
- if (m == (void *)-1) { /* aka MAP_FAILED */
|
||||
- return 2;
|
||||
- }
|
||||
- if (munmap(m, sizeof(void*)) < 0) {
|
||||
- return 3;
|
||||
- }
|
||||
- return 0;
|
||||
- }], [], [ac_cv_file__dev_zero=no], [ac_cv_file__dev_zero=no])])
|
||||
-fi
|
||||
-
|
||||
# Now we determine which one is our anonymous shmem preference.
|
||||
haveshmgetanon="0"
|
||||
havemmapzero="0"
|
||||
@@ -0,0 +1,37 @@
|
||||
From a25be1aaa92a6d2e7f4cc3fdfbb92e5a10b63035 Mon Sep 17 00:00:00 2001
|
||||
From: Greg Beard <gmbeard@googlemail.com>
|
||||
Date: Sat, 25 Mar 2023 08:31:36 +0000
|
||||
Subject: [PATCH] dso: Check for NULL handle in apr_dso_sym
|
||||
|
||||
Upstream-Status: Backport [https://github.com/apache/apr/pull/40/commits/0efce00093b1ba405d91c7f0eab9755c8527eead]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
dso/unix/dso.c | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/dso/unix/dso.c b/dso/unix/dso.c
|
||||
index fdd56f1..583d5de 100644
|
||||
--- a/dso/unix/dso.c
|
||||
+++ b/dso/unix/dso.c
|
||||
@@ -173,6 +173,18 @@ APR_DECLARE(apr_status_t) apr_dso_sym(apr_dso_handle_sym_t *ressym,
|
||||
apr_dso_handle_t *handle,
|
||||
const char *symname)
|
||||
{
|
||||
+ /* This is necessary for `testdso.c`. For some reason, musl
|
||||
+ * builds fail the `test_unload_library` test if the below
|
||||
+ * check isn't in place. `test_unload_library` unloads the
|
||||
+ * library and then immediately calls this function. Maybe
|
||||
+ * musl's `dlsym()` assumes the handle is never NULL and
|
||||
+ * some UB is being invoked here...
|
||||
+ */
|
||||
+ if (handle->handle == NULL) {
|
||||
+ handle->errormsg = "library not loaded";
|
||||
+ return APR_ESYMNOTFOUND;
|
||||
+ }
|
||||
+
|
||||
#if defined(DSO_USE_SHL)
|
||||
void *symaddr = NULL;
|
||||
int status;
|
||||
--
|
||||
2.42.0
|
||||
|
||||
@@ -0,0 +1,77 @@
|
||||
From 689a8db96a6d1e1cae9cbfb35d05ac82140a6555 Mon Sep 17 00:00:00 2001
|
||||
From: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
Date: Tue, 30 Jan 2018 09:39:06 +0800
|
||||
Subject: [PATCH] apr: Remove workdir path references from installed apr files
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
|
||||
The generated `apr-1-config' is used by other recipes at build time or
|
||||
packages at target run time, the workdir path caused confusion.
|
||||
|
||||
Rebase to 1.6.3
|
||||
|
||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
|
||||
---
|
||||
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
|
||||
--- a/apr-config.in
|
||||
+++ b/apr-config.in
|
||||
@@ -164,16 +164,7 @@ while test $# -gt 0; do
|
||||
flags="$flags $LDFLAGS"
|
||||
;;
|
||||
--includes)
|
||||
- if test "$location" = "installed"; then
|
||||
flags="$flags -I$includedir $EXTRA_INCLUDES"
|
||||
- elif test "$location" = "crosscompile"; then
|
||||
- flags="$flags -I$APR_TARGET_DIR/$includedir $EXTRA_INCLUDES"
|
||||
- elif test "$location" = "source"; then
|
||||
- flags="$flags -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
|
||||
- else
|
||||
- # this is for VPATH builds
|
||||
- flags="$flags -I$APR_BUILD_DIR/include -I$APR_SOURCE_DIR/include $EXTRA_INCLUDES"
|
||||
- fi
|
||||
;;
|
||||
--srcdir)
|
||||
echo $APR_SOURCE_DIR
|
||||
@@ -197,33 +188,14 @@ while test $# -gt 0; do
|
||||
exit 0
|
||||
;;
|
||||
--link-ld)
|
||||
- if test "$location" = "installed"; then
|
||||
- ### avoid using -L if libdir is a "standard" location like /usr/lib
|
||||
- flags="$flags -L$libdir -l${APR_LIBNAME}"
|
||||
- elif test "$location" = "crosscompile"; then
|
||||
- flags="$flags -L$APR_TARGET_DIR/$libdir -l${APR_LIBNAME}"
|
||||
- else
|
||||
- ### this surely can't work since the library is in .libs?
|
||||
- flags="$flags -L$APR_BUILD_DIR -l${APR_LIBNAME}"
|
||||
- fi
|
||||
+ flags="$flags -l${APR_LIBNAME}"
|
||||
;;
|
||||
--link-libtool)
|
||||
# If the LA_FILE exists where we think it should be, use it. If we're
|
||||
# installed and the LA_FILE does not exist, assume to use -L/-l
|
||||
# (the LA_FILE may not have been installed). If we're building ourselves,
|
||||
# we'll assume that at some point the .la file be created.
|
||||
- if test -f "$LA_FILE"; then
|
||||
- flags="$flags $LA_FILE"
|
||||
- elif test "$location" = "installed"; then
|
||||
- ### avoid using -L if libdir is a "standard" location like /usr/lib
|
||||
- # Since the user is specifying they are linking with libtool, we
|
||||
- # *know* that -R will be recognized by libtool.
|
||||
- flags="$flags -L$libdir -R$libdir -l${APR_LIBNAME}"
|
||||
- elif test "$location" = "crosscompile"; then
|
||||
- flags="$flags -L${APR_TARGET_DIR}/$libdir -l${APR_LIBNAME}"
|
||||
- else
|
||||
- flags="$flags $LA_FILE"
|
||||
- fi
|
||||
+ flags="$flags -l${APR_LIBNAME}"
|
||||
;;
|
||||
--shlib-path-var)
|
||||
echo "$SHLIBPATH_VAR"
|
||||
@@ -0,0 +1,39 @@
|
||||
From 7925eb1766a00ccee05c6e80b1d34f163a04b7b1 Mon Sep 17 00:00:00 2001
|
||||
From: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
Date: Tue, 30 Jan 2018 09:43:34 +0800
|
||||
Subject: [PATCH 4/7] Fix packet discards HTTP redirect.
|
||||
|
||||
Disconnect the connection by poll() timeout.
|
||||
If timeout=0 and apr_wait_for_io_or_timeout()=APR_TIMEUP then
|
||||
apr_socket_recv() returns EAGAIN.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Noriaki Yoshitane <yoshitane.nrs@cnt.ncos.nec.co.jp>
|
||||
Signed-off-by: Li Wang <li.wang@windriver.com>
|
||||
|
||||
Rebase to 1.6.3
|
||||
|
||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
---
|
||||
network_io/unix/sendrecv.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/network_io/unix/sendrecv.c b/network_io/unix/sendrecv.c
|
||||
index 4c0e0a6..1bdafba 100644
|
||||
--- a/network_io/unix/sendrecv.c
|
||||
+++ b/network_io/unix/sendrecv.c
|
||||
@@ -85,6 +85,10 @@ apr_status_t apr_socket_recv(apr_socket_t *sock, char *buf, apr_size_t *len)
|
||||
&& (sock->timeout > 0)) {
|
||||
do_select:
|
||||
arv = apr_wait_for_io_or_timeout(NULL, sock, 1);
|
||||
+ if ((arv == APR_TIMEUP) && (sock->timeout == 0)) {
|
||||
+ *len = 0;
|
||||
+ return EAGAIN;
|
||||
+ }
|
||||
if (arv != APR_SUCCESS) {
|
||||
*len = 0;
|
||||
return arv;
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
From 2e66cece0c3adff92733332111204ddc1d730a07 Mon Sep 17 00:00:00 2001
|
||||
From: Robert Yang <liezhi.yang@windriver.com>
|
||||
Date: Thu, 19 Nov 2015 18:25:38 -0800
|
||||
Subject: [PATCH 5/7] 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:
|
||||
|
||||
| libtool: compile: unable to infer tagged configuration
|
||||
| libtool: error: specify a tag with '--tag'
|
||||
| libtool: compile: unable to infer tagged configuration
|
||||
| make[1]: *** [buckets/apr_buckets.lo] Error 1
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
||||
---
|
||||
configure.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/configure.in b/configure.in
|
||||
index 361120f..3b10422 100644
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -249,7 +249,7 @@ case $host in
|
||||
;;
|
||||
*)
|
||||
if test "x$LTFLAGS" = "x"; then
|
||||
- LTFLAGS='--silent'
|
||||
+ LTFLAGS='--silent --tag=CC'
|
||||
fi
|
||||
if test "$experimental_libtool" = "yes"; then
|
||||
# Use a custom-made libtool replacement
|
||||
--
|
||||
1.8.3.1
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
To work with autoconf 2.73, tweak the macro ordering in configure.in.
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
|
||||
Index: apr-1.7.2/configure.in
|
||||
===================================================================
|
||||
--- apr-1.7.2.orig/configure.in
|
||||
+++ apr-1.7.2/configure.in
|
||||
@@ -430,6 +430,8 @@ if test "$host" = "i586-pc-beos"; then
|
||||
) dnl
|
||||
fi
|
||||
|
||||
+APR_CHECK_DEFINE(LOCK_EX, sys/file.h)
|
||||
+
|
||||
# this is the place to put specific options for platform/compiler
|
||||
# combinations
|
||||
case "$host:$CC" in
|
||||
@@ -2384,7 +2386,6 @@ AC_MSG_RESULT([$msg])
|
||||
AC_SUBST(have_union_semun)
|
||||
|
||||
dnl Checks for libraries.
|
||||
-APR_CHECK_DEFINE(LOCK_EX, sys/file.h)
|
||||
APR_CHECK_DEFINE(F_SETLK, fcntl.h)
|
||||
APR_CHECK_DEFINE(SEM_UNDO, sys/sem.h)
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
From 17835709bc55657b7af1f7c99b3f572b819cf97e Mon Sep 17 00:00:00 2001
|
||||
From: Helmut Grohne <helmut@subdivi.de>
|
||||
Date: Tue, 7 Feb 2023 07:04:00 +0000
|
||||
Subject: [PATCH] check for libtoolize rather than libtool
|
||||
|
||||
libtool is now in package libtool-bin, but apr only needs libtoolize.
|
||||
|
||||
Upstream-Status: Pending [ from debian: https://sources.debian.org/data/main/a/apr/1.6.5-1/debian/patches/libtoolize_check.patch ]
|
||||
|
||||
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
||||
|
||||
---
|
||||
build/buildcheck.sh | 10 ++++------
|
||||
1 file changed, 4 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/build/buildcheck.sh b/build/buildcheck.sh
|
||||
index 44921b5..08bc8a8 100755
|
||||
--- a/build/buildcheck.sh
|
||||
+++ b/build/buildcheck.sh
|
||||
@@ -39,13 +39,11 @@ fi
|
||||
# ltmain.sh (GNU libtool 1.1361 2004/01/02 23:10:52) 1.5a
|
||||
# output is multiline from 1.5 onwards
|
||||
|
||||
-# Require libtool 1.4 or newer
|
||||
-if test -z "$libtool"; then
|
||||
- libtool=`build/PrintPath glibtool1 glibtool libtool libtool15 libtool14`
|
||||
-fi
|
||||
-lt_pversion=`$libtool --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'`
|
||||
+# Require libtoolize 1.4 or newer
|
||||
+libtoolize=`build/PrintPath glibtoolize1 glibtoolize libtoolize libtoolize15 libtoolize14`
|
||||
+lt_pversion=`$libtoolize --version 2>/dev/null|sed -e 's/([^)]*)//g;s/^[^0-9]*//;s/[- ].*//g;q'`
|
||||
if test -z "$lt_pversion"; then
|
||||
- echo "buildconf: libtool not found."
|
||||
+ echo "buildconf: libtoolize not found."
|
||||
echo " You need libtool version 1.4 or newer installed"
|
||||
echo " to build APR from SVN."
|
||||
res=1
|
||||
6
sources/poky/meta/recipes-support/apr/apr/run-ptest
Normal file
6
sources/poky/meta/recipes-support/apr/apr/run-ptest
Normal file
@@ -0,0 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
cd test
|
||||
./testall |sed \
|
||||
-e 's|\(.*\): SUCCESS|PASS: \1|' \
|
||||
-e 's|\(.*\): FAILED|FAIL: \1|'
|
||||
138
sources/poky/meta/recipes-support/apr/apr_1.7.5.bb
Normal file
138
sources/poky/meta/recipes-support/apr/apr_1.7.5.bb
Normal file
@@ -0,0 +1,138 @@
|
||||
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://libtoolize_check.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"
|
||||
Reference in New Issue
Block a user