#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# This file is public domain software, originally written by Joey Hess. 

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

export MODULES ?= mod_console mod_syslog mod_commands mod_conference mod_dptools mod_enum mod_fifo mod_openmrcp mod_amr mod_g711 mod_g722 mod_g723_1 mod_g726 mod_g729 mod_gsm mod_ilbc mod_l16 mod_speex mod_dialplan_directory mod_dialplan_xml mod_dialplan_asterisk mod_dingaling mod_iax mod_portaudio mod_sofia mod_woomera mod_openzap mod_event_multicast mod_event_socket mod_native_file mod_sndfile mod_local_stream mod_spidermonkey mod_spidermonkey_teletone mod_spidermonkey_core_db mod_spidermonkey_odbc mod_xml_rpc mod_xml_curl mod_xml_cdr mod_say_en mod_say_fr mod_say_de
ifndef AUTOCONF
	AUTOCONFS := $(wildcard /usr/bin/autoconf*)
	AUTOCONF = $(shell which autoconf)
ifneq (,$(findstring 2.50,${AUTOCONFS}))
	AUTOCONF = /usr/bin/autoconf2.50
endif
endif

# 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)


FEATURES = --enable-core-libedit-support --enable-core-odbc-support --with-libcurl --with-openssl

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	FEATURES += --disable-optimization
endif

config.status: configure
	dh_testdir
	./configure --prefix=/opt/freeswitch \
		--host=$(DEB_HOST_GNU_TYPE) \
		--build=$(DEB_BUILD_GNU_TYPE) \
		CFLAGS="-D__VIA_HACK__" ${FEATURES}

configure: bootstrap.sh
	AUTOCONF=${AUTOCONF} ./bootstrap.sh

build: build-stamp
build-stamp:  config.status
	dh_testdir

	$(MAKE)

	touch $@

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp 

	-$(MAKE) clean megaclean
ifneq "$(wildcard /usr/share/misc/config.sub)" ""
	cp -f /usr/share/misc/config.sub build/config/config.sub
endif
ifneq "$(wildcard /usr/share/misc/config.guess)" ""
	cp -f /usr/share/misc/config.guess build/config/config.guess
endif
	rm -f config.status
	rm -f */*/config.status
	rm -f */*/*/config.status
	dh_clean

install: build
	dh_testdir
	dh_testroot
	dh_clean -k 
	dh_installdirs

	$(MAKE) DESTDIR=$(CURDIR)/debian/tmp install


# 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
#	dh_installmenu
#	dh_installdebconf	
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installcatalogs
#	dh_installpam
#	dh_installmime
	dh_installinit
#	dh_installcron
#	dh_installinfo
#	dh_undocumented
#	dh_installman
	dh_install --sourcedir=debian/tmp --autodest debian/monit/freeswitch.monitrc
	dh_install --sourcedir=debian/tmp --autodest debian/default/freeswitch
	dh_install --sourcedir=/debian/tmp --autodest debian/man/man1/freeswitch.1
	dh_link --sourcedir=debian/tmp opt/freeswitch/conf etc/opt/freeswitch
	dh_install --sourcedir=debian/tmp
	dh_strip
	dh_compress
	dh_fixperms --exclude /opt/freeswitch/conf
#	dh_perl
#	dh_python
#	dh_makeshlibs
	dh_installdeb
	dh_shlibdeps --exclude=/opt/freeswitch
	dh_gencontrol
	dh_md5sums
	dh_builddeb

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