rules 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #!/usr/bin/make -f
  2. DIR:=$(shell pwd)
  3. arch=$(shell dpkg --print-architecture)
  4. cidir=debian/tmp/DEBIAN
  5. build:
  6. $(checkdir)
  7. ./configure --prefix=/usr
  8. $(MAKE)
  9. touch build
  10. clean:
  11. $(checkdir)
  12. -rm -f build
  13. -$(MAKE) -i distclean || $(MAKE) -f Makefile.in -i distclean
  14. -rm -rf debian/tmp* *~ *.orig ./#*# tmp.* debian/files*
  15. -rm -f config.cache config.status config.h install config.log
  16. find -name '*~' -print0 | xargs -r0 rm --
  17. binary: binary-arch binary-indep
  18. binary-indep:
  19. $(checkdir)
  20. binary-arch: checkroot build
  21. $(checkdir)
  22. -rm -rf debian/tmp
  23. install -d debian/tmp debian/tmp/DEBIAN debian/tmp/etc/dpkg
  24. install -d debian/tmp/usr/doc/{copyright,dpkg}
  25. set -e; if [ $(arch) = i386 ]; then \
  26. sed -e 's/^# i386elf: //' <debian/preinst >$(cidir)/preinst ; \
  27. else \
  28. sed -e '/^# i386elf: /d' debian/preinst >$(cidir)/preinst ; \
  29. fi
  30. set -e; if [ -f debian/shlibs.default.$(arch) ]; then \
  31. echo /etc/dpkg/shlibs.default >$(cidir)/conffiles ; \
  32. cp debian/shlibs.default.$(arch) debian/tmp/etc/dpkg/shlibs.default ; \
  33. fi
  34. cp debian/{prerm,postinst} $(cidir)/.
  35. chmod +x $(cidir)/{postinst,prerm,preinst}
  36. $(MAKE) prefix=$(DIR)/debian/tmp/usr \
  37. datadir=$(DIR)/debian/tmp/var/lib/dpkg \
  38. etcdir=$(DIR)/debian/tmp/etc \
  39. install
  40. find debian/tmp/usr/man -type f | xargs gzip -9v
  41. gzip -9v debian/tmp/usr/doc/dpkg/changelog.*
  42. cp debian/copyright debian/tmp/usr/doc/dpkg/copyright
  43. cp TODO debian/tmp/usr/doc/dpkg/WISHLIST
  44. touch debian/tmp/var/lib/dpkg/{status,available}
  45. dpkg-shlibdeps -dPre-Depends main/dpkg dselect/dselect
  46. dpkg-gencontrol
  47. chown -R root.root debian/tmp
  48. chmod -R g-ws,a+r,u+w debian/tmp
  49. set -e; cd debian/tmp; \
  50. version=`sed -n 's/^Version: //p' DEBIAN/control`; \
  51. file=dpkg_$${version}_$(arch).nondebbin.tar; \
  52. tar cf ../../../$${file} usr var && gzip -9vf ../../../$${file}; \
  53. cd ../..; dpkg-distaddfile $${file}.gz byhand -
  54. mv debian/tmp/usr/bin/dpkg-deb{,.dist}
  55. rm debian/tmp/var/lib/dpkg/{status,available}
  56. dpkg-deb --build debian/tmp ..
  57. define checkdir
  58. test -f include/dpkg.h
  59. endef
  60. checkroot:
  61. $(checkdir)
  62. test root = "`whoami`"
  63. .PHONY: binary source diff clean checkroot