#!/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) # dpkg-buildpackage generated ',' policy suggests spaces, oh well... export DEB_BUILD_OPTIONS BUILDOPTS:=$(shell echo "$$DEB_BUILD_OPTIONS" | sed 's/,/ /g') CPPFLAGS = CFLAGS = -Wall -g -Wextra -Wmissing-prototypes -Wstrict-prototypes ifneq (,$(filter noopt,$(BUILDOPTS))) CFLAGS += -O0 else CFLAGS += -O2 endif ifneq (,$(filter reprepro-nolibarchive,$(BUILDOPTS))) ARCHIVEFLAGS= --without-libarchive else ARCHIVEFLAGS= --with-libarchive endif ifneq (,$(filter parallel=%,$(BUILDOPTS))) MAKEFLAGS += -j$(patsubst parallel=%,%,$(filter parallel=%,$(BUILDOPTS))) endif config.status: configure dh_testdir $(MAKE) -f /usr/share/quilt/quilt.make patch ./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="-Wl,-z,defs" \ || ( 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_testdir $(MAKE) touch build-arch-stamp clean: dh_testdir dh_testroot rm -f build-arch-stamp build-indep-stamp $(MAKE) -f /usr/share/quilt/quilt.make unpatch # 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