]> git.llucax.com Git - software/mutt-debian.git/blobdiff - debian/rules
Instead of trying to maintain the PATCHES file, put "quilt applied" output there.
[software/mutt-debian.git] / debian / rules
index 05b512f85cb137473ec20533be9019129e92e2b1..7db0d8fc32a793c8e39635d935c2616f7344e85e 100755 (executable)
@@ -1,27 +1,43 @@
 #!/usr/bin/make -f
 
 include /usr/share/quilt/quilt.make
+QUILT = QUILT_PATCHES=$(QUILT_PATCH_DIR) quilt --quiltrc /dev/null
 
+###################### user serviceable parts ######################
+
+###
+# build a separate mutt-patched package?
+BUILD_PATCHED := yes
 ###
 # header cache backend
 # HCACHE_DB := bdb
-HCACHE_DB := gdbm
+HCACHE_DB := gdbm
 # HCACHE_DB := qdbm
+HCACHE_DB := tokyocabinet
 ###
 # GPGME backend
-GPGME := --enable-gpgme
+GPGME := --enable-gpgme
 ###
 
+###################### variables ######################
+
+ifneq ($(BUILD_PATCHED),yes)
+export DH_OPTIONS := -Nmutt-patched
+endif
+
 # Configure arguments
 
 ifeq ($(HCACHE_DB),bdb)
-    hcache_db := --without-gdbm --without-qdbm
+    hcache_db := --without-gdbm --without-qdbm --without-tokyocabinet
 endif
 ifeq ($(HCACHE_DB),gdbm)
-    hcache_db := --without-qdbm --without-bdb
+    hcache_db := --without-qdbm --without-bdb --without-tokyocabinet
 endif
 ifeq ($(HCACHE_DB),qdbm)
-    hcache_db := --without-gdbm --without-bdb
+    hcache_db := --without-gdbm --without-bdb --without-tokyocabinet
+endif
+ifeq ($(HCACHE_DB),tokyocabinet)
+    hcache_db := --without-gdbm --without-bdb --without-qdbm
 endif
 
 confflags =    --prefix=/usr                   \
@@ -45,6 +61,7 @@ confflags =   --prefix=/usr                   \
                                                \
                --with-curses                   \
                --with-gnutls                   \
+               --with-gss                      \
                --with-idn                      \
                --with-mixmaster                \
                --with-sasl                     \
@@ -71,13 +88,17 @@ endif
 # Directory to make the build on
 objdir = $(CURDIR)/obj-$(DEB_HOST_GNU_TYPE)
 
+###################### main ######################
+
 $(objdir)-patched/build-stamp: $(QUILT_STAMPFN)
        dh_testdir
        dh_clean
+       -mkdir $(objdir)-patched
        
+ifeq ($(BUILD_PATCHED),yes)
        ###################### building mutt-patched ######################
+       $(QUILT) applied > PATCHES
        autoreconf --install --include=m4
-       -mkdir $(objdir)-patched
        cd $(objdir)-patched && \
        env CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
        ../configure $(confflags)
@@ -86,13 +107,15 @@ $(objdir)-patched/build-stamp: $(QUILT_STAMPFN)
        
        # we should just "make mutt" here, but that doesn't work yet
        cd $(objdir)-patched && $(MAKE) CFLAGS="$(CFLAGS)"
+endif
        
        touch $@
 
 build build-arch: $(objdir)/build-stamp
 $(objdir)/build-stamp: $(objdir)-patched/build-stamp
        ###################### building mutt ######################
-       QUILT_PATCHES=$(QUILT_PATCH_DIR) quilt --quiltrc /dev/null pop mutt.org
+       $(QUILT) pop mutt.org
+       $(QUILT) applied > PATCHES
        
        autoreconf --install --include=m4
        -mkdir $(objdir)
@@ -108,13 +131,14 @@ $(objdir)/build-stamp: $(objdir)-patched/build-stamp
 
 install: build
        ###################### install ######################
-       dh_clean -k
+       dh_testdir
+       dh_testroot
+       dh_prep
        cd $(objdir) && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
        
        cd debian/tmp/usr/share/doc && \
        rm -rf samples/iconv samples/ca-bundle.crt && \
        mv NEWS NEWS.old && \
-       mv ChangeLog.old changelog.old && \
        cp $(CURDIR)/UPDATING NEWS
        
        chmod +x debian/extra/lib/*
@@ -129,27 +153,33 @@ install: build
          grep '^set' contrib/gpg.rc; \
          echo ) > debian/tmp/gpg.rc
        
+ifeq ($(BUILD_PATCHED),yes)
        # temporarily call the binary mutt-patched so dh_strip gets the debug file name right
        install -D $(objdir)-patched/mutt debian/mutt-patched/usr/bin/mutt-patched
+endif
+       
+       # reportbug driver
+       dh_installdirs
+       install -m644 debian/bug/control $(CURDIR)/debian/mutt/usr/share/bug/mutt
+       install       debian/bug/script  $(CURDIR)/debian/mutt/usr/share/bug/mutt
 
 binary binary-arch: install
        ###################### binary ######################
-       dh_testdir
-       dh_testroot
-       
-       dh_installdirs
        dh_install
        dh_installman
        dh_installmenu
+       dh_installmime
        dh_installdocs
        dh_installexamples
        dh_installchangelogs ChangeLog
-       install -m644 debian/mutt.lintian $(CURDIR)/debian/mutt/usr/share/lintian/overrides/mutt
+       -dh_lintian
        
        dh_strip --dbg-package=mutt-dbg
        rm -rf $(CURDIR)/debian/mutt-dbg/usr/share/doc/mutt-dbg \
                $(CURDIR)/debian/mutt-patched/usr/share/doc/mutt-patched
+ifeq ($(BUILD_PATCHED),yes)
        mv debian/mutt-patched/usr/bin/mutt-patched debian/mutt-patched/usr/bin/mutt
+endif
        
        dh_link
        dh_compress --exclude usr/share/doc/mutt/README.Patches
@@ -170,7 +200,7 @@ clean: unpatch
        
        # please dpkg-source
        rm -f po/*.gmo
-       touch PATCHES
+       echo -n > PATCHES
        
        # remove build trees
        rm -rf $(objdir) $(objdir)-patched
@@ -179,9 +209,6 @@ clean: unpatch
        rm -f configure config.h.in
        rm -f Makefile.in contrib/Makefile.in imap/Makefile.in doc/Makefile.in m4/Makefile.in
        
-       # clean PATCHES hunks (blame quilt refresh)
-       for p in `grep -rl PATCHES debian/patches` ; do perl -wi debian/fix-PATCHES.pl $$p ; done
-       
        dh_clean
 
 .PHONY: configure build build-arch build-indep clean install binary binary-arch binary-indep patch