Github messages for voidlinux
 help / color / mirror / Atom feed
From: sgn <sgn@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] Apache+APR update
Date: Sat, 30 Mar 2024 05:25:07 +0100	[thread overview]
Message-ID: <20240330042507.EA72A221BE@inbox.vuxu.org> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-49592@inbox.vuxu.org>

[-- Attachment #1: Type: text/plain, Size: 1257 bytes --]

There is an updated pull request by sgn against master on the void-packages repository

https://github.com/sgn/void-packages apache-stack-update
https://github.com/void-linux/void-packages/pull/49592

Apache+APR update
<!-- Uncomment relevant sections and delete options which are not applicable -->

#### Testing the changes
- I tested the changes in this PR: **YES**|**briefly**|**NO**

<!--
#### New package
- This new package conforms to the [package requirements](https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#package-requirements): **YES**|**NO**
-->

<!-- Note: If the build is likely to take more than 2 hours, please add ci skip tag as described in
https://github.com/void-linux/void-packages/blob/master/CONTRIBUTING.md#continuous-integration
and test at least one native build and, if supported, at least one cross build.
Ignore this section if this PR is not skipping CI.
-->
<!--
#### Local build testing
- I built this PR locally for my native architecture, (ARCH-LIBC)
- I built this PR locally for these architectures (if supported. mark crossbuilds):
  - aarch64-musl
  - armv7l
  - armv6l-musl
-->


A patch file from https://github.com/void-linux/void-packages/pull/49592.patch is attached

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-apache-stack-update-49592.patch --]
[-- Type: text/x-diff, Size: 25116 bytes --]

From c3270098b1b08f09007d570569bf6fcb0c8999eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:35 +0700
Subject: [PATCH 1/7] apr: update to 1.7.4.

---
 .../hooks/pre-configure/02-script-wrapper.sh  |  1 -
 srcpkgs/apr/patches/atomic64.patch            | 56 -------------------
 .../apr/patches/partial-disable-test.patch    | 35 ++++++++++++
 srcpkgs/apr/template                          | 40 ++++++-------
 4 files changed, 55 insertions(+), 77 deletions(-)
 delete mode 100644 srcpkgs/apr/patches/atomic64.patch
 create mode 100644 srcpkgs/apr/patches/partial-disable-test.patch

diff --git a/common/hooks/pre-configure/02-script-wrapper.sh b/common/hooks/pre-configure/02-script-wrapper.sh
index 81e7b7bd2ee2fb..004c68442c061c 100644
--- a/common/hooks/pre-configure/02-script-wrapper.sh
+++ b/common/hooks/pre-configure/02-script-wrapper.sh
@@ -239,6 +239,5 @@ hook() {
 	generic_wrapper3 giblib-config
 	python_wrapper python-config 2.7
 	python_wrapper python3-config 3.12
-	apr_apu_wrapper apr-1-config
 	apr_apu_wrapper apu-1-config
 }
diff --git a/srcpkgs/apr/patches/atomic64.patch b/srcpkgs/apr/patches/atomic64.patch
deleted file mode 100644
index ced9b7df0abd50..00000000000000
--- a/srcpkgs/apr/patches/atomic64.patch
+++ /dev/null
@@ -1,56 +0,0 @@
-commit 69e9378eb86357d4361322256d5d5a39ff4a592d
-Author: q66 <daniel@octaforge.org>
-Date:   Fri Jan 10 13:04:37 2020 +0100
-
-    use __atomic builtins instead of legacy __sync
-    
-    This allows for 64-bit atomic ops on platforms that don't natively
-    support them such as armv6 and ppc32.
-
-diff --git atomic/unix/builtins64.c atomic/unix/builtins64.c
-index 4a4b685..90b5c5e 100644
---- a/atomic/unix/builtins64.c
-+++ b/atomic/unix/builtins64.c
-@@ -30,35 +30,34 @@ APR_DECLARE(void) apr_atomic_set64(volatile apr_uint64_t *mem, apr_uint64_t val)
- 
- APR_DECLARE(apr_uint64_t) apr_atomic_add64(volatile apr_uint64_t *mem, apr_uint64_t val)
- {
--    return __sync_fetch_and_add(mem, val);
-+    return __atomic_fetch_add(mem, val, __ATOMIC_SEQ_CST);
- }
- 
- APR_DECLARE(void) apr_atomic_sub64(volatile apr_uint64_t *mem, apr_uint64_t val)
- {
--    __sync_fetch_and_sub(mem, val);
-+    __atomic_fetch_sub(mem, val, __ATOMIC_SEQ_CST);
- }
- 
- APR_DECLARE(apr_uint64_t) apr_atomic_inc64(volatile apr_uint64_t *mem)
- {
--    return __sync_fetch_and_add(mem, 1);
-+    return __atomic_fetch_add(mem, 1, __ATOMIC_SEQ_CST);
- }
- 
- APR_DECLARE(int) apr_atomic_dec64(volatile apr_uint64_t *mem)
- {
--    return __sync_sub_and_fetch(mem, 1);
-+    return (int)__atomic_sub_fetch(mem, 1, __ATOMIC_SEQ_CST);
- }
- 
- APR_DECLARE(apr_uint64_t) apr_atomic_cas64(volatile apr_uint64_t *mem, apr_uint64_t with,
-                                            apr_uint64_t cmp)
- {
--    return __sync_val_compare_and_swap(mem, cmp, with);
-+    __atomic_compare_exchange_n(mem, &cmp, with, 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST);
-+    return cmp;
- }
- 
- APR_DECLARE(apr_uint64_t) apr_atomic_xchg64(volatile apr_uint64_t *mem, apr_uint64_t val)
- {
--    __sync_synchronize();
--
--    return __sync_lock_test_and_set(mem, val);
-+    return __atomic_exchange_n(mem, val, __ATOMIC_SEQ_CST);
- }
- 
- #endif /* USE_ATOMICS_BUILTINS */
diff --git a/srcpkgs/apr/patches/partial-disable-test.patch b/srcpkgs/apr/patches/partial-disable-test.patch
new file mode 100644
index 00000000000000..4f2fb9b2756f23
--- /dev/null
+++ b/srcpkgs/apr/patches/partial-disable-test.patch
@@ -0,0 +1,35 @@
+musl never unload libraries
+--- a/test/testdso.c
++++ b/test/testdso.c
+@@ -117,6 +117,7 @@ static void test_dso_sym_return_value(ab
+ 
+ static void test_unload_module(abts_case *tc, void *data)
+ {
++#ifdef __GLIBC__
+     apr_dso_handle_t *h = NULL;
+     apr_status_t status;
+     char errstr[256];
+@@ -131,6 +132,7 @@ static void test_unload_module(abts_case
+ 
+     status = apr_dso_sym(&func1, h, "print_hello");
+     ABTS_INT_EQUAL(tc, 1, APR_STATUS_IS_ESYMNOTFOUND(status));
++#endif
+ }
+ 
+ 
+@@ -203,6 +205,7 @@ static void test_dso_sym_return_value_li
+ 
+ static void test_unload_library(abts_case *tc, void *data)
+ {
++#ifdef __GLIBC__
+     apr_dso_handle_t *h = NULL;
+     apr_status_t status;
+     char errstr[256];
+@@ -217,6 +220,7 @@ static void test_unload_library(abts_cas
+ 
+     status = apr_dso_sym(&func1, h, "print_hello");
+     ABTS_INT_EQUAL(tc, 1, APR_STATUS_IS_ESYMNOTFOUND(status));
++#endif
+ }
+ 
+ #endif /* def(LIB_NAME) */
diff --git a/srcpkgs/apr/template b/srcpkgs/apr/template
index 38b6d1e4927846..659afec2cc5d07 100644
--- a/srcpkgs/apr/template
+++ b/srcpkgs/apr/template
@@ -1,27 +1,28 @@
 # Template file for 'apr'
 pkgname=apr
-version=1.7.0
-revision=4
+version=1.7.4
+revision=1
 build_style=gnu-configure
 configure_args="--with-installbuilddir=/usr/share/apr-1/build"
 makedepends="expat-devel libuuid-devel"
+checkdepends="iana-etc"
 short_desc="Apache Portable Runtime Library"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="Apache-2.0"
 homepage="https://apr.apache.org/"
 distfiles="https://archive.apache.org/dist/apr/apr-${version}.tar.bz2"
-checksum=e2e148f0b2e99b8e5c6caa09f6d4fb4dd3e83f744aa72a952f94f5a14436f7ea
-
-# Do not redefine struct iovec in include/apr_want.h
-CFLAGS="-DAPR_IOVEC_DEFINED=1"
+checksum=fc648de983f3a2a6c9e78dea1f180639bd2fad6c06d556d4367a701fe5c35577
 
 # Can't run test programs when cross compiling
+# NOTE always diff between native and cross build!!!
 if [ "$CROSS_BUILD" ]; then
 	configure_args+=" apr_cv_pthreads_cflags=-pthread"
 	configure_args+=" apr_cv_process_shared_works=yes"
 	configure_args+=" apr_cv_mutex_robust_shared=yes"
 	configure_args+=" apr_cv_tcp_nodelay_with_cork=yes"
-	configure_args+=" ac_cv_func_sem_open=sem_open"
+	configure_args+=" ac_cv_func_sem_open=yes"
+	configure_args+=" ac_cv_mmap__dev_zero=yes"
+	configure_args+=" ac_cv_struct_rlimit=yes"
 fi
 
 # The apr package doesn't use crypt_r, however apr-util does,
@@ -30,29 +31,28 @@ if [ "$XBPS_TARGET_LIBC" = "glibc" ]; then
 	makedepends+=" libxcrypt-devel"
 fi
 
-pre_build() {
-	if [ "$CROSS_BUILD" ]; then
-		vsed -i Makefile \
-			-e "/LINK_PROG.*OBJECTS_gen_test_char/s|.*|\t${BUILD_CC} ${BUILD_CFLAGS} tools/gen_test_char.c -o tools/gen_test_char|"
-		# Fixup some not detected configure results to match native builds
-		vsed -i include/apr.h \
-			-e "/#define APR_HAVE_SHMEM_MMAP_ZERO/s;0;1;" \
-			-e "/#define APR_HAVE_IOVEC/s;0;1;" \
-			-e "/#define APR_HAS_POSIXSEM_SERIALIZE/s;0;1;" \
-			-e "/#define APR_HAS_PROC_PTHREAD_SERIALIZE/s;0;1;"
-	fi
+do_check() {
+	cd test
+	make ${makejobs}
+	./testall
 }
 
 post_install() {
+	sed -i -e 's,-ffile-prefix-map=[^[:space:]]*,,' \
+		"$DESTDIR/usr/share/apr-1/build/apr_rules.mk"
 	if [ "$CROSS_BUILD" ]; then
-		vsed -i -e "s,$XBPS_CROSS_BASE,,g" \
-			"$DESTDIR/usr/bin/apr-1-config" \
+		sed -i -e 's;cross_compiling=.*;cross_compiling=;' \
+			"$DESTDIR/usr/bin/apr-1-config"
+		sed -i -e "s,$XBPS_CROSS_BASE,,g" \
 			"$DESTDIR/usr/share/apr-1/build/apr_rules.mk"
 	fi
 }
 
 apr-devel_package() {
 	depends="libtool libuuid-devel apr>=${version}_${revision}"
+	if [ "$XBPS_TARGET_LIBC" = "glibc" ]; then
+		depends+=" libxcrypt-devel"
+	fi
 	short_desc+=" - development files"
 	pkg_install() {
 		vmove usr/include

From 4e8c8e068492f06936e1649bba33335c60cab1cf Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:35 +0700
Subject: [PATCH 2/7] apache: update to 2.4.58.

---
 srcpkgs/apache/template | 34 ++++++++++++++++++++--------------
 1 file changed, 20 insertions(+), 14 deletions(-)

diff --git a/srcpkgs/apache/template b/srcpkgs/apache/template
index 283f7c589fadeb..f1160a965d1277 100644
--- a/srcpkgs/apache/template
+++ b/srcpkgs/apache/template
@@ -1,7 +1,7 @@
 # Template file for 'apache'
 pkgname=apache
-version=2.4.56
-revision=4
+version=2.4.58
+revision=1
 build_style=gnu-configure
 configure_args="--prefix= --sbindir=/usr/bin --enable-pie --enable-modules=all
  --enable-mods-shared=all --enable-authn-dbm --enable-authn-anon
@@ -18,13 +18,14 @@ configure_args="--prefix= --sbindir=/usr/bin --enable-pie --enable-modules=all
  --enable-dav --enable-info --enable-cgi --enable-cgid --enable-dav-fs
  --enable-dav-lock --enable-vhost-alias --enable-imagemap --enable-so
  --enable-rewrite --enable-layout=XBPS --sysconfdir=/etc/${pkgname}
- --enable-mpms-shared=all --with-z=${XBPS_CROSS_BASE}/usr"
+ --enable-mpms-shared=all --with-z=${XBPS_CROSS_BASE}/usr
+ --with-apr=${XBPS_CROSS_BASE}/usr/bin/apr-1-config"
 conf_files="
 	/etc/${pkgname}/extra/*.conf
 	/etc/${pkgname}/httpd.conf
 	/etc/${pkgname}/magic
 	/etc/${pkgname}/mime.types"
-hostmakedepends="pkg-config perl apr-util-devel"
+hostmakedepends="pkg-config perl"
 makedepends="zlib-devel libuuid-devel pcre2-devel nghttp2-devel
  openssl-devel db-devel gdbm-devel expat-devel libldap-devel apr-util-devel"
 depends="apache-htpasswd"
@@ -34,7 +35,7 @@ license="Apache-2.0"
 homepage="https://httpd.apache.org/"
 changelog="https://www.apache.org/dist/httpd/CHANGES_2.4"
 distfiles="https://archive.apache.org/dist/httpd/httpd-${version}.tar.bz2"
-checksum=d8d45f1398ba84edd05bb33ca7593ac2989b17cb9c7a0cafe5442d41afdb2d7c
+checksum=fa16d72a078210a54c47dd5bef2f8b9b8a01d94909a51453956b3ec6442ea4c5
 
 if [ "$XBPS_TARGET_LIBC" = "glibc" ]; then
 	makedepends+=" libxcrypt-devel"
@@ -47,14 +48,11 @@ make_dirs="
  /srv/www/apache 0755 _apache _apache
  /var/log/httpd 0755 _apache _apache"
 
-# Do not redefine struct iovec in include/apr_want.h
-CFLAGS="-DAPR_IOVEC_DEFINED=1 -I${XBPS_CROSS_BASE}/usr/include/apr-1"
-
 if [ "$CROSS_BUILD" ]; then
 	# FIXME: is sizeof(void*) ever less than sizeof(long)?
 	export ap_cv_void_ptr_lt_long=no
-	# This is missing in cross compiled apr-1-config (?)
-	LDFLAGS="-pthread"
+	# apr is 1.3.0 or later
+	export ap_cv_aprver13=yes
 fi
 
 pre_configure() {
@@ -89,11 +87,9 @@ pre_configure() {
 		# since httpd-2.4.53, manually export PCRE_CONFIG
 		# to let configure know where it is
 		export PCRE_CONFIG="${XBPS_CROSS_BASE}/usr/bin/pcre2-config"
-		configure_args+=" --with-apr=$XBPS_WRAPPERDIR/apr-1-config
-		 --with-apr-util=$XBPS_WRAPPERDIR/apu-1-config"
+		configure_args+=" --with-apr-util=$XBPS_WRAPPERDIR/apu-1-config"
 	else
-		configure_args+=" --with-apr=/usr/bin/apr-1-config
-		 --with-apr-util=/usr/bin/apu-1-config"
+		configure_args+=" --with-apr-util=/usr/bin/apu-1-config"
 	fi
 }
 
@@ -110,6 +106,15 @@ post_configure() {
 }
 
 post_install() {
+	# Remove CROSS_BUILD reference
+	vsed -i -e "s; -L${XBPS_CROSS_BASE}/*usr/lib$;;" \
+		-e "s; -L[^[:space:]]*/usr/lib[36][24] ; ;" \
+		-e "s; -I${XBPS_CROSS_BASE}/*usr/include/* ; ;" \
+		-e "s; -I${XBPS_CROSS_BASE}/*usr/include/*$;;" \
+		-e "s;${XBPS_CROSS_BASE}/*usr/;/usr/;g" \
+		-e 's; -ffile-prefix-map=[^[:space:]]*;;' \
+		"$DESTDIR/usr/share/apache/webroot/build/config_vars.mk"
+
 	# Set a working ServerRoot
 	#
 	# Load modules:
@@ -172,5 +177,6 @@ apache-devel_package() {
 		vmove usr/share/apache/webroot/build
 		vmove usr/bin/apxs
 		vmove "usr/share/man/man1/apxs*"
+		vmove "usr/share/apache/webroot/manual/programs/apxs*"
 	}
 }

From 25756d15282267171167d29905b37b9a5d2fc440 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:35 +0700
Subject: [PATCH 3/7] mod_wsgi: simplify build process

---
 srcpkgs/mod_wsgi/template | 25 ++++++-------------------
 1 file changed, 6 insertions(+), 19 deletions(-)

diff --git a/srcpkgs/mod_wsgi/template b/srcpkgs/mod_wsgi/template
index d47498d15ee798..e6c4700d45c604 100644
--- a/srcpkgs/mod_wsgi/template
+++ b/srcpkgs/mod_wsgi/template
@@ -3,7 +3,8 @@ pkgname=mod_wsgi
 version=4.9.4
 revision=3
 build_style=gnu-configure
-hostmakedepends="python3 perl automake libtool apache-devel"
+configure_args="--with-python=python3"
+hostmakedepends="python3 perl automake libtool"
 makedepends="apache-devel python3-devel apr-devel"
 short_desc="Python WSGI adapter module for Apache"
 maintainer="Orphaned <orphan@voidlinux.org>"
@@ -17,12 +18,11 @@ lib32disabled=yes
 pre_configure() {
 	if [ "$CROSS_BUILD" ]; then
 		cp -a ${XBPS_CROSS_BASE}/usr/bin/apxs ${wrksrc}
-		cp -a ${XBPS_CROSS_BASE}/usr/share/apache/webroot/build/config_vars.mk ${wrksrc}
-		cp -a "$("${XBPS_CROSS_BASE}/usr/bin/apr-1-config" --apr-libtool)" ./libtool
+		cp -a "$("${XBPS_CROSS_BASE}/usr/bin/apr-1-config" --apr-libtool)" \
+			./libtool
 
 		# Use the modified apxs
 		configure_args+=" --with-apxs=${wrksrc}/apxs"
-		configure_args+=" --with-python=$XBPS_WRAPPERDIR/python3"
 		configure_args+=" PYTHON_VERSION=$py3_ver PYTHON_LDVERSION=$py3_ver"
 
 		# Modify libtool to use the right compiler and linker
@@ -31,23 +31,10 @@ pre_configure() {
 			-e "s/^LD=.*/LD='${LD}'/" \
 			-e "s/^LTCC=.*/LTCC='${CC}'/"
 
-		# Use the ${wrksrc}/config_vars.mk and a modified libtool
 		vsed -i apxs \
 			-e 's|my \$libtool =.*|my $libtool = "./libtool";|' \
-			-e "/config_vars[.]mk/s;[$]installbuilddir;${wrksrc};g" \
-			-e "s;[$]installbuilddir/instdso[.]sh;$XBPS_CROSS_BASE/&;g" \
-
-		# Use apr-1-config and apu-1-config wrappers
-		vsed -i config_vars.mk -e "/LDFLAGS = /a LD = ${CC}" \
-			-e "/^APR_CONFIG/ s;=.*;= ${XBPS_WRAPPERDIR}/apr-1-config;" \
-			-e "/^APU_CONFIG/ s;=.*;= ${XBPS_WRAPPERDIR}/apu-1-config;" \
-			-e "/^includedir/ s;=.*;= $XBPS_CROSS_BASE/usr/include/httpd;" \
-			-e "s;\([I 	]\)/usr/include;\1$XBPS_CROSS_BASE/usr/include;g"
-
-		# Tell libtool these are C files
-		export LTFLAGS="--tag=CC"
-	else
-		configure_args+=" --with-python=/usr/bin/python3"
+			-e '/my [$]ltflags /s/=.*/= "--tag=CC";/' \
+			-e "/my [$]destdir/s%=.*%= \"$XBPS_CROSS_BASE\";%"
 	fi
 	autoreconf -fi
 }

From f315aef4a2ddc6e1fa906c6a2d6661514268d273 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:36 +0700
Subject: [PATCH 4/7] modsecurity: reduce hostmakedepends

---
 srcpkgs/modsecurity/template | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/srcpkgs/modsecurity/template b/srcpkgs/modsecurity/template
index d0ad1b197bc2d7..789be343f071fd 100644
--- a/srcpkgs/modsecurity/template
+++ b/srcpkgs/modsecurity/template
@@ -6,22 +6,23 @@ build_style=gnu-configure
 configure_args="--enable-standalone-module --enable-htaccess-config"
 hostmakedepends="pkg-config"
 makedepends="apache-devel gdbm-devel libcurl-devel libxml2-devel lua53-devel
- pcre-devel yajl-devel lmdb-devel"
+ pcre-devel yajl-devel lmdb-devel icu-devel"
 depends="perl-LWP"
-short_desc="Rule based web application firwall (WAF)"
+short_desc="Rule based web application firewall (WAF)"
 maintainer="Orphaned <orphan@voidlinux.org>"
 license="Apache-2.0"
 homepage="https://www.modsecurity.org"
 distfiles="https://github.com/SpiderLabs/ModSecurity/releases/download/v${version}/modsecurity-v${version}.tar.gz"
 checksum=b4231177dd80b4e076b228e57d498670113b69d445bab86db25f65346c24db22
 
-if [ "$CROSS_BUILD" ]; then
-	hostmakedepends+=" $makedepends"
-fi
-
 pre_configure() {
 	# Use target paths or will link against host libs
 	vsed -e "s,\${path},${XBPS_CROSS_BASE}/usr,g"	-i configure
+	if [ "$CROSS_BUILD" ]; then
+		configure_args+=" --with-curl=$XBPS_WRAPPERDIR/curl-config"
+		configure_args+=" --with-libxml=$XBPS_WRAPPERDIR/xml2-config"
+		configure_args+=" --with-pcre=$XBPS_WRAPPERDIR/pcre-config"
+	fi
 }
 
 pre_build() {

From d2021903b1c484c4b1c2cee7440cc5651dbad199 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:36 +0700
Subject: [PATCH 5/7] serf: Use new apr-1-config

---
 srcpkgs/serf/template | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/srcpkgs/serf/template b/srcpkgs/serf/template
index c4162752b60404..c6f1f49d473cd8 100644
--- a/srcpkgs/serf/template
+++ b/srcpkgs/serf/template
@@ -15,7 +15,7 @@ checksum=be81ef08baa2516ecda76a77adf7def7bc3227eeb578b9a33b45f7b41dc064e6
 
 LDFLAGS="-Wl,--no-undefined"
 if [ "$CROSS_BUILD" ]; then
-	make_build_args+=" APR=${XBPS_WRAPPERDIR}/apr-1-config"
+	make_build_args+=" APR=${XBPS_CROSS_BASE}/usr/bin/apr-1-config"
 	make_build_args+=" APU=${XBPS_WRAPPERDIR}/apu-1-config"
 fi
 

From 521df0188e1b7e82bf48177ca426c1fe833cdda3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:36 +0700
Subject: [PATCH 6/7] subversion: fix for cross build

---
 srcpkgs/subversion/patches/cross.patch      | 26 ---------------------
 srcpkgs/subversion/patches/python3.12.patch | 11 ---------
 srcpkgs/subversion/template                 | 22 ++++++++---------
 3 files changed, 10 insertions(+), 49 deletions(-)
 delete mode 100644 srcpkgs/subversion/patches/cross.patch
 delete mode 100644 srcpkgs/subversion/patches/python3.12.patch

diff --git a/srcpkgs/subversion/patches/cross.patch b/srcpkgs/subversion/patches/cross.patch
deleted file mode 100644
index 80a265a91dcd7f..00000000000000
--- a/srcpkgs/subversion/patches/cross.patch
+++ /dev/null
@@ -1,26 +0,0 @@
---- a/Makefile.in
-+++ b/Makefile.in
-@@ -56,8 +56,6 @@
- SVN_ZLIB_LIBS = @SVN_ZLIB_LIBS@
- SVN_LZ4_LIBS = @SVN_LZ4_LIBS@
- SVN_UTF8PROC_LIBS = @SVN_UTF8PROC_LIBS@
--SVN_MACOS_PLIST_LIBS = @SVN_MACOS_PLIST_LIBS@
--SVN_MACOS_KEYCHAIN_LIBS = @SVN_MACOS_KEYCHAIN_LIBS@
- 
- LIBS = @LIBS@
- 
---- a/configure.ac
-+++ b/configure.ac
-@@ -479,12 +479,6 @@
-             [Defined if Cyrus SASL v2 is present on the system])
- fi
- 
--dnl Mac OS specific features -------------------
--
--SVN_LIB_MACHO_ITERATE
--SVN_LIB_MACOS_PLIST
--SVN_LIB_MACOS_KEYCHAIN
--
- dnl APR_HAS_DSO -------------------
- 
- AC_MSG_CHECKING([whether APR has support for DSOs])
diff --git a/srcpkgs/subversion/patches/python3.12.patch b/srcpkgs/subversion/patches/python3.12.patch
deleted file mode 100644
index 6e05ce83ddf878..00000000000000
--- a/srcpkgs/subversion/patches/python3.12.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- ./build/generator/gen_base.py
-+++ ./build/generator/gen_base.py
-@@ -76,7 +76,7 @@
- 
-     # Now read and parse build.conf
-     parser = configparser.ConfigParser()
--    parser.readfp(open(fname))
-+    parser.read_file(open(fname))
- 
-     self.conf = build_path(os.path.abspath(fname))
- 
diff --git a/srcpkgs/subversion/template b/srcpkgs/subversion/template
index 793ebf88400915..309d6b1142065a 100644
--- a/srcpkgs/subversion/template
+++ b/srcpkgs/subversion/template
@@ -8,10 +8,9 @@ revision=5
 build_style=gnu-configure
 configure_args="--disable-javahl --disable-static --config-cache
  --with-gnome-keyring --with-editor=vi --disable-mod-activation
- --with-utf8proc=internal"
-hostmakedepends="automake libtool pkg-config perl python3
- apache-devel gettext swig"
-makedepends="apache-devel gdbm-devel libgnome-keyring-devel serf-devel
+ --with-utf8proc=internal --with-apr=${XBPS_CROSS_BASE}/usr/bin/apr-1-config"
+hostmakedepends="pkg-config perl python3 gettext"
+makedepends="apache-devel gdbm-devel serf-devel
  libsecret-devel liblz4-devel python3-devel sqlite-devel py3c
  file-devel perl"
 depends="ca-certificates"
@@ -24,8 +23,6 @@ distfiles="https://archive.apache.org/dist/subversion/subversion-${version}.tar.
 checksum=c9130e8d0b75728a66f0e7038fc77052e671830d785b5616aad53b4810d3cc28
 
 pre_configure() {
-	./autogen.sh --release
-
 	# Based on native build values
 	cat <<-EOF >config.cache
 	ac_cv_python_includes=-I${XBPS_CROSS_BASE}/usr/include/python${py3_ver}
@@ -42,13 +39,14 @@ pre_configure() {
 
 		# Use the ${wrksrc}/config_vars.mk
 		vsed -i apxs \
-			-e "s;[$]installbuilddir/config_vars.mk;${wrksrc}/config_vars.mk;g"
+			-e "/^my [$]destdir/s%=.*%= \"${XBPS_CROSS_BASE}\";%" \
+			-e "s;(.*config_vars[.]mk;(\"${wrksrc}/config_vars.mk;g" \
+			-e "/[$]apu_config =/s%=.*%= \"${XBPS_WRAPPERDIR}/apu-1-config\";%"
 
-		# Use apr-1-config and apu-1-config wrappers
 		vsed -i config_vars.mk \
-			-e "/^APR_CONFIG/ s;=.*;= ${XBPS_WRAPPERDIR}/apr-1-config;" \
-			-e "/^APU_CONFIG/ s;=.*;= ${XBPS_WRAPPERDIR}/apu-1-config;" \
-			-e "s;\([I ]\)/usr/include;\1${XBPS_CROSS_BASE}/usr/include;g"
+			-e "s; \(/usr/include\); $XBPS_CROSS_BASE\1;g" \
+			-e "s;-I\(/usr/include\);-I$XBPS_CROSS_BASE\1;g" \
+			-e "/^includedir =/s;=.*include;= $XBPS_CROSS_BASE/usr/include;"
 
 		export PERL5LIB=${XBPS_STATEDIR}/perlprefix/${XBPS_TARGET_MACHINE}-linux
 		mkdir -p $PERL5LIB
@@ -83,7 +81,7 @@ post_configure() {
 }
 
 do_build() {
-	make ${makejobs} LT_LDFLAGS="-L$Fdestdir/usr/lib"
+	make ${makejobs}
 	make ${makejobs} \
 		swig_pydir=${XBPS_CROSS_BASE}/usr/lib/python$py3_ver/site-packages/libsvn \
 		swig_pydir_extra=${XBPS_CROSS_BASE}/usr/lib/python$py3_ver/site-packages/svn \

From 394113664bd78ca1c48c634828e5aefeaef48e9a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?=
 <congdanhqx@gmail.com>
Date: Fri, 29 Mar 2024 21:11:37 +0700
Subject: [PATCH 7/7] subversion-kwallet-auth: fix for new apr

---
 srcpkgs/subversion-kwallet-auth/template | 57 +++++-------------------
 1 file changed, 12 insertions(+), 45 deletions(-)

diff --git a/srcpkgs/subversion-kwallet-auth/template b/srcpkgs/subversion-kwallet-auth/template
index 319de334752e91..7bdd3247b4736e 100644
--- a/srcpkgs/subversion-kwallet-auth/template
+++ b/srcpkgs/subversion-kwallet-auth/template
@@ -9,12 +9,11 @@ build_style=gnu-configure
 configure_args="--disable-javahl --disable-static --config-cache
  --with-kwallet=${XBPS_CROSS_BASE}/usr/include:${XBPS_CROSS_BASE}/usr/lib
  --with-gnome-keyring --with-editor=vi --disable-mod-activation
- --with-utf8proc=internal"
-hostmakedepends="automake libtool pkg-config perl python3
- apache-devel gettext swig"
-makedepends="apache-devel gdbm-devel libgnome-keyring-devel serf-devel
- libsecret-devel liblz4-devel python3-devel sqlite-devel py3c
- kdelibs4support-devel file-devel perl"
+ --with-utf8proc=internal --with-apr=${XBPS_CROSS_BASE}/usr/bin/apr-1-config"
+hostmakedepends="pkg-config gettext perl"
+makedepends="apache-devel gdbm-devel serf-devel expat-devel dbus-devel
+ libsecret-devel liblz4-devel sqlite-devel kwallet-devel
+ kdelibs4support-devel file-devel"
 short_desc="KDE kwallet authentication support in subversion"
 maintainer="Piotr Wójcik <chocimier@tlen.pl>"
 license="Apache-2.0, BSD-3-Clause"
@@ -25,15 +24,7 @@ checksum=c9130e8d0b75728a66f0e7038fc77052e671830d785b5616aad53b4810d3cc28
 lib32disabled=yes
 
 pre_configure() {
-	./autogen.sh --release
-
 	# Based on native build values
-	cat <<-EOF >config.cache
-	ac_cv_python_includes=-I${XBPS_CROSS_BASE}/usr/include/python${py3_ver}
-	ac_cv_python_compile="${CC} -fPIC"
-	ac_cv_python_link="${CC} -shared ${LDFLAGS}"
-	ac_cv_python_libs="${LDFLAGS}"
-	EOF
 	if [ "$CROSS_BUILD" ]; then
 		cp -a ${XBPS_CROSS_BASE}/usr/bin/apxs ${wrksrc}
 		cp -a ${XBPS_CROSS_BASE}/usr/share/apache/webroot/build/config_vars.mk ${wrksrc}
@@ -43,22 +34,15 @@ pre_configure() {
 
 		# Use the ${wrksrc}/config_vars.mk
 		vsed -i apxs \
-			-e "s;[$]installbuilddir/config_vars.mk;${wrksrc}/config_vars.mk;g"
+			-e "/^my [$]destdir/s%=.*%= \"${XBPS_CROSS_BASE}\";%" \
+			-e "s;(.*config_vars[.]mk;(\"${wrksrc}/config_vars.mk;g" \
+			-e "/[$]apu_config =/s%=.*%= \"${XBPS_WRAPPERDIR}/apu-1-config\";%"
 
-		# Use apr-1-config and apu-1-config wrappers
-		vsed -i config_vars.mk \
-			-e "/^APR_CONFIG/ s;=.*;= ${XBPS_WRAPPERDIR}/apr-1-config;" \
-			-e "/^APU_CONFIG/ s;=.*;= ${XBPS_WRAPPERDIR}/apu-1-config;" \
-			-e "s;\([I ]\)/usr/include;\1${XBPS_CROSS_BASE}/usr/include;g"
 
-		export PERL5LIB=${XBPS_STATEDIR}/perlprefix/${XBPS_TARGET_MACHINE}-linux
-		mkdir -p $PERL5LIB
-		cp "$XBPS_CROSS_BASE/usr/lib/perl5/core_perl/Config"*.p? $PERL5LIB
-		cp "$XBPS_CROSS_BASE/usr/lib/perl5/core_perl/Errno.pm" $PERL5LIB
-		vsed -e "s;archlibexp => '\(.*\)';archlibexp => '${XBPS_CROSS_BASE}\1';" \
-			-i $PERL5LIB/Config.pm
-		vsed -e "s;archlibexp='\(.*\)';archlibexp='${XBPS_CROSS_BASE}\1';" \
-			-i $PERL5LIB/Config_heavy.pl
+		vsed -i config_vars.mk \
+			-e "s; \(/usr/include\); $XBPS_CROSS_BASE\1;g" \
+			-e "s;-I\(/usr/include\);-I$XBPS_CROSS_BASE\1;g" \
+			-e "/^includedir =/s;=.*include;= $XBPS_CROSS_BASE/usr/include;"
 	else
 		configure_args+=" --with-apxs"
 	fi
@@ -70,23 +54,6 @@ pre_configure() {
 	fi
 }
 
-post_configure() {
-	if [ "$CROSS_BUILD" ]; then
-		cd subversion/bindings/swig/perl/native
-		PERL_MM_USE_DEFAULT=1 CC="$CC" LD="$CC" OPTIMIZE="$CFLAGS" \
-			CFLAGS="$CFLAGS -I$XBPS_CROSS_BASE/usr/include" \
-			CCFLAGS="$CFLAGS -I$XBPS_CROSS_BASE/usr/include" \
-			LDFLAGS="$LDFLAGS -L$XBPS_CROSS_BASE/usr/lib -lperl" \
-			LDDLFLAGS="-shared $CFLAGS -L$XBPS_CROSS_BASE/usr/lib" \
-			INSTALLDIRS=vendor \
-			perl Makefile.PL PREFIX=/usr
-	fi
-}
-
-do_build() {
-	make ${makejobs} LT_LDFLAGS="-L$Fdestdir/usr/lib"
-}
-
 do_install() {
 	export LD_LIBRARY_PATH=${DESTDIR}/usr/lib:$LD_LIBRARY_PATH
 	make DESTDIR=${DESTDIR} INSTALLDIRS=vendor install

  parent reply	other threads:[~2024-03-30  4:25 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-29 14:17 [PR PATCH] " sgn
2024-03-30  3:52 ` [PR PATCH] [Updated] " sgn
2024-03-30  4:25 ` sgn [this message]
2024-03-30  7:26 ` sgn
2024-03-30  7:32 ` sgn
2024-03-30  7:43 ` sgn
2024-03-30  9:42 ` sgn
2024-03-30 10:18 ` sgn
2024-03-30 10:44 ` sgn
2024-03-30 11:16 ` sgn
2024-03-30 11:29 ` sgn
2024-03-30 23:21 ` [PR PATCH] [Merged]: " sgn

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240330042507.EA72A221BE@inbox.vuxu.org \
    --to=sgn@users.noreply.github.com \
    --cc=ml@inbox.vuxu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).