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 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136
|
#!/usr/bin/make -f
# Uncomment this to turn on verbose mode.
# export DH_VERBOSE=1
# The following is for internal development usage only
# Update that sum when new _upstream_ releases occur, this
# catches silent file content forges at the upstream server side
# Archive downloaded from https://www.icce.rug.nl/debian/icmake
# file: icmake_x.y.z.tar.gz
MD5TRUSTED := 36161ccaf7afe93b00dda0f60758dbbb
export DEB_BUILD_HARDENING=1
export CFLAGS = $(shell dpkg-buildflags --get CFLAGS)
export LDFLAGS = $(shell dpkg-buildflags --get LDFLAGS)
build: build-arch build-indep
build-arch: build-stamp
build-indep: build-stamp
build-stamp:
dh_testdir
# Add here commands to compile the package.
./icm_bootstrap /
touch build-stamp
clean:
dh_testdir
dh_testroot
rm -f build-stamp
# Add here commands to clean up after the build process.
rm -rf tmp
dh_clean
install: build
dh_testdir
dh_testroot
dh_prep
dh_installdirs
# Add here commands to install the package into debian/icmake
./icm_install strip progs debian/icmake
./icm_install scripts debian/icmake
./icm_install skel debian/icmake
./icm_install man debian/icmake
./icm_install doc debian/icmake
./icm_install etc debian/icmake
# Build architecture-independent files here.
binary-indep:
./icm_install docdoc debian/icmake-doc
dh_installdocs -i
dh_installchangelogs -i
dh_compress -i
dh $@
# Build architecture-dependent files here.
binary-arch: build install
dh $@
override_dh_link:
dh_link usr/share/man/man1/icmake.1 usr/share/man/man1/icmun.1
DEBVERSION:=$(shell head -n 1 debian/changelog | sed -e 's/^[^(]*(\([^)]*\)).*/\1/')
UPVERSION:=$(shell echo $(DEBVERSION) | sed -e 's/^.*://' -e 's/-[0-9.]*$$//' -e 's/.dfsg$$//')
UPNAME := icmake
UPFILE := $(UPNAME)_$(UPVERSION).tar.gz
DEFILE := $(UPNAME)_$(UPVERSION).orig.tar.gz
URL := https://www.icce.rug.nl/debian/icmake
MD5CURRENT := `md5sum ../tarballs/$(DEFILE) | sed -e 's/ .*//'`
get-orig-source:
@@dh_testdir
@@[ -d ../tarballs/. ]||mkdir -p ../tarballs
-@if [ ! -f ../tarballs/$(DEFILE) ] ; then \
echo -e "Downloading $(URL)/$(UPFILE)\nSaving into ../tarballs/$(DEFILE) ..." ; \
wget --no-check-certificate --quiet -N -nv -T20 -t3 -O \
../tarballs/$(DEFILE) $(URL)/$(UPFILE) ; \
else \
echo "Upstream source tarball has been already downloaded" ; \
fi
-@if [ "$(MD5CURRENT)" != "$(MD5TRUSTED)" ] ; then \
echo "Expecting upstream filename md5sum $(MD5TRUSTED), but $(MD5CURRENT) found" ; \
echo "Upstream filename md5sum is NOT trusted! Possible upstream filename forge!" ; \
false ; \
else \
echo "Upstream filename md5sum is trusted!" ; \
fi
# call git-build from the project's base directory as `fakeroot debian/rules git-build'
# it creates ../${UPNAME}-build and runs dpkg-buildpackage in ../${UPNAME}-build/$(UPNAME)-$(UPVERSION)
# which, if successful, creates the debian files in ${UPNAME}-build
# Probably easier to use is `git-bl'
debian-area = $(shell pwd)
build-base = ../$(UPNAME)-build
build-area = $(UPNAME)-$(UPVERSION)
tarball = ../tarballs/$(DEFILE)
garbage = ../$(UPNAME)-build/$(UPNAME)-$(UPVERSION) ../$(UPNAME)-build/run.lintian
git-build:
@@[ -d $(build-base)/. ] || mkdir -p $(build-base)
-@if [ ! -f $(tarball) ] ; then \
echo "Upstream source tarball $(tarball) not found" ; \
else \
rm -rf $(garbage) ; \
cp $(tarball) $(build-base) ; \
chdir $(build-base) ; \
tar xzf $(DEFILE) ; \
chdir $(build-area) ; \
cp -r $(debian-area)/debian ./ ; \
dpkg-buildpackage $(DPKG_BUILDPACKAGE) ; \
if [ "$$?" -eq 0 ] ; then \
chdir .. ; \
touch run.lintian ; \
rm -rf $(build-area) ; \
else \
chdir .. ; \
mv $(build-area) $(build-area)-obsolete-`date +%s` ; \
fi \
fi
print-version:
@@echo "Debian version: $(DEBVERSION)"
@@echo "Upstream version: $(UPVERSION)"
binary: binary-arch binary-indep
.PHONY: build clean binary-indep binary-arch binary install myclean
|