#!/usr/bin/make -f # Sample debian/rules that uses debhelper. # GNU copyright 1997 by Joey Hess. # Modified for GAP by Bill Allombert 2002-2013 # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 # 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_CPU ?= $(shell dpkg-architecture -qDEB_HOST_GNU_CPU) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) export FORCE_SOURCE_DATE = 1 export SOURCE_DATE_EPOCH = $(shell date -d "$$(dpkg-parsechangelog -SDate)" +%s) triplet = $(DEB_HOST_MULTIARCH) libtriplet = usr/lib/$(triplet) gaptriplet = $(libtriplet)/gap library = libgap8 #strip is handled by dh_strip CFLAGS = -g -Wall ifneq (,$(filter noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif export CFLAGS LDFLAGS = -Wl,-z,relro ifneq (,$(filter terse, $(DEB_BUILD_OPTIONS))) SILENT="" else SILENT="V=1" endif config.status: configure dh_testdir GAPHOST=$(DEB_HOST_MULTIARCH) LDFLAGS=$(LDFLAGS) ./configure \ --host=$(DEB_HOST_GNU_TYPE) --target=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --libdir=/$(libtriplet) \ SHELL=/bin/sh GREP=/bin/grep SED=/bin/sed DD=/bin/dd STRIP=/bin/true \ --enable-static prep: prep-stamp prep-stamp: mkdir pkg ln -s /usr/share/gap/pkg/GAPDoc pkg ln -s /usr/share/gap/pkg/AtlasRep pkg ln -s /usr/share/gap/pkg/CtblLib pkg ln -s /usr/share/gap/pkg/TomLib pkg ln -s /usr/share/gap/pkg/SmallGrp pkg ln -s /usr/share/gap/pkg/PrimGrp pkg ln -s /usr/share/gap/pkg/TransGrp pkg touch prep-stamp build-arch: config.status build-arch-stamp build-arch-stamp: prep-stamp dh_testdir $(MAKE) all libgap.la $(SILENT) ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) env GAP_DIR=`pwd` LC_CTYPE=C.UTF-8 \ $(MAKE) check $(SILENT) endif $(MAKE) -C debian/doc gap.1 touch build-arch-stamp build-indep: config.status build-indep-stamp build-indep-stamp: build-arch-stamp dh_testdir env GAP_DIR=`pwd` LC_CTYPE=C.UTF-8 $(MAKE) doc $(SILENT) $(MAKE) -C debian/doc touch build-indep-stamp build: build-arch build-indep clean: dh_testdir dh_testroot rm -f build-arch-stamp build-indep-stamp prep-stamp if test -f GNUmakefile; then $(MAKE) distclean clean; fi $(MAKE) -C doc clean $(MAKE) -C debian/doc clean rm -f sysinfo.gap rm -rf bin pkg .libs rm -f debian/gap.tst rm -f configure.lineno dh_clean install: install-arch install-indep install-arch: build-arch dh_testdir -a dh_testroot -a dh_prep -a dh_installdirs -a dh_install -a #dh_install -p gap-dev build/obj ${gaptriplet} #rm -r debian/gap-dev/${gaptriplet}/obj/src/*.o $(MAKE) install-bin DESTDIR=$(CURDIR)/debian/gap-core $(SILENT) $(MAKE) install-headers DESTDIR=$(CURDIR)/debian/libgap-dev $(SILENT) $(MAKE) install-sysinfo DESTDIR=$(CURDIR)/debian/gap-core $(SILENT) $(MAKE) install-libgap DESTDIR=$(CURDIR)/debian/${library} $(SILENT) $(MAKE) install-libgap DESTDIR=$(CURDIR)/debian/libgap-dev $(SILENT) cd debian/${library}/${libtriplet} && rm libgap.a libgap.la libgap.so cd debian/libgap-dev/${libtriplet} && rm libgap.la libgap.so.* dh_link -p gap-dev /usr/bin/gac /${libtriplet}/gap/gac install -m 755 -d debian/gap-dev/usr/include/gap/src rm debian/libgap-dev/usr/include/gap/src for i in $$(cd debian/libgap-dev && echo usr/include/gap/*.h); do \ dh_link -p gap-dev $$i usr/include/gap/src/$$(basename $$i); done install -m 755 doc/manualindex debian/gap-core/usr/share/gap/etc dh_install -p gap-core debian/gap-core/${gaptriplet}/sysinfo.gap usr/lib/gap install -m 755 debian/gap.debian debian/gap-core/usr/bin/gap perl -pi -e "s,\@GAP_PRG\@,/${gaptriplet}/gap,g" \ debian/gap-core/usr/bin/gap mv debian/gap-core/usr/bin/gac debian/gap-dev/usr/bin/gac dh_installdocs -a dh_installdocs -p gap debian/changelog-*.Debian dh_installexamples -a dh_installmenu -a dh_installman -a dh_installinfo -a dh_installchangelogs -a CHANGES.md install-indep: build-indep dh_testdir -i dh_testroot -i dh_prep -i $(MAKE) -C doc install-pdf install-html "DESTDIR=../debian/gap-doc" $(MAKE) -C doc install-help "DESTDIR=../debian/gap-online-help" $(MAKE) -C debian/doc install "DESTDIR=../gap-doc" dh_installdirs -i dh_install -i dh_installdocs -p gap-doc CITATION CONTRIBUTING.md README.md dh_installdocs -i --all debian/changelog-*.Debian dh_installexamples -i dh_installinfo -i dh_installchangelogs -i CHANGES.md # Build architecture-independent files here. # Pass -i to all debhelper commands in this target to reduce clutter. binary-indep: build-indep install-indep dh_testdir -i dh_testroot -i dh_link -i dh_compress -i dh_fixperms -i dh_installdeb -i dh_gencontrol -i dh_md5sums -i dh_builddeb -i # Build architecture-dependent files here. binary-arch: build-arch install-arch dh_testdir -a dh_testroot -a dh_strip -a dh_link -a dh_compress -a dh_fixperms -a dh_makeshlibs -p $(library) -V '$(library)' dh_shlibdeps -a dh_installdeb -a dh_gencontrol -a -- $(SUBSTVARS) dh_md5sums -a dh_builddeb -a binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install