summaryrefslogtreecommitdiff
path: root/debian/rules
diff options
context:
space:
mode:
Diffstat (limited to 'debian/rules')
-rwxr-xr-xdebian/rules35
1 files changed, 28 insertions, 7 deletions
diff --git a/debian/rules b/debian/rules
index 66612bb..9116dbd 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,4 +1,5 @@
#!/usr/bin/make -f
+export DH_VERBOSE=1
include /usr/share/dpkg/architecture.mk
@@ -8,8 +9,10 @@ PYVERS=$(shell pyversions -s)
PYVER=$(shell pyversions -d)
export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
+CC = $(DEB_HOST_GNU_TYPE)-gcc
CFLAGS = `dpkg-buildflags --get CFLAGS` -Wall
LDFLAGS = `dpkg-buildflags --get LDFLAGS` -Wl,--as-needed
CPPFLAGS = `dpkg-buildflags --get CPPFLAGS`
@@ -29,18 +32,25 @@ $(if $(shell grep -q libxml2-udeb debian/control && echo yes),$(shell sed -i /li
export DH_OPTIONS = -Nlibxml2-udeb
endif
-CACHE_FILE := $(CURDIR)/builddir/config.cache
+ifeq ($(DEB_BUILD_PROFILE),stage1)
+DH_OPTIONS += -Npython-libxml2 -Npython-libxml2-dbg
+export DH_OPTIONS
+endif
-CONFIGURE_FLAGS = --with-history CC="$(CC)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" --cache-file="$(CACHE_FILE)"
+CONFIGURE_FLAGS := --disable-silent-rules --with-history CC="$(CC)" CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" --cache-file="$(CURDIR)/builddir/config.cache"
override_dh_auto_configure: $(TARGETS:%=doconfigure-%)
-doconfigure-%:
+debian/autoreconf.after:
+ dh_autoreconf
+
+doconfigure-%: debian/autoreconf.after
dh_auto_configure --builddirectory=builddir/$* -- $(CONFIGURE_FLAGS)
doconfigure-main: CONFIGURE_FLAGS += --without-python
doconfigure-python%: CONFIGURE_FLAGS += --with-python=/usr/bin/$*
-doconfigure-udeb: CONFIGURE_FLAGS += --without-history --with-minimum --with-tree --with-output
+#doconfigure-udeb: CONFIGURE_FLAGS += --without-history --with-minimum --with-tree --with-output
+doconfigure-udeb: CONFIGURE_FLAGS += --without-history --with-tree --with-output --without-python
# For dyson we need 32-bit library, but we don't have 32-bit liblzma
doconfigure-32: CONFIGURE_FLAGS += --without-python --libdir=/usr/lib32 --without-lzma
@@ -55,8 +65,11 @@ dobuild-%: doconfigure-%
dh_auto_build --builddirectory=$(BUILD_DIR) -- $(BUILD_FLAGS)
dobuild-python%: BUILD_DIR=builddir/main/$*
-dobuild-python%: BUILD_FLAGS = libxml2mod_la_LIBADD='$$(mylibs)'
-dobuild-python%-dbg: BUILD_FLAGS += PYTHON_INCLUDES=/usr/include/$(*:-dbg=_d) \
+dobuild-python%: BUILD_FLAGS = libxml2mod_la_LIBADD='$$(mylibs)' \
+ PYTHON_INCLUDES="$(shell $(DEB_HOST_GNU_TYPE)-python-config --includes)" \
+ PYTHON_LIBS="$(shell $(DEB_HOST_GNU_TYPE)-python-config --ldflags)"
+dobuild-python%-dbg: BUILD_FLAGS += PYTHON_INCLUDES="$(shell $(DEB_HOST_GNU_TYPE)-python-dbg-config --includes)" \
+ PYTHON_LIBS="$(shell $(DEB_HOST_GNU_TYPE)-python-dbg-config --ldflags)" \
CFLAGS="$(CFLAGS) -Wall -g -O0" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS) \
-L$(CURDIR)/debian/tmp/usr/lib/$(DEB_HOST_MULTIARCH)"
build-arch: $(TARGETS:%=dobuild-%)
@@ -96,7 +109,7 @@ doinstall-main:
doinstall-python%-dbg:
$(MAKE) -C builddir/main/python$*-dbg DESTDIR=$(CURDIR)/debian/tmp-dbg install-pythonLTLIBRARIES
- prename 's/(?<!_d)\.so$$/_d.so/' debian/tmp-dbg/usr/lib/python$*/*-packages/*.so
+ prename -vf 's/(?<!_d)\.so$$/_d.so/' debian/tmp-dbg/usr/lib/python$*/*-packages/*.so
doinstall-python%:
dh_auto_install --builddirectory=builddir/main/python$*
@@ -117,14 +130,18 @@ override_dh_installchangelogs:
override_dh_install:
dh_install -Npython-libxml2-dbg -Nlibxml2-udeb
+ifneq ($(DEB_BUILD_PROFILE),stage1)
dh_install -ppython-libxml2-dbg --sourcedir=debian/tmp-dbg
+endif
dh_install -plibxml2-udeb --sourcedir=debian/tmp-udeb
sed -i -e 's,/lib/$(DEB_HOST_MULTIARCH),/lib,' debian/libxml2-dev/usr/bin/xml2-config
override_dh_strip:
dh_strip -a --dbg-package=libxml2-dbg -Nlibxml2-udeb -Nlibxml2-utils -Nlibxml2-utils-dbg -Npython-libxml2 -Npython-libxml2-dbg
dh_strip -plibxml2-utils --dbg-package=libxml2-utils-dbg
+ifneq ($(DEB_BUILD_PROFILE),stage1)
dh_strip -ppython-libxml2 --dbg-package=python-libxml2-dbg
+endif
$(foreach python, $(filter-out $(PYVER), $(PYVERS)),\
cd $(CURDIR)/debian/python-libxml2/usr/lib/pyshared; \
if diff $(python)/libxml2mod.so $(PYVER)/libxml2mod.so > /dev/null 2>&1; then \
@@ -137,6 +154,10 @@ override_dh_makeshlibs:
dh_makeshlibs -a $(if $(WITH_UDEB),--add-udeb=libxml2-udeb ) -- -c4
%:
+ifeq ($(DEB_BUILD_PROFILE),stage1)
+ dh $@ --with autoreconf
+else
dh $@ --with autoreconf,python2
+endif