Package: apr Version: 1.3.3-4 Severity: important Tags: patch Coin, Please consider applying this patch to enable Hurd support :- define _GNU_SOURCE because without it a few GNU things are not defined (it doesn't FTBFS on Linux probably because something else enforce it) - don't use --enable-nonportable-atomics on GNU (maybe this should be enforced on kfreebsd too)
- deactivate IP multicast support which is not supported yet- deactivate tests on Hurd as most succeed and apr is pretty usuable (apr-utils builds, apache2 too, and the later is working like a charm), so before investigation is over there is no reason to block so many packages
Regards. -- Marc Dequènes (Duck)
diff -Nur orig/apr-1.3.3/debian/changelog new/apr-1.3.3/debian/changelog --- orig/apr-1.3.3/debian/changelog 2009-05-23 20:17:46.000000000 +0200 +++ new/apr-1.3.3/debian/changelog 2009-05-23 20:22:22.000000000 +0200 @@ -1,3 +1,15 @@ +apr (1.3.3-4+hurdfr1) unreleased; urgency=low + + * NMU by HurdFr. + * Built using '-D_GNU_SOURCE' or PTHREAD_MUTEX_RECURSIVE is not + exported (and maybe others). + * Don't compile with --enable-nonportable-atomics on GNU. + * Deactivate missing multicast support on Hurd (by removing + HAVE_STRUCT_IPMREQ manually). + * Ignore failed tests on Hurd at the moment (tests deactivated). + + -- Marc Dequènes (Duck) <duck@hurdfr.org> Sat, 16 May 2009 12:51:31 +0200 + apr (1.3.3-4) unstable; urgency=low [ Ryan Niebur ] diff -Nur orig/apr-1.3.3/debian/rules new/apr-1.3.3/debian/rules --- orig/apr-1.3.3/debian/rules 2009-05-23 20:17:46.000000000 +0200 +++ new/apr-1.3.3/debian/rules 2009-05-23 20:22:22.000000000 +0200 @@ -8,12 +8,13 @@ # These are used for cross-compiling and for saving the configure script # # from having to guess our platform (since we know it already) -DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) -DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) +DEB_BUILD_GNU_SYSTEM ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_SYSTEM) BUILDDIR := build-$(DEB_HOST_GNU_TYPE) -CFLAGS := $(CFLAGS) -pipe -Wall -g +CFLAGS := $(CFLAGS) -pipe -Wall -g -D_GNU_SOURCE # hardening options H_CFLAGS := -Wformat -Wformat-security -D_FORTIFY_SOURCE=2 @@ -23,6 +24,9 @@ H_CFLAGS += -fstack-protector endif +# export needed GNU extensions +H_CFLAGS += -D_GNU_SOURCE + CONFFLAGS += ac_cv_prog_AWK=mawk apr_cv_sctp=no # Enable debug builds @@ -46,9 +50,18 @@ else TEST_TARGET = endif +ifeq (gnu, $(DEB_BUILD_GNU_SYSTEM)) + TEST_TARGET = +endif SHELL=/bin/bash +CONFOPTS = --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ + --enable-layout=Debian --includedir=\$${prefix}/usr/include/apr-1.0 --with-installbuilddir=\$${prefix}/usr/share/apr-1.0/build +ifneq (gnu, $(DEB_BUILD_GNU_SYSTEM)) + CONFOPTS += --enable-nonportable-atomics +endif + $(BUILDDIR)/config.status: patch-stamp dh_testdir mkdir -p $(BUILDDIR)/docs @@ -56,12 +69,16 @@ # we need to force the use of bash here. Otherwise, if apr is built with # /bin/sh -> /bin/bash, the resulting libtool will not work on systems # where /bin/sh -> /bin/dash - cd $(BUILDDIR) && CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" $(CONFFLAGS) CONFIG_SHELL=/bin/bash /bin/bash ../configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --enable-layout=Debian --includedir=\$${prefix}/usr/include/apr-1.0 --with-installbuilddir=\$${prefix}/usr/share/apr-1.0/build --enable-nonportable-atomics + cd $(BUILDDIR) && CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" $(CONFFLAGS) CONFIG_SHELL=/bin/bash /bin/bash ../configure $(CONFOPTS) # Determine whether upstream's configure gives the same definition of apr_ino_t as we had until 1.2.11-1 rm -f debian/ino_t_test gcc -I$(CURDIR)/include -I$(BUILDDIR)/include `$(BUILDDIR)/apr-1-config --cppflags` -o debian/ino_t_test debian/ino_t_test.c debian/ino_t_test rm -f debian/ino_t_test +ifeq (gnu, $(DEB_BUILD_GNU_SYSTEM)) + # multicast not supported on Hurd + sed -i '/HAVE_STRUCT_IPMREQ/ d' $(BUILDDIR)/include/arch/unix/apr_private.h +endif build: patch-stamp build-stamp
Attachment:
pgpMMfNZHIL4n.pgp
Description: PGP Digital Signature