1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
#!/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
./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
# 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_clean -k
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
|