#!/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- 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' '--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