#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
PACKAGE = ganglia

# 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 = `dpkg-buildflags --get CFLAGS`
CFLAGS += -Wall
LDFLAGS = `dpkg-buildflags --get LDFLAGS`
CPPFLAGS = `dpkg-buildflags --get CPPFLAGS`

ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
	INSTALL_PROGRAM += -s
endif


autoreconf:
	autoreconf --force --install
	cd libmetrics && autoreconf --force --install

config.status: configure
	dh_testdir
	# Just in case, make sure changelog exists
	touch ChangeLog
	# Add here commands to configure the package.
	# Intermittent errors about missing Tpo files appear during
	# the build, many people have suggested running autoreconf
	# before a build can avert that:
	dh_autoreconf debian/rules -- autoreconf
	#chmod +x configure libmetrics/configure
	./configure CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
		--prefix=/usr --mandir=\$${prefix}/share/man \
		--libdir=\$${prefix}/lib \
		--sysconfdir=/etc/ganglia \
		--infodir=\$${prefix}/share/info --enable-shared \
		--with-gmetad
build build-arch build-indep: build-stamp

build-stamp:  config.status
	dh_testdir

	# Add here commands to compile the package.
	$(MAKE)
	#/usr/bin/docbook-to-man debian/ganglia.sgml > ganglia.1

	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
#	-rm -f dotconf-1.0.9/conftest.o
#	-rm -f dotconf-1.0.9/conftest
	-rm -f libtool.old \
		ganglia-config contrib/ganglia_gmond.xml gmetad/gmetad.conf \
		gmond/gmond.solaris.init gmond/modules/conf.d/modpython.conf solaris/pkginfo
	#debconf-updatepo
	dh_autoreconf_clean
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k
	dh_installdirs

	# Add here commands to install the package into debian/ganglia.
	$(MAKE) install DESTDIR=$(CURDIR)/debian/tmp/

	# Empty out the dependency field in our .la files
	for file in $(CURDIR)/debian/tmp/usr/lib/*.la; do \
		sed -i "/dependency_libs/ s/'.*'/''/" $$file ; \
        done

	# Seed the package directories
	dh_install --sourcedir=debian/tmp

	# Install the python modules
	mkdir -p debian/ganglia-monitor-python/etc/ganglia/conf.d/
	mkdir -p debian/ganglia-monitor-python/usr/lib/ganglia/python_modules/
	cp debian/modpython.conf debian/ganglia-monitor-python/etc/ganglia/conf.d/
	cp gmond/python_modules/*/*.pyconf* \
		debian/ganglia-monitor-python/etc/ganglia/conf.d/
	cp gmond/python_modules/*/*.py \
		debian/ganglia-monitor-python/usr/lib/ganglia/python_modules/

# Build architecture-independent files here.
binary-indep: build install
# We have nothing to do by default.
	dh_testdir
	dh_testroot
	dh_installchangelogs
	dh_installdocs -i
	dh_fixperms -i
	dh_compress -i
	dh_installdebconf -i
	dh_installdeb -i
	dh_shlibdeps -i
	dh_gencontrol -i
	dh_md5sums -i
	dh_builddeb -i


# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir
	dh_testroot
#	dh_installdebconf
	dh_installdocs -pganglia-monitor -Xlibganglia
	dh_installdocs -plibganglia1-dev
	dh_installdocs -plibganglia1
	dh_installdocs -pgmetad
	cp $(CURDIR)/gmetad/gmetad.conf $(CURDIR)/debian/gmetad/etc/ganglia
	cp $(CURDIR)/debian/gmond.conf $(CURDIR)/debian/ganglia-monitor/etc/ganglia
	dh_installexamples
	dh_installmenu -s
	dh_installinit -s
	dh_installcron -s
	dh_installman -pganglia-monitor
	dh_installman -plibganglia1-dev
	dh_installman -pgmetad
	dh_installinfo -s
	dh_installchangelogs -s
	dh_link -s
	dh_strip -s
	dh_compress -s
	dh_fixperms -s
	dh_makeshlibs -s
	dh_installdeb -s
	dh_shlibdeps -s
	dh_gencontrol -s
	dh_md5sums -s
	dh_builddeb -s

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