summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog9
-rw-r--r--debian/control15
-rwxr-xr-xdebian/hurd-dev.install.in8
-rw-r--r--debian/patches/external.patch61
-rwxr-xr-xdebian/rules33
5 files changed, 77 insertions, 49 deletions
diff --git a/debian/changelog b/debian/changelog
index 90d370fd..f422c330 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+hurd (1:0.7-2) UNRELEASED; urgency=medium
+
+ * control, rules: Add a stage3 which builds everything that can be built
+ with libc.so.
+ * patches/external.patch: Do not build DDE when libpciaccess is not
+ available, do not build eth-filter when libpcap is not available.
+
+ -- Samuel Thibault <sthibault@debian.org> Fri, 27 Nov 2015 21:45:18 +0100
+
hurd (1:0.7-1) unstable; urgency=medium
* New upstream release
diff --git a/debian/control b/debian/control
index 1e975d4c..579b9d24 100644
--- a/debian/control
+++ b/debian/control
@@ -3,13 +3,12 @@ Section: admin
Priority: required
Maintainer: GNU Hurd Maintainers <debian-hurd@lists.debian.org>
Standards-Version: 3.9.6
-Build-Depends: mig (>= 1.4-3~) <!stage1 !stage2>, gnumach-dev (>= 1.4+git20141109~) <!stage1 !stage2>,
- libc0.3-dev (>= 2.17-94~) <!stage1>, texinfo, libncursesw5-dev <!stage1 !stage2>,
+Build-Depends: mig (>= 1.4-3~) <!stage1 !stage2 !stage3>, gnumach-dev (>= 1.4+git20141109~) <!stage1 !stage2>,
+ libc0.3-dev (>= 2.17-94~) <!stage1>, texinfo, libncursesw5-dev <!stage1 !stage2 !stage3>,
debhelper (>= 9), dh-exec (>= 0.17), autoconf, dh-autoreconf,
- libparted-dev <!stage1 !stage2>, libpciaccess-dev <!stage1 !stage2>, libx11-dev <!stage1 !stage2>, x11proto-core-dev <!stage1 !stage2>, pkg-config <!stage1 !stage2>,
- xkb-data <!stage1 !stage2>, gawk, flex, bison, autotools-dev, libdaemon-dev <!stage1 !stage2>, libpcap0.8-dev <!stage1 !stage2>,
- zlib1g-dev <!stage1 !stage2>, libbz2-dev <!stage1 !stage2>, uuid-dev <!stage1 !stage2>, libblkid-dev <!stage1 !stage2>,
- libgcrypt20-dev <!stage1 !stage2>
+ libparted-dev <!stage1 !stage2 !stage3>, libpciaccess-dev <!stage1 !stage2 !stage3>, libx11-dev <!stage1 !stage2 !stage3>, x11proto-core-dev <!stage1 !stage2 !stage3>, pkg-config <!stage1 !stage2 !stage3>,
+ xkb-data <!stage1 !stage2 !stage3>, gawk, flex, bison, autotools-dev, libdaemon-dev <!stage1 !stage2 !stage3>, libpcap0.8-dev <!stage1 !stage2 !stage3>,
+ zlib1g-dev <!stage1 !stage2 !stage3>, libbz2-dev <!stage1 !stage2 !stage3>, uuid-dev <!stage1 !stage2 !stage3>, libblkid-dev <!stage1 !stage2 !stage3>
Uploaders: Michael Banck <mbanck@debian.org>,
Samuel Thibault <sthibault@debian.org>
Homepage: http://www.gnu.org/software/hurd/hurd.html
@@ -79,7 +78,7 @@ Section: debian-installer
Package-Type: udeb
Priority: optional
Architecture: hurd-any
-Build-Profiles: <!noudeb !stage1 !stage2>
+Build-Profiles: <!noudeb !stage1 !stage2 !stage3>
Depends: ${misc:Depends}, ${shlibs:Depends}
Description: GNU Hurd (libraries) - udeb
This package contains the libraries used by GNU Hurd udeb.
@@ -89,7 +88,7 @@ Package-Type: udeb
Priority: optional
Section: debian-installer
Architecture: hurd-any
-Build-Profiles: <!noudeb !stage1 !stage2>
+Build-Profiles: <!noudeb !stage1 !stage2 !stage3>
Depends: ${misc:Depends}, ${shlibs:Depends}, hurd-libs0.3-udeb (= ${binary:Version}), xkb-data-udeb
Built-Using: ${built-using}
Provides: hurd, ext2-modules, fat-modules, ipv6-modules, isofs-modules, loop-modules, mouse-modules, nfs-modules, socket-modules
diff --git a/debian/hurd-dev.install.in b/debian/hurd-dev.install.in
index 08001be0..0463bd6c 100755
--- a/debian/hurd-dev.install.in
+++ b/debian/hurd-dev.install.in
@@ -1,7 +1,8 @@
#! /usr/bin/dh-exec
-<!stage1 !stage2> ../../libdde-linux26/Makeconf* usr/share/libdde_linux26
-<!stage1 !stage2> ../../libdde-linux26/lib/src/libdde_*.a usr/lib/@DEB_HOST_MULTIARCH@
-<!stage1 !stage2> ../../libdde-linux26/mk usr/share/libdde_linux26
+<!stage1 !stage2 !stage3> ../../libdde-linux26/Makeconf* usr/share/libdde_linux26
+<!stage1 !stage2 !stage3> ../../libdde-linux26/lib/src/libdde_*.a usr/lib/@DEB_HOST_MULTIARCH@
+<!stage1 !stage2 !stage3> ../../libdde-linux26/mk usr/share/libdde_linux26
+<!stage1 !stage2 !stage3> usr/share/libdde_linux26/build usr/share/libdde_linux26
<!stage1 !stage2> ../local/cdrom.h usr/include/sys
<!stage1 !stage2> ../local/soundcard.h usr/include/sys
<!stage1 !stage2> bin/fstests
@@ -9,4 +10,3 @@
include/* usr/include
<!stage1> lib/@DEB_HOST_MULTIARCH@/*.a
<!stage1 !stage2> lib/@DEB_HOST_MULTIARCH@/*.so
-<!stage1 !stage2> usr/share/libdde_linux26/build usr/share/libdde_linux26
diff --git a/debian/patches/external.patch b/debian/patches/external.patch
index a283b69a..e4c25d4b 100644
--- a/debian/patches/external.patch
+++ b/debian/patches/external.patch
@@ -1,34 +1,35 @@
Include DDE in the build
-TODO: We should turn AC_MSG_WARN into disabling targets
-
-Index: hurd-debian/Makefile
-===================================================================
---- hurd-debian.orig/Makefile
-+++ hurd-debian/Makefile
-@@ -28,8 +28,8 @@ include ./Makeconf
+--- a/Makefile
++++ b/Makefile
+@@ -28,7 +28,16 @@ include ./Makeconf
# Hurd libraries
lib-subdirs = libshouldbeinlibc libihash libiohelp libports libthreads \
libpager libfshelp libdiskfs libtrivfs libps \
- libnetfs libpipe libstore libhurdbugaddr libftpconn libcons \
-- libhurd-slab
-+ libhurd-slab libmachdev libbpf libddekit libhurd-slab
+- libnetfs libpipe libstore libhurdbugaddr libftpconn libcons
++ libnetfs libpipe libstore libhurdbugaddr libftpconn libcons \
++ libbpf libhurd-slab eth-multiplexer
++
++ifneq ($(LIBPCIACCESS),no)
++lib-subdirs += libmachdev libddekit
++endif
++
++ifeq ($(HAVE_PCAP),yes)
++lib-subdirs += eth-filter
++endif
# Hurd programs
prog-subdirs = auth proc exec term \
-@@ -37,6 +38,8 @@ prog-subdirs = auth proc exec init term
+@@ -42,6 +51,7 @@ prog-subdirs = auth proc exec term \
procfs \
startup \
init \
-+ eth-filter \
-+ eth-multiplexer \
++ devnode
ifeq ($(HAVE_SUN_RPC),yes)
prog-subdirs += nfs nfsd
-Index: hurd-debian/Makeconf
-===================================================================
---- hurd-debian.orig/Makeconf
-+++ hurd-debian/Makeconf
+--- a/Makeconf
++++ b/Makeconf
@@ -576,7 +576,7 @@ vpath %.defs $(top_srcdir)/hurd
# These we want to find in the libc include directory...
mach_defs_names = bootstrap exc mach mach4 \
@@ -38,20 +39,34 @@ Index: hurd-debian/Makeconf
gnumach \
task_notify \
-Index: hurd-debian/configure.ac
-===================================================================
---- hurd-debian.orig/configure.ac
-+++ hurd-debian/configure.ac
-@@ -241,6 +241,12 @@ AC_SUBST(boot_store_types)dnl
+--- a/configure.ac
++++ b/configure.ac
+@@ -245,6 +245,13 @@ AC_SUBST(boot_store_types)dnl
AC_MSG_CHECKING(boot store types)
AC_MSG_RESULT($boot_store_types)
+AC_CHECK_LIB(pciaccess, pci_system_init, LIBPCIACCESS=-lpciaccess, LIBPCIACCESS=no)
+AC_SUBST(LIBPCIACCESS)
+if test "$LIBPCIACCESS" = "no"; then
-+ AC_MSG_WARN([libpciaccess must be install in order to use libddekit])
++ AC_MSG_WARN([libpciaccess must be installed in order to use libddekit])
+fi
++AC_CHECK_HEADER([pcap.h], [HAVE_PCAP=yes], [HAVE_PCAP=no])
+
# Check for ncursesw, which is needed for the console-curses client.
hurd_LIB_NCURSESW
+--- a/config.make.in
++++ b/config.make.in
+@@ -98,6 +98,12 @@ libblkid_LIBS = @libblkid_LIBS@
+ # Whether Sun RPC support is available.
+ HAVE_SUN_RPC = @HAVE_SUN_RPC@
+
++# Whether pcap support is available.
++HAVE_PCAP = @HAVE_PCAP@
++
++# Whether libpciaccess is available.
++LIBPCIACCESS = @LIBPCIACCESS@
++
+ # Installation tools.
+ INSTALL = @INSTALL@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff --git a/debian/rules b/debian/rules
index 9d88d5a6..c3231e44 100755
--- a/debian/rules
+++ b/debian/rules
@@ -20,7 +20,7 @@
DEB_DESTDIR = $(CURDIR)/debian/tmp
DEB_DESTDIR_UDEB = $(CURDIR)/debian/tmp-udeb
-ifeq (,$(filter stage1 stage2,$(DEB_BUILD_PROFILES)))
+ifeq (,$(filter stage1 stage2 stage3,$(DEB_BUILD_PROFILES)))
CONFIGURE_ARGS = --disable-profile --enable-static-progs='ext2fs,iso9660fs'
else
CONFIGURE_ARGS = \
@@ -31,14 +31,16 @@ CONFIGURE_ARGS = \
# Skip some checks because they expect
# a working glibc causing a circular dependency.
# TODO: rather disable the corresponding features in configure.ac
-export ac_cv_search_clnt_create=no
export ac_cv_lib_pciaccess_pci_system_init=no
+ ifneq (,$(filter stage1 stage2,$(DEB_BUILD_PROFILES)))
+export ac_cv_search_clnt_create=no
export ac_cv_func_file_exec_file_name=no
export ac_cv_func_exec_exec_file_name=no
export ac_cv_func__hurd_exec_file_name=no
export LEX=:
export YACC=:
export MIG=:
+ endif
endif
CONFIGURE_ARGS_deb =
CONFIGURE_ARGS_udeb = --without-libdaemon --without-libbz2
@@ -56,29 +58,30 @@ BUILT_USING := $(shell dpkg-query -f '$${source:Package} (= $${source:Version}),
override_dh_auto_configure:
dh_auto_configure -Bbuild-deb -- $(CONFIGURE_ARGS) $(CONFIGURE_ARGS_deb) $(shell dpkg-buildflags --export=configure)
-ifeq (,$(filter stage1 stage2 noudeb,$(DEB_BUILD_PROFILES)))
+ifeq (,$(filter stage1 stage2 stage3 noudeb,$(DEB_BUILD_PROFILES)))
dh_auto_configure -Bbuild-udeb -- $(CONFIGURE_ARGS) $(CONFIGURE_ARGS_udeb) $(shell dpkg-buildflags --export=configure)
endif
override_dh_auto_build:
-ifneq (,$(filter stage1,$(DEB_BUILD_PROFILES)))
+ifneq (,$(filter stage1 stage2,$(DEB_BUILD_PROFILES)))
:
-else
-ifneq (,$(filter stage2,$(DEB_BUILD_PROFILES)))
+ ifneq (,$(filter stage2,$(DEB_BUILD_PROFILES)))
$(MAKE) -C build-deb/libihash libihash.a
+ endif
else
-ifeq (,$(filter noudeb,$(DEB_BUILD_PROFILES)))
+ ifeq (,$(filter noudeb,$(DEB_BUILD_PROFILES)))
dh_auto_build -Bbuild-udeb
-endif
+ endif
dh_auto_build -Bbuild-deb
cd build-deb/doc && make && makeinfo --html --split=chapter ../../doc/hurd.texi
+ ifeq (,$(filter stage3,$(DEB_BUILD_PROFILES)))
$(MAKE) -C libdde-linux26 BUILDDIR=$(CURDIR)/build-deb LDFLAGS=
-endif
+ endif
endif
override_dh_auto_clean:
dh_auto_clean -Bbuild-deb
-ifeq (,$(filter stage1 stage2 noudeb,$(DEB_BUILD_PROFILES)))
+ifeq (,$(filter stage1 stage2 stage3 noudeb,$(DEB_BUILD_PROFILES)))
dh_auto_clean -Bbuild-udeb
endif
$(MAKE) -C libdde-linux26 cleanall
@@ -90,15 +93,17 @@ endif
override_dh_auto_install:
ifneq (,$(filter stage1 stage2,$(DEB_BUILD_PROFILES)))
$(MAKE) -Cbuild-deb prefix=$(DEB_DESTDIR) install-headers no_deps=t
-ifneq (,$(filter stage2,$(DEB_BUILD_PROFILES)))
+ ifneq (,$(filter stage2,$(DEB_BUILD_PROFILES)))
$(MAKE) -Cbuild-deb/libihash libdir=$(DEB_DESTDIR)/lib/$(DEB_HOST_MULTIARCH) $(DEB_DESTDIR)/lib/$(DEB_HOST_MULTIARCH)/libihash.a
-endif
+ endif
else
dh_auto_install -Bbuild-deb -- prefix=$(DEB_DESTDIR) libdir=$(DEB_DESTDIR)/lib/$(DEB_HOST_MULTIARCH) libexecdir=$(DEB_DESTDIR)/lib/hurd sysconfdir=$(DEB_DESTDIR)/etc localstatedir=$(DEB_DESTDIR)/var XKB_BASE=$(DEB_DESTDIR)/usr/share/X11/xkb
ifeq (,$(filter noudeb,$(DEB_BUILD_PROFILES)))
dh_auto_install -Bbuild-udeb -- prefix=$(DEB_DESTDIR_UDEB) libdir=$(DEB_DESTDIR_UDEB)/lib libexecdir=$(DEB_DESTDIR_UDEB)/lib/hurd sysconfdir=$(DEB_DESTDIR_UDEB)/etc localstatedir=$(DEB_DESTDIR_UDEB)/var XKB_BASE=$(DEB_DESTDIR_UDEB)/usr/share/X11/xkb
endif
+ ifeq (,$(filter stage3,$(DEB_BUILD_PROFILES)))
$(MAKE) -C libdde-linux26 INSTALLDIR=$(CURDIR)/debian/tmp/usr/share/libdde_linux26/build/include install
+ endif
# runsystem is managed by update-alternatives
mv debian/tmp/lib/hurd/runsystem debian/tmp/lib/hurd/runsystem.gnu
@@ -111,7 +116,7 @@ endif
mv debian/tmp/bin/uptime debian/tmp/usr/bin/uptime-hurd
mv debian/tmp/bin/vmstat debian/tmp/usr/bin/vmstat-hurd
mv debian/tmp/bin/w debian/tmp/usr/bin/w-hurd
-ifeq (,$(filter stage1 stage2 noudeb,$(DEB_BUILD_PROFILES)))
+ifeq (,$(filter stage1 stage2 stage3 noudeb,$(DEB_BUILD_PROFILES)))
mkdir -p debian/tmp-udeb/usr/bin
mv debian/tmp-udeb/bin/ps debian/tmp-udeb/bin/ps-hurd
mv debian/tmp-udeb/bin/uptime debian/tmp-udeb/usr/bin/uptime-hurd
@@ -132,7 +137,7 @@ endif
override_dh_install: $(INSTALL_generated)
dh_install $(addprefix -p,$(filter %-udeb,$(shell dh_listpackages))) --sourcedir=debian/tmp-udeb
dh_install --remaining-packages --list-missing --sourcedir=debian/tmp
-ifeq (,$(filter stage1 stage2 noudeb,$(DEB_BUILD_PROFILES)))
+ifeq (,$(filter stage1 stage2 stage3 noudeb,$(DEB_BUILD_PROFILES)))
mkdir -p debian/hurd-udeb/usr/share/lintian/overrides
install -p -m644 debian/hurd-udeb.lintian-overrides debian/hurd-udeb/usr/share/lintian/overrides/hurd-udeb
endif