#!/usr/bin/make -f
# Sample debian/rules that uses debhelper. 
# GNU copyright 1997 by Joey Hess.
#
# This version is for a hypothetical package that builds an
# architecture-dependant package, as well as an architecture-independent
# package.

# Uncomment this to turn on verbose mode. 
#export DH_VERBOSE=0

# This is the debhelper compatability version to use, for local overrides.
#export DH_COMPAT=4

# This has to be exported to make some magic below work.
export DH_OPTIONS

CFLAGS = -Wall -g
INSTALL = install
INSTALL_FILE    = $(INSTALL) -p    -o root -g root  -m  644
INSTALL_PROGRAM = $(INSTALL) -p    -o root -g root  -m  755
INSTALL_SCRIPT  = $(INSTALL) -p    -o root -g root  -m  755
INSTALL_DIR     = $(INSTALL) -p -d -o root -g root  -m  755

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
CFLAGS += -O0
else
CFLAGS += -O2
endif
ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
INSTALL_PROGRAM += -s
endif

export DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
# FOR AUTOCONF 2.52 AND NEWER ONLY
ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
  confflags += --build $(DEB_HOST_GNU_TYPE)
else
  confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
endif
# FOR AUTOCONF 2.13 ONLY
#ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE))
#  confflags += $(DEB_HOST_GNU_TYPE)
#else
#  confflags += --host $(DEB_BUILD_GNU_TYPE) --build $(DEB_HOST_GNU_TYPE)
#endif

build: build-stamp
build-stamp:
	dh_testdir
	#RESTORE LINKS
	#[ -f debian/build_links ] && xargs <debian/build_links -r -n 2  ln -bs && rm debian/build_links
	# avoid time skews
	touch configure.ac && 	touch aclocal.m4 && 	touch configure
	touch config.h.in  */Makefile.in Makefile.in
	#
	./configure $(confflags) --prefix=/usr --mandir=/usr/share/man \
		--infodir=/usr/share/info --disable-rpath \
		--with-xmorph --with-gtkmorph --with-gtk=2 \
		 --with-waili --without-fftw
	# Add here commands to compile the package.
	$(MAKE)  CFLAGS="$(CFLAGS)"
	#
	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp 

	# Add here commands to clean up after the build process.
	[ ! -f Makefile ] || $(MAKE) distclean
	#DELETE LINKS: save and delete sym links
	#find -type l -printf '%l\t%p\n' >> debian/build_links
	#find -type l | xargs -r rm 
	dh_clean

update_libtool:
	#this breaks the compilation sometimes
	-test -r /usr/share/misc/config.sub && \
	   cp -vf /usr/share/misc/config.sub config.sub
	-test -r /usr/share/misc/config.guess && \
	   cp -vf /usr/share/misc/config.guess config.guess

update_autostuff :
	libtoolize -f
	gettextize -f
	automake --add-missing
	#PROBLEM HERE aclocal forgets about gtk 2.0 macros
	aclocal 
	autoconf

install: DH_OPTIONS=
install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs
	# Add here commands to install the package into debian/tmp.
	$(MAKE) install DESTDIR=`pwd`/debian/tmp
	dh_movefiles
	dh_link -pxmorph usr/share/man/man1/xmorph.1 usr/share/man/man1/morph.1
	dh_link -pgtkmorph usr/share/xmorph/pixmaps usr/share/gtkmorph/pixmaps
	dh_link -pgtkmorph-example usr/share/xmorph/example usr/share/gtkmorph/example
	dh_link -pgtkmorph-example usr/share/xmorph/example usr/share/doc/gtkmorph-example/examples
	dh_link -pgtkmorph-example usr/share/xmorph/example usr/share/doc/gtkmorph/examples


# Build architecture-independent files here.
# Pass -i to all debhelper commands in this target to reduce clutter.
binary-indep: DH_OPTIONS=-i
binary-indep: build install
	dh_testdir
	dh_testroot
#	dh_installdebconf
	dh_installdocs
#nope! it was getting installed twice!
#	#dh_installexamples -pgtkmorph-example example
	dh_installmenu
#	dh_installemacsen
#	dh_installpam
#	dh_installinit
	dh_installcron
#	dh_installmanpages
#is done by postinst	
#	dh_undocumented
#	dh_installinfo
	dh_installchangelogs
	#ChangeLog
	dh_link
	dh_compress
	dh_fixperms
	dh_installdeb
#	dh_perl
	dh_gencontrol
	dh_md5sums
	dh_builddeb

# Build architecture-dependent files here.
# Pass -a to all debhelper commands in this target to reduce clutter.
binary-arch: DH_OPTIONS=-a
binary-arch: build install
	dh_testdir
	dh_testroot
#	dh_installdebconf
	dh_installdocs
#	dh_installexamples
	dh_installmenu
#	dh_installemacsen
#	dh_installpam
#	dh_installinit
#	dh_installcron
#	dh_installmanpages
# is done correctly in my postinst
#	dh_installinfo
#	dh_undocumented
	dh_installchangelogs 
	#ChangeLog
	dh_strip
	dh_link
	dh_compress
	dh_fixperms
	dh_makeshlibs
	dh_installdeb
#	dh_perl
	dh_shlibdeps -ldebian/libmorph/usr/lib
	dh_gencontrol
	dh_md5sums
	dh_builddeb

binary:  binary-arch binary-indep
.PHONY: build clean binary-indep binary-arch binary install
