* Fixed an small leak
[modest] / debian / rules
index 365cb06..2aa12e7 100755 (executable)
 #!/usr/bin/make -f
+# -*- makefile -*-
 
-include /usr/share/cdbs/1/rules/debhelper.mk
-include /usr/share/cdbs/1/class/autotools.mk
-
-make-orig-source: TMPNAME:=$(shell mktemp -d)
-make-orig-source: DATE:=$(shell date --iso)
-make-orig-source: UPSTREAMVER:=0~svn-$(DATE)
-make-orig-source:
-       -make -f debian/rules make-orig-source-internal TMPNAME=$(TMPNAME) DATE=$(DATE) UPSTREAMVER=$(UPSTREAMVER)
-       -rm -rf $(TMPNAME)
-       rm $(CURDIR)/debian/make-orig-source-internal-temp.stamp \
-         || (echo "Making the Debian source package failed, see above" ; \
-             false)
-
-make-orig-source-internal:
-       echo -e "Source: modest\nBuild-Depends: subversion, autoconf, automake1.9, autotools-dev, libtool, gtk-doc-tools (>= 1.0), libglib2.0-dev (>= 2.6), gnome-common, devscripts, fakeroot\n\nPackage: modest\n" | dpkg-checkbuilddeps -
-       svn export . $(TMPNAME)/modest-$(UPSTREAMVER)
-       cd $(TMPNAME)/modest-$(UPSTREAMVER) && NOCONFIGURE=0 ./autogen.sh
-       cd $(TMPNAME) && tar czf modest_$(UPSTREAMVER).orig.tar.gz --exclude modest-$(UPSTREAMVER)/debian modest-$(UPSTREAMVER)
-       cd $(TMPNAME)/modest-$(UPSTREAMVER) && dch -bv $(UPSTREAMVER)-1 "Exported from SVN on $(DATE)"
-       cd $(TMPNAME)/modest-$(UPSTREAMVER) && dpkg-buildpackage -rfakeroot -S -uc -us && \
-       cd $(TMPNAME) && mv *.diff.gz *.dsc *.orig.tar.gz $(CURDIR)/
-       touch $(CURDIR)/debian/make-orig-source-internal-temp.stamp
-
-.PHONY: make-orig-source make-orig-source-internal
+# 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_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
+DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
+
+CFLAGS = -Wall -g
+PACKAGENAME = modest
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+       CFLAGS += -O0
+else
+       CFLAGS += -O2
+endif
+ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
+       INSTALL_PROGRAM += -s
+endif
+
+ifneq (,$(findstring thumb,$(DEB_BUILD_OPTIONS)))
+        CFLAGS += -mthumb
+endif
+
+LAUNCHER = no
+#ifneq (,$(findstring maemo-launcher,$(DEB_BUILD_OPTIONS)))
+#      LAUNCHER = yes
+#endif
+
+ifeq "$(strip $(LAUNCHER))" "yes"
+       LAUNCHER_DEPENDS = -Vlauncher:Depends="maemo-launcher"
+       LAUNCHER_CFLAGS = -shared
+       LAUNCHER_LDFLAGS = -pie -shared -export-dynamic
+       CFLAGS += -fPIC
+endif
+
+
+config.status: configure
+       dh_testdir
+       # commands to configure the package.
+       if [ ! -x configure ]; then ./autogen.sh; fi
+       CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --sysconfdir=/etc --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
+
+configure: configure-stamp
+configure-stamp:
+       dh_testdir
+       ./autogen.sh
+       touch configure-stamp
+
+build: build-stamp
+
+build-stamp:  config.status
+       dh_testdir
+
+        # commands to compile the package.
+       $(MAKE) \
+         MAEMO_LAUNCHER_CFLAGS="$(LAUNCHER_CFLAGS)" \
+         MAEMO_LAUNCHER_LDFLAGS="$(LAUNCHER_LDFLAGS)"
+       touch build-stamp
+
+
+clean:
+       dh_testdir
+       dh_testroot
+       rm -f build-stamp 
+
+# commands to clean up after the build process.
+       -$(MAKE) distclean
+ifneq "$(wildcard /usr/share/misc/config.sub)" ""
+       cp -f /usr/share/misc/config.sub config.sub
+endif
+ifneq "$(wildcard /usr/share/misc/config.guess)" ""
+       cp -f /usr/share/misc/config.guess config.guess
+endif
+       dh_clean 
+
+install: build
+       dh_testdir
+       dh_testroot
+       dh_clean -k 
+       dh_installdirs
+
+# install the package into debian/tmp/
+       $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp
+
+ifeq "$(strip $(LAUNCHER))" "yes"
+       mv $(CURDIR)/debian/tmp/usr/bin/modest \
+       $(CURDIR)/debian/modest/usr/bin/modest.launch
+       ln -s /usr/bin/maemo-invoker \
+       $(CURDIR)/debian/modest/usr/bin/modest
+endif
+
+# ACHTUNG: hack
+# we remove the modest.mo english localization, if the current control file contains a reference
+# to modest-l10n-mr0; thus, the modest package will not conflict with that one.
+# if modest-l10n-mr0 is not there, we'll install our own (en_GB) .mo file.
+       if grep -q modest-l10n-mr0 $(CURDIR)/debian/control ; then rm $(CURDIR)/debian/tmp/usr/share/locale/en_GB/LC_MESSAGES/modest.mo ; else echo "modest.mo not removed."; fi
+
+
+# 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 
+       dh_installdocs
+       dh_installexamples
+       dh_install --sourcedir=debian/tmp -v
+       dh_installmenu
+#      dh_installdebconf       
+#      dh_installlogrotate
+#      dh_installemacsen
+#      dh_installpam
+#      dh_installmime
+#      dh_installinit
+#      dh_installcron
+#      dh_installinfo
+       dh_installman
+       dh_link
+       dh_strip --keep-debug --dbg-package=modest --dbg-package=libmodest-dbus-client
+       dh_compress
+       dh_fixperms
+#      dh_perl
+#      dh_python
+       dh_makeshlibs
+       dh_installdeb
+       dh_shlibdeps
+       dh_gencontrol -- $(LAUNCHER_DEPENDS)
+       dh_md5sums
+       dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install