#!/usr/bin/make -f # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # 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) ifneq (,$(shell which dpkg-buildflags)) CFLAGS := $(shell dpkg-buildflags --get CFLAGS) CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS) LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS) else ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) CFLAGS = -O0 -g else CFLAGS = -O2 -g endif CPPFLAGS = LDFLAGS = endif CFLAGS += -Wall -Wextra -Wmissing-prototypes -Wstrict-prototypes LDFLAGS += -Wl,-z,defs ifneq (,$(filter reprepro-nolibarchive,$(DEB_BUILD_OPTIONS))) ARCHIVEFLAGS= --without-libarchive else ARCHIVEFLAGS= --with-libarchive endif ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) MAKEFLAGS += -j$(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) endif config.status: configure dh_testdir ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ --prefix=/usr --mandir=\$${prefix}/share/man \ --with-libbz2 $(ARCHIVEFLAGS) \ --disable-dependency-tracking \ CFLAGS='$(CFLAGS)' CPPFLAGS='$(CPPFLAGS)' LDFLAGS='$(LDFLAGS)' \ || ( echo configure failed with $$? ; echo BEGIN config.log: ; \ cat config.log ; echo "END config.log" ; exit 1 ) build-indep: build-indep-stamp build-arch: build-arch-stamp build: build-arch-stamp build-indep-stamp build-indep-stamp: touch build-indep-stamp build-arch-stamp: config.status dh_quilt_patch dh_testdir $(MAKE) touch build-arch-stamp clean: #dh_quilt_unpatch dh_testdir dh_testroot rm -f build-arch-stamp build-indep-stamp # clean up after the build process. if [ -e config.status ] ; then $(MAKE) distclean ; fi ! test -f config.log dh_clean # Build architecture-independent files here. binary-indep: build-indep # We have nothing to do. # Build architecture-dependent files here. binary-arch: build-arch dh_testdir dh_testroot dh_prep dh_installdirs $(MAKE) install DESTDIR=$(CURDIR)/debian/reprepro install -D -m 644 docs/reprepro.bash_completion debian/reprepro/etc/bash_completion.d/reprepro dh_installchangelogs ChangeLog dh_installdocs # I really discourage building packages directly from CVS # but in case anyone insists in creating local packages that # way, do not include the CVS subdirs... dh_installexamples -XCVS dh_link dh_strip dh_compress dh_fixperms dh_installdeb dh_shlibdeps grep -v '^reprepro:.*=' debian/reprepro.substvars > debian/reprepro.substvars.new mv debian/reprepro.substvars.new debian/reprepro.substvars # # if compile without libarchive, we need the program ar from binutils available if test -f ar.o && grep -q libarchive debian/reprepro.substvars ; then \ echo "reprepro:Depends=" >> debian/reprepro.substvars ; \ else \ echo "reprepro:Depends=binutils" >> debian/reprepro.substvars ; \ fi # # warn if some dh_start to add some new dependencies, otherwise quiet # # the error about an unknown variable... @if grep -s "^misc:Depends=" debian/reprepro.substvars ; then \ echo "Warning: new misc:Depends found in substvars" ; \ else \ echo "misc:Depends=" >> debian/reprepro.substvars ; \ fi dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: build build-arch build-indep clean binary-indep binary-arch binary