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 137 138 139
|
#!/usr/bin/make -f
# Debian rules file for pcre
package=pcre
version=2.08 # Version for library filename
build:
$(checkdir)
make
make test
touch build
clean:
$(checkdir)
-rm -f build
-make distclean
-rm -rf *~ debian/tmp* debian/files debian/substvars debian/*~
binary-indep: checkroot build
$(checkdir)
binary-arch: checkroot build
$(checkdir)
# Build the libpcre2 package
-rm -rf debian/tmp
# First create directories
install -d debian/tmp/DEBIAN
install -d debian/tmp/usr/lib
install -d debian/tmp/usr/share/man/man7
install -d debian/tmp/usr/share/doc/libpcre2
# Install libraries
install -m 644 libpcre.so.2 debian/tmp/usr/lib/libpcre.so.$(version)
ln -s libpcre.so.$(version) debian/tmp/usr/lib/libpcre.so.2
install -m 644 libpcreposix.so.2 \
debian/tmp/usr/lib/libpcreposix.so.$(version)
ln -s libpcreposix.so.$(version) debian/tmp/usr/lib/libpcreposix.so.2
strip --strip-unneeded debian/tmp/usr/lib/*
# Install documentation
install -m 644 debian/changelog \
debian/tmp/usr/share/doc/libpcre2/changelog.Debian
install -m 644 ChangeLog debian/tmp/usr/share/doc/libpcre2/changelog
gzip -9v debian/tmp/usr/share/doc/libpcre2/*
install -m 644 debian/copyright debian/tmp/usr/share/doc/libpcre2
install -m 644 pcre.7 debian/tmp/usr/share/man/man7
gzip -9v debian/tmp/usr/share/man/man7/pcre.7
# Standard package building stuff
install -m 755 debian/postinst-lib debian/tmp/DEBIAN/postinst
sed s/PACKAGE/libpcre2/ <debian/prerm >debian/tmp/DEBIAN/prerm
chmod 755 debian/tmp/DEBIAN/prerm
install -m 644 debian/shlibs debian/tmp/DEBIAN
dpkg-shlibdeps debian/tmp/usr/lib/libpcre.so.2
dpkg-gencontrol -plibpcre2
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
dpkg --build debian/tmp ..
# Build the libpcre2-dev package
-rm -rf debian/tmp
# First create directories
install -d debian/tmp/DEBIAN
install -d debian/tmp/usr/lib
install -d debian/tmp/usr/include
install -d debian/tmp/usr/share/man/man3
install -d debian/tmp/usr/share/doc/libpcre2-dev
# Install library symlinks
ln -s libpcre.so.2 debian/tmp/usr/lib/libpcre.so
ln -s libpcreposix.so.2 debian/tmp/usr/lib/libpcreposix.so
# Install static libs
install -m 644 libpcre.a libpcreposix.a debian/tmp/usr/lib
# Install includes
install -m 644 *.h debian/tmp/usr/include
# Install manpages
install -m 644 *.3 debian/tmp/usr/share/man/man3
gzip -9v debian/tmp/usr/share/man/man3/*
# Install documentation
install -m 644 debian/changelog \
debian/tmp/usr/share/doc/libpcre2-dev/changelog.Debian
install -m 644 ChangeLog \
debian/tmp/usr/share/doc/libpcre2-dev/changelog
install -m 644 Tech.Notes debian/tmp/usr/share/doc/libpcre2-dev
gzip -9v debian/tmp/usr/share/doc/libpcre2-dev/*
install -m 644 debian/copyright debian/tmp/usr/share/doc/libpcre2-dev
mkdir debian/tmp/usr/share/doc/libpcre2-dev/examples
install -m 644 pgrep.c debian/tmp/usr/share/doc/libpcre2-dev/examples
gzip -9v debian/tmp/usr/share/doc/libpcre2-dev/examples/pgrep.c
# Standard package building stuff
sed s/PACKAGE/libpcre2-dev/ <debian/postinst >debian/tmp/DEBIAN/postinst
chmod 755 debian/tmp/DEBIAN/postinst
sed s/PACKAGE/libpcre2-dev/ <debian/prerm >debian/tmp/DEBIAN/prerm
chmod 755 debian/tmp/DEBIAN/prerm
dpkg-gencontrol -plibpcre2-dev
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
dpkg --build debian/tmp ..
# Build the pgrep package
-rm -rf debian/tmp
# First create directories
install -d debian/tmp/DEBIAN
install -d debian/tmp/usr/bin
install -d debian/tmp/usr/share/man/man1
install -d debian/tmp/usr/share/doc
# Install program
install -s pgrep debian/tmp/usr/bin
# Install manpage
install pgrep.1 debian/tmp/usr/share/man/man1
gzip -v9 debian/tmp/usr/share/man/man1/pgrep.1
# Symlink to documentation in libpcre2
ln -s libpcre2 debian/tmp/usr/share/doc/pgrep
# LD_LIBRARY_PATH ensures dpkg-shlibdeps ignores libpcre2 dependency
# so I can hardcode it without getting duplicates. Anyone know a
# better solution to this?
LD_LIBRARY_PATH=. dpkg-shlibdeps debian/tmp/usr/bin/pgrep
# Standard package building stuff
sed s/PACKAGE/pgrep/ <debian/postinst >debian/tmp/DEBIAN/postinst
chmod 755 debian/tmp/DEBIAN/postinst
sed s/PACKAGE/pgrep/ <debian/prerm >debian/tmp/DEBIAN/prerm
chmod 755 debian/tmp/DEBIAN/prerm
dpkg-gencontrol -ppgrep
chown -R root.root debian/tmp
chmod -R g-ws debian/tmp
dpkg --build debian/tmp ..
define checkdir
test -f pcre.c -a -f debian/rules
endef
binary: binary-indep binary-arch
checkroot:
$(checkdir)
test root = "`whoami`"
.PHONY: config clean binary binary-arch binary-indep
|