| #! /usr/bin/make -f |
| |
| #export DH_VERBOSE=1 |
| |
| export DEB_BUILD_MAINT_OPTIONS = hardening=+all |
| DPKG_EXPORT_BUILDFLAGS = 1 |
| include /usr/share/dpkg/buildflags.mk |
| |
| CFLAGS += -Wall -g |
| |
| ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) |
| CFLAGS += -O0 |
| else |
| CFLAGS += -O2 |
| endif |
| |
| ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) |
| NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) |
| MAKEFLAGS += -j$(NUMJOBS) |
| endif |
| |
| DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) |
| DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) |
| DEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) |
| |
| arch64_map = i386=x86_64 powerpc=powerpc64 sparc=sparc64 s390=s390x |
| ifneq (,$(filter $(DEB_HOST_ARCH)=%, $(arch64_map))) |
| HOST64 = $(strip $(patsubst $(DEB_HOST_ARCH)=%, %, \ |
| $(filter $(DEB_HOST_ARCH)=%, $(arch64_map))))-linux-gnu |
| CC64 = gcc -m64 |
| extra_build_targets += build64-stamp |
| endif |
| |
| ifeq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) |
| CONFIG_OPTS = --build=$(DEB_BUILD_GNU_TYPE) |
| else |
| CONFIG_OPTS = --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) |
| endif |
| |
| all: build |
| |
| build: build-arch build-indep |
| |
| build-arch: build-stamp $(extra_build_targets) |
| build-indep: build-stamp $(extra_build_targets) |
| |
| %-stamp: %/Makefile |
| $(MAKE) -C $* |
| ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) |
| $(MAKE) -C $* check VERBOSE=1 |
| endif |
| touch $@ |
| |
| build/Makefile: |
| mkdir -p $(@D) |
| cd $(@D); sh ../configure --prefix=/usr $(CONFIG_OPTS) |
| |
| build64/Makefile: |
| mkdir -p $(@D) |
| cd $(@D); CC="$(CC64)" sh ../configure --prefix=/usr --build=$(DEB_BUILD_GNU_TYPE) --host=$(HOST64) |
| |
| clean: |
| dh_testdir |
| dh_testroot |
| rm -rf build build64 strace64.1 debian/strace64.substvars |
| dh_clean |
| |
| binary: binary-indep binary-arch |
| |
| binary-indep: |
| |
| binary-arch: build |
| test -f build-stamp || make $(MFLAGS) -f debian/rules build |
| |
| # prepare 64bit executable and manpage, if it has been built |
| test -f build64-stamp && ( mv build64/strace build64/strace64 ; \ |
| cp strace.1 strace64.1 ) || true |
| |
| dh_testdir -s |
| dh_testroot -s |
| dh_installdirs -s |
| dh_installdocs -s |
| dh_installman -s |
| dh_installexamples -s |
| dh_installchangelogs -s |
| dh_install -s |
| dh_link -s |
| dh_strip -s |
| dh_compress -s |
| dh_fixperms -s |
| dh_installdeb -s |
| dh_shlibdeps -s |
| dh_gencontrol -s |
| dh_md5sums -s |
| dh_builddeb -s |