| #!/usr/bin/make -f |
| # Sample debian/rules that uses debhelper. |
| # GNU copyright 1997 to 1999 by Joey Hess. |
| |
| # Uncomment this to turn on verbose mode. |
| #export DH_VERBOSE=1 |
| |
| # This is the debhelper compatibility version to use. |
| export DH_COMPAT=4 |
| |
| # This has to be exported to make some magic below work. |
| export DH_OPTIONS |
| |
| # These are used for cross-compiling and for saving the configure script |
| # from having to guess our platform (since we know it already) |
| DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) |
| DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) |
| |
| objdir = $(CURDIR)/obj-$(DEB_BUILD_GNU_TYPE) |
| |
| ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS))) |
| CFLAGS += -g |
| endif |
| ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) |
| INSTALL_PROGRAM += -s |
| endif |
| |
| configure: configure-stamp |
| configure-stamp: |
| dh_testdir |
| |
| # make build directory |
| mkdir $(objdir) |
| |
| # run configure with build tree $(objdir) |
| # change ../configure to ../autogen.sh for CVS build |
| cd $(objdir) && \ |
| ../configure --build=$(DEB_BUILD_GNU_TYPE) --host=$(DEB_HOST_GNU_TYPE) \ |
| --prefix=/usr |
| |
| touch configure-stamp |
| |
| build: build-stamp |
| build-stamp: configure-stamp |
| dh_testdir |
| |
| cd $(objdir) && \ |
| $(MAKE) |
| |
| touch build-stamp |
| |
| autotools: |
| OLDDATESUB=`./config.sub -t | tr -d -` ;\ |
| OLDDATEGUESS=`./config.guess -t | tr -d -` ;\ |
| NEWDATESUB=`/usr/share/misc/config.sub -t | tr -d -` ;\ |
| NEWDATEGUESS=`/usr/share/misc/config.guess -t | tr -d -` ;\ |
| if [ $$OLDDATESUB -lt $$NEWDATESUB -o \ |
| $$OLDDATEGUESS -lt $$NEWDATEGUESS ]; then \ |
| dch -a -p "GNU config automated update: config.sub\ |
| ($$OLDDATESUB to $$NEWDATESUB), config.guess\ |
| ($$OLDDATEGUESS to $$NEWDATEGUESS)" ;\ |
| cp -f /usr/share/misc/config.sub config.sub ;\ |
| cp -f /usr/share/misc/config.guess config.guess ;\ |
| echo WARNING: GNU config scripts updated from master copies 1>&2 ;\ |
| fi |
| |
| debian-clean: |
| dh_testdir |
| dh_testroot |
| |
| dh_clean |
| |
| clean: autotools |
| dh_testdir |
| dh_testroot |
| rm -f build-stamp configure-stamp |
| |
| # Remove build tree |
| rm -rf $(objdir) |
| |
| # if Makefile exists run distclean |
| if test -f Makefile; then \ |
| $(MAKE) distclean; \ |
| fi |
| |
| #if test -d CVS; then \ |
| $(MAKE) cvs-clean ;\ |
| fi |
| |
| dh_clean |
| |
| install: DH_OPTIONS= |
| install: build |
| dh_testdir |
| dh_testroot |
| dh_clean -k |
| dh_installdirs |
| |
| cd $(objdir) && \ |
| $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp |
| |
| dh_install --list-missing |
| |
| # 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: |
| dh_testdir |
| dh_testroot |
| # dh_installxfonts |
| dh_installchangelogs |
| dh_installdocs |
| dh_installexamples |
| # dh_installmenu |
| # dh_installdebconf |
| # dh_installlogrotate |
| # dh_installemacsen |
| # dh_installpam |
| # dh_installmime |
| # dh_installinit |
| # dh_installcron |
| # dh_installinfo |
| # dh_undocumented |
| dh_installman |
| dh_strip |
| dh_link |
| dh_compress |
| dh_fixperms |
| dh_makeshlibs -V |
| dh_installdeb |
| # dh_perl |
| dh_shlibdeps |
| dh_gencontrol |
| dh_md5sums |
| dh_builddeb |
| |
| # Build architecture independant packages using the common target. |
| binary-indep: build install |
| # $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common |
| |
| # Build architecture dependant 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 install configure |