1d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman#! /usr/bin/make -f 2d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman 30c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler#export DH_VERBOSE=1 4881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schüler 54182981f6d025d8e753f3da635df5832c0c6d99dDmitry V. Levinexport DEB_BUILD_MAINT_OPTIONS = hardening=+all 64182981f6d025d8e753f3da635df5832c0c6d99dDmitry V. LevinDPKG_EXPORT_BUILDFLAGS = 1 74182981f6d025d8e753f3da635df5832c0c6d99dDmitry V. Levininclude /usr/share/dpkg/buildflags.mk 84182981f6d025d8e753f3da635df5832c0c6d99dDmitry V. Levin 94182981f6d025d8e753f3da635df5832c0c6d99dDmitry V. LevinCFLAGS += -Wall -g 10881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schüler 11881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schülerifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) 12881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schüler CFLAGS += -O0 13881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schülerelse 14881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schüler CFLAGS += -O2 15881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schülerendif 16d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman 170c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schülerifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) 180c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) 190c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler MAKEFLAGS += -j$(NUMJOBS) 200c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schülerendif 210c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler 2238d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrathDEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) 23c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrathDEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) 2498d5f01f37b91a54d3453daa0ab9664ee9e701c1Roland McGrathDEB_HOST_ARCH := $(shell dpkg-architecture -qDEB_HOST_ARCH) 2598d5f01f37b91a54d3453daa0ab9664ee9e701c1Roland McGrath 2675df90ee416be3e2196e0977cd405053df505073Roland McGratharch64_map = i386=x86_64 powerpc=powerpc64 sparc=sparc64 s390=s390x 2775df90ee416be3e2196e0977cd405053df505073Roland McGrathifneq (,$(filter $(DEB_HOST_ARCH)=%, $(arch64_map))) 2875df90ee416be3e2196e0977cd405053df505073Roland McGrath HOST64 = $(strip $(patsubst $(DEB_HOST_ARCH)=%, %, \ 2975df90ee416be3e2196e0977cd405053df505073Roland McGrath $(filter $(DEB_HOST_ARCH)=%, $(arch64_map))))-linux-gnu 30c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath CC64 = gcc -m64 310c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler extra_build_targets += build64-stamp 32c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrathendif 33c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath 3438d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrathifeq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE)) 3538d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrath CONFIG_OPTS = --build=$(DEB_BUILD_GNU_TYPE) 3638d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrathelse 3738d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrath CONFIG_OPTS = --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) 3838d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrathendif 3938d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrath 400c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schülerall build: build-stamp $(extra_build_targets) 41c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath 420c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler%-stamp: %/Makefile 43c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath $(MAKE) -C $* 44983e875c1c150ef73c39c27de80c430c7f2a46eaDmitry V. Levinifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) 45983e875c1c150ef73c39c27de80c430c7f2a46eaDmitry V. Levin $(MAKE) -C $* check 46983e875c1c150ef73c39c27de80c430c7f2a46eaDmitry V. Levinendif 47c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath touch $@ 48c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath 49c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrathbuild/Makefile: 50c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath mkdir -p $(@D) 5138d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrath cd $(@D); sh ../configure --prefix=/usr $(CONFIG_OPTS) 52c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath 53c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrathbuild64/Makefile: 54c9b624f4aaddd2cd8e27ec599c3bfbcb7287c4adRoland McGrath mkdir -p $(@D) 5538d88e649424cc8ecf1f0704b2af39f6a1a8ae3eRoland McGrath cd $(@D); CC="$(CC64)" sh ../configure --prefix=/usr --build=$(DEB_BUILD_GNU_TYPE) --host=$(HOST64) 56d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman 57d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkermanclean: 58881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schüler dh_testdir 59881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schüler dh_testroot 600c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler rm -rf build build64 strace64.1 616019fbbf47e22995beffd6a82a2c435845e241e4Roland McGrath dh_clean 62d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman 63d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkermanbinary: binary-indep binary-arch 64d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman 65d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkermanbinary-indep: 66d321ff95f2c077d8e2fcecda210cbbcd4f2005c1Wichert Akkerman 67881f573876e2223ae5c2cedaa32a3b0d6b9ff339Frederik Schülerbinary-arch: build 680c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler test -f build-stamp || make $(MFLAGS) -f debian/rules build 69414fe7d4d284e22d7855c5367f17dbc0714738d9Dmitry V. Levin 70a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath # prepare 64bit executable and manpage, if it has been built 710c56f62207d81713f9ce7705e865b75f921e6a1bFrederik Schüler test -f build64-stamp && ( mv build64/strace build64/strace64 ; \ 72a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath cp strace.1 strace64.1 ) || true 73414fe7d4d284e22d7855c5367f17dbc0714738d9Dmitry V. Levin 74a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_testdir -s 75a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_testroot -s 76a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_installdirs -s 77a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_installdocs -s 78a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_installman -s 79a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_installexamples -s 80f786da5b1be84743bd9287304b6dad3633339ed8Frederik Schüler dh_installchangelogs -s 81a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_install -s 82a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_link -s 83a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_strip -s 84a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_compress -s 85a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_fixperms -s 86a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_installdeb -s 87a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_shlibdeps -s 88a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_gencontrol -s 89a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_md5sums -s 90a04e213e6aa38f8dba20b5bfe1ebe864922712b0Roland McGrath dh_builddeb -s 91