#!/usr/bin/make -f # -*- makefile -*- # 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 GHCVERSION=6.2.2 GHCPATH=/usr/lib/ghc-$(GHCVERSION)/bin PATH:=$(GHCPATH):$(PATH) export PATH CFLAGS = -Wall -g LIBPATH=/usr/lib/haskell-packages/$(1) PACKAGE=lib$(1)-cabal-dev FLAVORS=ghc6 define build_flavor echo BUILDING FOR $(1) -./setup clean rm -f .*config* ./setup configure --prefix=$(LIBPATH) --with-compiler=/usr/bin/$(1) ./setup build mkdir -p $(CURDIR)/debian/$(PACKAGE)/usr/share/doc/$(PACKAGE) cp -r $(CURDIR)/doc/API $(CURDIR)/debian/$(PACKAGE)/usr/share/doc/$(PACKAGE) cp -r $(CURDIR)/doc/users-guide $(CURDIR)/debian/$(PACKAGE)/usr/share/doc/$(PACKAGE) ./setup copy --copy-prefix=$(CURDIR)/debian/$(PACKAGE)$(LIBPATH) #generate the register and unregister scripts ./setup register --gen-script ./setup unregister --gen-script # install them for later cp register.sh $(CURDIR)/debian/$(PACKAGE)/usr/share/doc/$(PACKAGE)/register.sh cp unregister.sh $(CURDIR)/debian/$(PACKAGE)/usr/share/doc/$(PACKAGE)/unregister.sh endef ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) INSTALL_PROGRAM += -s endif # shared library versions, option 1 version=2.0.5 major=2 # option 2, assuming the library is created as src/.libs/libfoo.so.2.0.5 or so #version=`ls src/.libs/lib*.so.* | \ # awk '{if (match($$0,/[0-9]+\.[0-9]+\.[0-9]+$$/)) print substr($$0,RSTART)}'` #major=`ls src/.libs/lib*.so.* | \ # awk '{if (match($$0,/\.so\.[0-9]+$$/)) print substr($$0,RSTART+4)}'` configure: configure-stamp configure-stamp: dh_testdir # Add here commands to configure the package. make setup touch configure-stamp build: build-stamp build-stamp: configure-stamp dh_testdir # Add here commands to compile the package. touch build-stamp clean: dh_testdir dh_testroot rm -f build-stamp configure-stamp # Add here commands to clean up after the build process. -$(MAKE) clean rm -f .*config* dh_clean install: build dh_testdir dh_testroot dh_clean -k dh_installdirs $(foreach tgt,$(FLAVORS),$(call build_flavor,$(tgt))) # Build architecture-independent files here. binary-indep: build install # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot dh_installchangelogs -a dh_installdocs -a dh_installexamples -a # dh_install # dh_installmenu # dh_installdebconf # dh_installlogrotate # dh_installemacsen # dh_installpam # dh_installmime # dh_installinit # dh_installcron # dh_installinfo dh_installman -a dh_link -a dh_strip -a dh_compress -a dh_fixperms -a # dh_perl # dh_python # dh_makeshlibs dh_installdeb -a dh_shlibdeps -a dh_gencontrol -a dh_md5sums -a dh_builddeb -a binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install configure