b70650547c66f271ad44ec3487db76787adc874d
[pkg/mmv.git] / debian / rules
1 #! /usr/bin/make -f
2
3 INSTALL_PROGRAM=install
4 CC = gcc
5 LDFLAGS =
6 CFLAGS = -g -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
7
8
9 ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS)))
10     CFLAGS += -O0
11 else
12     CFLAGS += -O2
13 endif
14
15 ifeq (,$(filter nostrip,$(DEB_BUILD_OPTIONS)))
16     INSTALL_PROGRAM += -s
17     LDFLAGS += -s
18     STRIP = true
19 endif
20
21 ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
22     NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
23     MAKEFLAGS += -j$(NUMJOBS)
24 endif
25
26
27 # The package
28 p = mmv
29 # The version
30 v = $(shell dpkg-parsechangelog | sed -n 's/^Version: //p')
31 # The architecture
32 a = $(shell dpkg --print-architecture)
33
34 dir = `pwd`
35
36 build:
37 # Builds the binary package.
38         $(checkdir)
39         $(MAKE) CC="$(CC)" LDFLAGS="$(LDFLAGS)" CFLAGS="$(CFLAGS)"
40         touch build
41
42 clean:
43 # Undoes the effect of `make -f debian/rules build'.
44         $(checkdir)
45         [ ! -f Makefile ] || $(MAKE) clean
46         -rm -f debian/files* debian/substvars* debian/*~ core */core *~
47         rm -rf debian/tmp
48         -rm build
49
50 binary: binary-arch binary-indep
51
52 binary-indep:
53         $(checkdir)
54
55 binary-arch: build
56         $(checkdir)
57         test -f build || $(MAKE) -f debian/rules build
58 # Makes a binary package.
59         /bin/rm -rf debian/tmp
60         test -f stamp-build || $(MAKE) -f debian/rules build
61         install -d -g root -m 755 -o root debian/tmp
62         chmod g-s debian/tmp
63         install -d -g root -m 755 -o root debian/tmp/DEBIAN
64         install -d -g root -m 755 -o root debian/tmp/usr/bin
65         install -d -g root -m 755 -o root debian/tmp/usr/share/man/man1
66         $(INSTALL_PROGRAM) -g root -o root -m 755 mmv debian/tmp/usr/bin
67         test "$(STRIP)" != true || strip \
68                 --remove-section=.comment --remove-section=.note \
69                 debian/tmp/usr/bin/mmv
70         install -g root -o root -m 644 mmv.1 debian/tmp/usr/share/man/man1
71         gzip -9f debian/tmp/usr/share/man/man1/mmv.1
72         (cd debian/tmp/usr/bin;\
73          ln -s mmv mcp; \
74          ln -s mmv mad; \
75          ln -s mmv mln;)
76         (cd debian/tmp/usr/share/man/man1;\
77          ln -s mmv.1.gz mcp.1.gz; \
78          ln -s mmv.1.gz mad.1.gz; \
79          ln -s mmv.1.gz mln.1.gz;)
80         install -d -g root -m 755 -o root debian/tmp/usr/share/doc/$(p)
81         install -g root -m 644 -o root READ.ME \
82                 debian/tmp/usr/share/doc/$(p)
83         install -g root -m 644 -o root debian/changelog \
84                 debian/tmp/usr/share/doc/$(p)/changelog.Debian
85         gzip -f9 debian/tmp/usr/share/doc/$(p)/*
86         install -g root -m 644 -o root debian/copyright \
87           debian/tmp/usr/share/doc/$(p)
88         chmod -R g-sw debian/tmp/usr/share/doc/$(p)
89         chown -R root.root debian/tmp/usr/share/doc/$(p)
90         dpkg-shlibdeps debian/tmp/usr/bin/mmv
91         dpkg-gencontrol -isp
92         cd debian/tmp && find * -type f ! -regex '^DEBIAN/.*' -print0 | \
93                 xargs -r0 md5sum > DEBIAN/md5sums
94         dpkg --build debian/tmp && dpkg-name -o -s .. debian/tmp.deb
95
96 define checkdir
97         test -f mmv.1
98 endef