rules 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134
  1. #!/usr/bin/make -f
  2. include /usr/share/quilt/quilt.make
  3. DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
  4. DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
  5. ifneq ($(DEB_HOST_GNU_TYPE),$(DEB_BUILD_GNU_TYPE))
  6. CROSS= --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) CC=$(DEB_HOST_GNU_TYPE)-gcc LD=$(DEB_HOST_GNU_TYPE)-ld
  7. else
  8. CROSS= --build=$(DEB_BUILD_GNU_TYPE)
  9. endif
  10. # HOWMANY is the number of bytes looked at by file
  11. CFLAGS += -DHOWMANY=0x18000
  12. PYTHON_VERSIONS=$(shell pyversions -r debian/control)
  13. clean: unpatch
  14. dh_testdir
  15. dh_testroot
  16. rm -f build-stamp
  17. rm -f config.guess config.sub
  18. [ ! -f Makefile ] || $(MAKE) clean
  19. [ ! -f Makefile ] || $(MAKE) distclean
  20. rm -rf python/build
  21. dh_clean
  22. config.status: configure patch
  23. dh_testdir
  24. ifneq "$(wildcard /usr/share/misc/config.guess)" ""
  25. cp -f /usr/share/misc/config.guess config.guess
  26. endif
  27. ifneq "$(wildcard /usr/share/misc/config.sub)" ""
  28. cp -f /usr/share/misc/config.sub config.sub
  29. endif
  30. ./configure $(CROSS) --prefix=/usr --datadir=\$${prefix}/share --mandir=\$${prefix}/share/man --enable-fsect-man5 CFLAGS="$(CFLAGS)"
  31. build: build-stamp
  32. build-stamp: config.status
  33. dh_testdir
  34. $(MAKE)
  35. set -e; \
  36. for python in $(PYTHON_VERSIONS); \
  37. do \
  38. (cd python && $$python setup.py build_ext \
  39. -L$(CURDIR)/src/.libs); \
  40. done
  41. set -e; \
  42. for python in $(PYTHON_VERSIONS); do \
  43. (cd python && $$python-dbg setup.py build_ext -L$(CURDIR)/src/.libs); \
  44. done
  45. touch build-stamp
  46. install: build
  47. dh_testdir
  48. dh_testroot
  49. dh_prep
  50. dh_installdirs
  51. # Installing package
  52. $(MAKE) prefix=$(CURDIR)/debian/tmp/usr install
  53. install -D -m 0644 magic/magic.local debian/tmp/etc/magic
  54. install -D -m 0644 magic/magic.local debian/tmp/etc/magic.mime
  55. set -e; \
  56. for python in $(PYTHON_VERSIONS); \
  57. do \
  58. (cd python && $$python setup.py install --no-compile \
  59. --root=$(CURDIR)/debian/python-magic); \
  60. done
  61. set -e; \
  62. for python in $(PYTHON_VERSIONS); do \
  63. (cd python && $$python-dbg setup.py install --no-compile \
  64. --root=$(CURDIR)/debian/python-magic-dbg); \
  65. done
  66. find debian/python-*-dbg ! -type d ! -name '*.so' | xargs rm -f
  67. find debian/python-*-dbg -depth -empty -exec rmdir {} \;
  68. # Installing additional headers
  69. mkdir -p debian/libmagic-dev/usr/include/file
  70. cp src/file.h src/patchlevel.h debian/libmagic-dev/usr/include/file
  71. # Installing plain magic.mime for compatibility
  72. install -D -m 0644 debian/legacy/magic.mime debian/libmagic1/usr/share/file/magic.mime
  73. # Installing bug congtrols
  74. install -D -m 0644 debian/bug/presubj debian/file/usr/share/bug/file/presubj
  75. install -D -m 0644 debian/bug/control debian/libmagic1/usr/share/bug/libmagic1/control
  76. install -D -m 0644 debian/bug/presubj-lib debian/libmagic1/usr/share/bug/libmagic1/presubj
  77. install -D -m 0644 debian/bug/control debian/libmagic-dev/usr/share/bug/libmagic-dev/control
  78. binary: binary-arch
  79. binary-arch: install
  80. dh_testdir
  81. dh_testroot
  82. dh_installchangelogs ChangeLog
  83. dh_installdocs
  84. dh_installexamples
  85. dh_install --sourcedir=debian/tmp
  86. dh_lintian
  87. dh_link
  88. dh_python
  89. ifeq (,$(findstring -i, $(DH_OPTIONS)))
  90. dh_strip -Npython-magic -Npython-magic-dbg
  91. DH_OPTIONS= dh_strip -ppython-magic --dbg-package=python-magic-dbg
  92. rm -rf debian/python-magic-dbg/usr/share/doc/python-magic-dbg
  93. mkdir -p debian/python-magic-dbg/usr/share/doc
  94. ln -s python-magic debian/python-magic-dbg/usr/share/doc/python-magic-dbg
  95. endif
  96. dh_compress
  97. dh_fixperms
  98. dh_makeshlibs
  99. dh_installdeb
  100. dh_shlibdeps -Llibmagic1 -ldebian/libmagic1/usr/lib
  101. dh_gencontrol
  102. dh_md5sums
  103. dh_builddeb
  104. binary-indep:
  105. .PHONY: clean build install binary binary-arch binary-indep