123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147 |
- #!/usr/bin/make -f
- # debian/rules that uses debhelper;
- # based on rules.multi2, originally written by Joey Hess.
- #
- # This version is for a multibinary package. It also allows you to build any
- # of the binary packages independantly, via binary-<package> targets.
- # Uncomment this to turn on verbose mode.
- #export DH_VERBOSE=1
- PYTHON_VERSIONS=2.4 2.3
- # This has to be exported to make some magic below work.
- export DH_OPTIONS
- # Proper autotools handling as per autotools-dev/README.Debian
- export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
- export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
- ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
- CONFFLAGS += --build $(DEB_HOST_GNU_TYPE)
- else
- CONFFLAGS += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
- endif
- # Initial CFLAGS; HOWMANY is the number of bytes looked at by file
- CFLAGS = -DHOWMANY=0x18000
- ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -g
- endif
- ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
- CFLAGS += -O0
- else
- CFLAGS += -O2
- endif
- build: build-stamp $(patsubst %,build-stamp-%,$(PYTHON_VERSIONS))
- build-stamp:
- dh_testdir
- mv config.sub config.sub.upstream && ln -s /usr/share/misc/config.sub
- mv config.guess config.guess.upstream && ln -s /usr/share/misc/config.guess
- ./configure $(CONFFLAGS) --prefix=/usr \
- '--datadir=$${prefix}/share/misc' '--mandir=$${prefix}/share/man' \
- --enable-fsect-man5
- rm config.sub && mv config.sub.upstream config.sub
- rm config.guess && mv config.guess.upstream config.guess
- mv libtool libtool.upstream && cp /usr/bin/libtool libtool
- make
- rm libtool && mv libtool.upstream libtool
- touch build-stamp
- build-stamp-%:
- dh_testdir
- cd python && python$* setup.py build_ext -L$(CURDIR)/src/.libs
- touch $@
- clean:
- dh_testdir
- dh_testroot
- rm -f build-stamp build-stamp-* debian/copyright
- rm -rf python/build
- -$(MAKE) clean
- -$(MAKE) distclean
- dh_clean
- install: DH_OPTIONS=
- install: build
- dh_testdir
- dh_testroot
- dh_clean -k
- dh_installdirs
- # Add here commands to install the package into debian/tmp.
- mv libtool libtool.upstream && cp /usr/bin/libtool libtool
- $(MAKE) prefix=`pwd`/debian/tmp/usr install
- rm libtool && mv libtool.upstream libtool
- install -m644 -p -D magic/magic.local debian/tmp/etc/magic
- install -m644 -D debian/bug.presubj debian/file/usr/share/bug/file/presubj
- install -m644 -D debian/bug.control debian/libmagic1/usr/share/bug/libmagic1/control
- install -m644 -D debian/bug.presubj-lib debian/libmagic1/usr/share/bug/libmagic1/presubj
- install -m644 -D debian/bug.control debian/libmagic-dev/usr/share/bug/libmagic-dev/control
- dh_install --sourcedir=debian/tmp
- $(MAKE) -f debian/rules $(patsubst %,install-%,$(PYTHON_VERSIONS))
- install-%:
- dh_testdir
- dh_testroot
- dh_installdirs
- cd python && python$* setup.py install --no-compile\
- --prefix=$(CURDIR)/debian/python$*-magic/usr
- # This single target is used to build all the packages, all at once, or
- # one at a time. So keep in mind: any options passed to commands here will
- # affect _all_ packages. Anything you want to only affect one package
- # should be put in another target, such as the install target.
- binary-common:
- cat debian/copyright-prolog LEGAL.NOTICE > debian/copyright
- dh_testdir
- dh_testroot
- dh_installchangelogs ChangeLog
- dh_installdocs
- dh_installexamples
- dh_installmenu
- # dh_installdebconf
- # dh_installlogrotate
- # dh_installemacsen
- # dh_installcatalogs
- # dh_installpam
- # dh_installmime
- # dh_installinit
- # dh_installman
- # dh_installcron
- # dh_installinfo
- # dh_undocumented
- dh_strip
- dh_link
- dh_compress
- dh_fixperms
- # dh_perl
- dh_python
- dh_makeshlibs
- dh_installdeb
- dh_shlibdeps -Llibmagic1 -ldebian/libmagic1/usr/lib
- dh_gencontrol
- dh_md5sums
- dh_builddeb
- rm -f debian/copyright
- # Build architecture independant packages using the common target.
- binary-indep: build install
- $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
- # Build architecture dependent packages using the common target.
- binary-arch: build install
- $(MAKE) -f debian/rules DH_OPTIONS=-a binary-common
- # Any other binary targets build just one binary package at a time.
- binary-%: build install
- make -f debian/rules binary-common DH_OPTIONS=-p$*
- binary: binary-indep binary-arch
- .PHONY: build clean binary-indep binary-arch binary-common binary install
|