-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMasterMakefile
59 lines (41 loc) · 1.62 KB
/
MasterMakefile
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
PROJECT = cod-tools
CHANGELOG = debian/changelog
ARCH = $(shell dpkg-deb --version | head -n 1 | perl -lne 'print $$1 if /\((.+?)\)/')
PKG_VERSION = $(shell head -n 1 ${CHANGELOG} | perl -lne 'print $$1 if /\((.*?-\d+)\)/')
VERSION = $(shell echo ${PKG_VERSION} | perl -lne 'print $$1 if /^(.*?)-\d+$$/')
PKGNAME = ${PROJECT}-${VERSION}
ORIG_TAR_GZ = ${PROJECT}_${VERSION}.orig.tar.gz
DEBIAN_TAR_GZ = ${PROJECT}_${PKG_VERSION}.debian.tar.gz
DEBIAN_TAR_XZ = ${PROJECT}_${PKG_VERSION}.debian.tar.xz
DSC_FILE = ${PROJECT}_${PKG_VERSION}.dsc
CHANGES_FILE = ${PROJECT}_${PKG_VERSION}_${ARCH}.changes
DEB_FILE = ${PROJECT}_${PKG_VERSION}_${ARCH}.deb
DEBUILD_OPTS = -us -uc
all: ${DEBIAN_TAR_GZ}
#------------------------------------------------------------------------------
MAKELOCAL_FILES = ${filter-out %~, ${wildcard Makelocal*}}
ifneq ("${MAKELOCAL_FILES}","")
include ${MAKELOCAL_FILES}
endif
#------------------------------------------------------------------------------
.PHONY: original orig signed cleanAll distclean lint lintian origclean
original orig: ${ORIG_TAR_GZ}
${ORIG_TAR_GZ}:
${MAKE} -f debian/rules get-orig-source
${DEBIAN_TAR_GZ}: ${ORIG_TAR_GZ}
zcat $< | tar -xv
rsync -av --exclude .svn --exclude \*~ debian ${PKGNAME}
mv ${PKGNAME} ${PROJECT}
(cd ${PROJECT}; debuild ${DEBUILD_OPTS})
rm -rf ${PROJECT}
signed:
${MAKE} all DEBUILD_OPTS=
lint lintian:
-lintian --pedantic ${DSC_FILE}
-lintian --pedantic ${CHANGES_FILE}
cleanAll distclean: origclean
rm -f ${ORIG_TAR_GZ}
origclean:
rm -rf source ${PKGNAME} ${PROJECT}
rm -f ${DEBIAN_TAR_GZ} ${DEBIAN_TAR_XZ}
rm -f *.deb *.dsc *.changes *.build