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 140 141 142 143 144
|
#! /usr/bin/make -f
# debian/rules file for NAS
package=nas
pacs=nas nas-bin nas-dev nas-doc nas-lib
instdirs=BINDIR=/usr/bin USRLIBDIR=/usr/lib MANPATH=/usr/man INCDIR=/usr/include MANSUFFIX=1nas LIBMANSUFFIX=3nas FILEMANSUFFIX=5nas ETCDIR=/etc/nas
build:
# Make include symlinks
( cd include/audio; for file in ../../lib/audio/*.h; do ln -s $$file .; done )
xmkmf -a
make LDFLAGS="-s"
touch build
clean:
FOO=bar; echo $$FOO
$(checkdir)
-make clean
find . -name Makefile -exec rm -f {} \;
# Clear up include symlinks
find include/audio -type l -exec rm -f {} \;
rm -rf debian/tmp debian/nas{,-dev,-doc,-bin,-lib}
rm -f build debian/files
binary-indep: checkroot build
$(checkdir)
# There are no architecture independent packages to be built
binary-arch: checkroot build
$(checkdir)
# First create directories:
# nas
install -d debian/nas/DEBIAN
install -d debian/nas/usr/bin
install -d debian/nas/usr/man/man1
install -d debian/nas/usr/man/man5
install -d debian/nas/usr/doc/nas
install -d debian/nas/etc/init.d
# nas-bin
install -d debian/nas-bin/DEBIAN
install -d debian/nas-bin/usr/bin
install -d debian/nas-bin/usr/man/man1
install -d debian/nas-bin/usr/doc/nas-bin
# nas-dev
install -d debian/nas-dev/DEBIAN
install -d debian/nas-dev/usr/include/audio
install -d debian/nas-dev/usr/man/man3
install -d debian/nas-dev/usr/doc/nas-dev
install -d debian/nas-dev/usr/lib
# nas-doc
install -d debian/nas-doc/DEBIAN
install -d debian/nas-doc/usr/doc/nas-doc
install -d debian/nas-doc/usr/doc/nas
# nas-lib
install -d debian/nas-lib/DEBIAN
install -d debian/nas-lib/usr/lib
install -d debian/nas-lib/usr/doc/nas-lib
# Make install used to do most stuff for us, but not any more.
#$(MAKE) install BINDIR=/usr/bin MANPATH=/usr/man DESTDIR=$(TOP)/debian/tmp
#$(MAKE) install.man DESTDIR=$(TOP)/debian/tmp
# install nas
(top=`pwd`; cd server && $(MAKE) install $(instdirs) DESTDIR=$$top/debian/nas)
(top=`pwd`; cd server && $(MAKE) install.man $(instdirs) DESTDIR=$$top/debian/nas)
mv debian/nas/usr/man/man1/AUVoxConfig.1nas debian/nas/usr/man/man5/AUVoxConfig.5nas
# install nas-bin
(top=`pwd`; cd clients/audio && $(MAKE) install $(instdirs) DESTDIR=$$top/debian/nas-bin)
(top=`pwd`; cd clients/audio && $(MAKE) install.man $(instdirs) DESTDIR=$$top/debian/nas-bin)
# install nas-dev
(top=`pwd`; cd doc/man/lib && $(MAKE) install.man $(instdirs) MANSUFFIX=3nas DESTDIR=$$top/debian/nas-dev)
install -m644 lib/audio/libaudio.a debian/nas-dev/usr/lib
install -m644 include/audio/*.h debian/nas-dev/usr/include/audio
ln -s libaudio.so.2.0 debian/nas-dev/usr/lib/libaudio.so
# install nas-doc
install -m644 doc/*{ps,txt} doc/actions debian/nas-doc/usr/doc/nas
install -m644 doc/README debian/nas-doc/usr/doc/nas/README.DOC
# install nas-lib
install -m644 lib/audio/libaudio.so.2.0 lib/audio/AuErrorDB debian/nas-lib/usr/lib
ln -s libaudio.so.2.0 debian/nas-lib/usr/lib/libaudio.so.2
install -m644 lib/audio/libaudio.so.2.0 debian/nas-lib/usr/lib
strip --strip-unneeded debian/nas-lib/usr/lib/libaudio.so.2.0
# Install other files
install debian/rc.nas debian/nas/etc/init.d/nas
install debian/start-nas debian/nas/usr/bin
install -m 644 debian/start-nas.man debian/nas/usr/man/man1/start-nas.1nas
install -m 644 doc/man/nas.man debian/nas/usr/man/man1/nas.1nas
# Install documentation
-gzip -9v debian/nas{,-dev,-doc,-bin,-lib}/usr/man/man*/*
ln -s nas.1nas.gz debian/nas/usr/man/man1/au.1nas.gz
for dir in $(pacs); do install -m644 README FAQ BUGS TODO debian/$$dir/usr/doc/$$dir; done
for dir in $(pacs); do install -m644 HISTORY debian/$$dir/usr/doc/$$dir/changelog; done
for dir in $(pacs); do install -m644 debian/changelog debian/$$dir/usr/doc/$$dir/changelog.Debian; done
install -m644 debian/nas.README.Debian debian/nas/usr/doc/nas
-gzip -9v debian/nas{,-dev,-doc,-bin,-lib}/usr/doc/*/*
-chmod -Rv u+w debian/nas{,-dev,-doc,-bin,-lib}/usr/{include,man}
chmod -v 644 debian/nas/etc/nas/AUVoxConfig.eg
chmod -v 644 debian/nas-lib/usr/lib/AuErrorDB
for dir in $(pacs); do cp debian/copyright debian/$$dir/usr/doc/$$dir; done
# Standard package building stuff
for dir in $(pacs); \
do \
if [ -f debian/$$dir.conffiles ] ; then \
install -m644 debian/$$dir.conffiles debian/$$dir/DEBIAN/conffiles; \
fi; \
for file in preinst postinst prerm postrm; \
do \
if [ -f debian/$$dir.$$file ] ; then \
install -m755 debian/$$dir.$$file debian/$$dir/DEBIAN/$$file; \
fi; \
done; \
done
install -m644 debian/nas-lib.shlibs debian/nas-lib/DEBIAN/shlibs
dpkg-shlibdeps debian/nas/usr/bin/*
LD_LIBRARY_PATH=./debian/nas-lib/usr/lib dpkg-shlibdeps debian/nas-bin/usr/bin/*
dpkg-shlibdeps debian/nas-lib/usr/lib/lib*
for dir in $(pacs); \
do \
dpkg-gencontrol -Pdebian/$$dir -p$$dir >debian/$$dir/DEBIAN/control; \
done
-chown -R root.root debian/nas{,-dev,-doc,-bin,-lib}
-chmod -R g-ws debian/nas{,-dev,-doc,-bin,-lib}
for dir in $(pacs); \
do \
dpkg --build debian/$$dir ..; \
done
define checkdir
test -f server/dia/au.h -a -f debian/rules
endef
# Below here is fairly generic really
binary: binary-indep binary-arch
source diff:
@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false
checkroot:
$(checkdir)
test root = "`whoami`"
.PHONY: binary binary-arch binary-indep clean checkroot
|