3 include /usr/share/quilt/quilt.make
12 # GPGME := --enable-gpgme
17 ifeq ($(HCACHE_DB),bdb)
18 hcache_db := --without-gdbm --without-qdbm
20 ifeq ($(HCACHE_DB),gdbm)
21 hcache_db := --without-qdbm --without-bdb
23 ifeq ($(HCACHE_DB),qdbm)
24 hcache_db := --without-gdbm --without-bdb
27 confflags = --prefix=/usr \
29 --mandir=/usr/share/man \
30 --with-sharedir=/usr/share/mutt \
31 --with-docdir=/usr/share/doc \
32 --with-mailpath=/var/mail \
34 --disable-dependency-tracking \
55 DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
56 DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
57 confflags += --build $(DEB_BUILD_GNU_TYPE)
58 # Only specify --host when cross-compiling
59 ifneq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
60 confflags += --host $(DEB_HOST_GNU_TYPE)
65 CPPFLAGS = -I/usr/include/qdbm
66 ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
72 # Directory to make the build on
73 objdir = $(CURDIR)/obj-$(DEB_HOST_GNU_TYPE)
75 $(objdir)-patched/build-stamp: $(QUILT_STAMPFN)
79 ###################### building mutt-patched ######################
80 autoreconf --install --include=m4
81 -mkdir $(objdir)-patched
82 cd $(objdir)-patched && \
83 env CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
84 ../configure $(confflags)
86 echo '#include "config-debian.h"' >> $(objdir)-patched/config.h
88 # we should just "make mutt" here, but that doesn't work yet
89 cd $(objdir)-patched && $(MAKE) CFLAGS="$(CFLAGS)"
93 build build-arch: $(objdir)/build-stamp
94 $(objdir)/build-stamp: $(objdir)-patched/build-stamp
95 ###################### building mutt ######################
96 QUILT_PATCHES=$(QUILT_PATCH_DIR) quilt --quiltrc /dev/null pop mutt.org
98 autoreconf --install --include=m4
101 env CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" \
102 ../configure $(confflags)
104 echo '#include "config-debian.h"' >>$(objdir)/config.h
106 cd $(objdir) && $(MAKE) CFLAGS="$(CFLAGS)"
111 ###################### install ######################
115 cd $(objdir) && $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
117 cd debian/tmp/usr/share/doc && \
118 rm -rf samples/iconv samples/ca-bundle.crt && \
119 mv NEWS NEWS.old && \
120 mv ChangeLog.old changelog.old && \
121 cp $(CURDIR)/UPDATING NEWS
123 chmod +x debian/extra/lib/*
124 chmod +x debian/header.awk
125 debian/header.awk debian/patches/features/* \
126 debian/patches/mutt-patched/* > debian/tmp/README.Patches
128 ( sed -e '/## More settings/,$$d' $(objdir)/doc/Muttrc || exit 1 ; \
129 cat debian/extra/rc/Muttrc.foot ) > debian/tmp/Muttrc
131 ( echo "# GnuPG configuration"; \
132 grep '^set' contrib/gpg.rc; \
133 echo ) > debian/tmp/gpg.rc
135 # temporarily call the binary mutt-patched so dh_strip gets the debug file name right
136 install -D $(objdir)-patched/mutt debian/mutt-patched/usr/bin/mutt-patched
140 install -m644 debian/bug/control $(CURDIR)/debian/mutt/usr/share/bug/mutt
141 install debian/bug/script $(CURDIR)/debian/mutt/usr/share/bug/mutt
143 binary binary-arch: install
144 ###################### binary ######################
151 dh_installchangelogs ChangeLog
154 dh_strip --dbg-package=mutt-dbg
155 rm -rf $(CURDIR)/debian/mutt-dbg/usr/share/doc/mutt-dbg \
156 $(CURDIR)/debian/mutt-patched/usr/share/doc/mutt-patched
157 mv debian/mutt-patched/usr/bin/mutt-patched debian/mutt-patched/usr/bin/mutt
160 dh_compress --exclude usr/share/doc/mutt/README.Patches
161 dh_fixperms --exclude usr/bin/mutt_dotlock
168 build-indep binary-indep:
169 @echo "Nothing to do."
172 ###################### clean ######################
181 rm -rf $(objdir) $(objdir)-patched
183 # remove autotool-generated files so they don't show up in the diff.gz
184 rm -f configure config.h.in
185 rm -f Makefile.in contrib/Makefile.in imap/Makefile.in doc/Makefile.in m4/Makefile.in
187 # clean PATCHES hunks (blame quilt refresh)
188 for p in `grep -rl PATCHES debian/patches` ; do perl -wi debian/fix-PATCHES.pl $$p ; done
192 .PHONY: configure build build-arch build-indep clean install binary binary-arch binary-indep patch