X-Git-Url: https://www.ginac.de/ginac.git//ginac.git?p=ginac.git;a=blobdiff_plain;f=debian%2Frules;h=4834145346ccc94c982291d6bbc5425fc99cd39b;hp=3a24dd81199d83e622d7e95b37f7dbb5e0c12b0b;hb=b60d73e12181182b5afd3d37363d99151628b92b;hpb=ece5f57b53603bea68161c946d26d58bb6d39aca;ds=sidebyside diff --git a/debian/rules b/debian/rules index 3a24dd81..48341453 100755 --- a/debian/rules +++ b/debian/rules @@ -1,53 +1,86 @@ #!/usr/bin/make -f -package=ginac +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 -version=$(shell expr `pwd` : '.*-\([0-9.]*\)') -version_major=$(shell expr `pwd` : '.*-\([0-9]*\).[0-9.]*') +# This is the debhelper compatability version to use. +export DH_COMPAT=4 +# This has to be exported to make some magic below work. +export DH_OPTIONS -build: +# 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) + + +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + export CXXFLAGS = -O0 +else + export CXXFLAGS = -O2 -finline-limit=1200 +endif +ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + INSTALL_PROGRAM += -s +endif + +config.status: configure dh_testdir - ./configure --prefix=/usr --with-cint - $(MAKE) CXXFLAGS="-O2" - touch build + # Add here commands to configure the package. + # The Makefile is removed on error in order to prevent the build at this early stage. + ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info || rm -f Makefile + +build: build-arch + +build-arch: build-arch-stamp +build-arch-stamp: config.status + # Add here commands to compile the arch part of the package. + $(MAKE) clean: dh_testdir - dh_clean - -rm -f build + dh_testroot + rm -f build-arch-stamp config-stamp -$(MAKE) distclean - -rm -f `find . -name "*~"` - -rm -rf debian/tmp `find debian/* -type d ! -name CVS` debian/files* core - -rm -f debian/*substvars + dh_clean -binary-indep: build +install: install-arch +install-arch: dh_testdir dh_testroot + dh_clean -k -a + dh_installdirs -a + # Add here commands to install the arch part of the package into + # debian/tmp. + $(MAKE) install prefix=$(CURDIR)/debian/tmp/usr + mkdir -p $(CURDIR)/debian/tmp/usr/share/pixmaps + cp $(CURDIR)/debian/ginac.xpm $(CURDIR)/debian/tmp/usr/share/pixmaps/ -binary-arch: build +# Must not depend on anything. This is to be called by +# binary-arch/binary-multi +# in another 'make' thread. +binary-common: dh_testdir dh_testroot - dh_installdirs - # When is Automake going to honor FHS? - $(MAKE) install prefix=`pwd`/debian/tmp/usr infodir=`pwd`/debian/tmp/usr/share/info mandir=`pwd`/debian/tmp/usr/share/man - # Work around dumb lintian error: binary-without-manpage ginaccint.bin - (cd `pwd`/debian/tmp/usr/share/man/man1; ln -s ginaccint.1.gz ginaccint.bin.1.gz) - # Automake generated Makefile.in do install-info, which is bad for us: - -rm -f `pwd`/debian/tmp/usr/share/info/dir* - dh_installdocs ChangeLog NEWS README - dh_installchangelogs + dh_installdocs dh_installmenu + dh_installman + dh_installinfo + dh_installchangelogs ChangeLog dh_movefiles + dh_link dh_strip dh_compress dh_fixperms - dh_shlibdeps - dh_gencontrol dh_makeshlibs + dh_shlibdeps --libpackage=libginac1.3 -l debian/libginac1.3/usr/lib + dh_gencontrol dh_installdeb dh_md5sums dh_builddeb -binary: binary-indep binary-arch +# Build architecture dependant packages using the common target. +binary-arch: build-arch install-arch + $(MAKE) -f debian/rules DH_OPTIONS=-a binary-common -.PHONY: binary binary-arch binary-indep clean +binary: binary-arch +.PHONY: build clean binary-arch binary install install-arch