#!/usr/bin/make -f

export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk

export DEB_HOST_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)

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

# We copy around a number of things in case we're linux:
BUILD_OS=$(shell dpkg-architecture -qDEB_BUILD_ARCH_OS)

export PROC := $(shell dpkg-architecture -qDEB_BUILD_GNU_CPU)

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

DEBVERSION := $(shell head -n 1 debian/changelog \
		    | sed -e 's/^[^(]*(\([^)]*\)).*/\1/')
UPVERSION := $(shell echo $(DEBVERSION) | sed 's/~dfsg-.//')

FILENAME := ircd-irc2_$(UPVERSION)~dfsg.orig.tar.gz
UPFILENAME := ircd-irc2_$(UPVERSION).orig.tar.gz
URL := http://ftp.irc.org/ftp/irc/server/irc$(UPVERSION).tgz

%:
	dh "$@"

override_dh_auto_configure:
	mkdir builddir
	cp debian/maint/config.h builddir
	cp support/configure builddir
	cd builddir;./configure \
		CFLAGS="$(CFLAGS) $(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" \
		--build=$(DEB_BUILD_GNU_TYPE) \
		--host=$(DEB_HOST_GNU_TYPE) \
		--bindir=/usr/bin \
		--datadir=/usr/share \
		--infodir=\$${prefix}/share/info \
		--localstatedir=/var \
		--with-rundir=/var/run/ircd \
		--mandir=\$${prefix}/share/man \
		--prefix=/usr \
		--sbindir=/usr/sbin \
		--sysconfdir=/etc/ircd \
		--with-logdir=/var/log/ircd \
		--with-zlib \
		--enable-ipv6

override_dh_auto_build:
	$(MAKE) -C builddir all

override_dh_clean:
	-rm -rf builddir
	-rm -f $(shell support/config.guess)
	dh_clean
	
override_dh_install:
	ln -sf builddir $(shell support/config.guess)
	cd builddir;../ircd/buildm4 ircd.m4
	dh_install
	# ircd-package
	cp builddir/chkconf debian/ircd-irc2/usr/sbin
	cp builddir/iauth debian/ircd-irc2/usr/sbin
	cp builddir/ircd debian/ircd-irc2/usr/sbin
	cp builddir/ircd-mkpasswd debian/ircd-irc2/usr/sbin 
	cp builddir/ircdwatch debian/ircd-irc2/usr/sbin

override_dh_installexamples:
	dh_installexamples
	# convert example config to % since we're IPv6 now
	sed -i -e '/^[^#]:/s,:,\%,g' debian/ircd-irc2/usr/share/doc/ircd-irc2/ircd.conf.example

override_dh_installinfo:
	dh_installinfo
	# synthesize dircategory and direntry
	mkdir -p debian/ircd-irc2/usr/share/info/
	cat debian/ircd-irc2.info-dir-entry doc/INSTALL.info >debian/ircd-irc2/usr/share/info/ircd-irc2.info

override_dh_fixperms:
	dh_fixperms
	# fix permissions of var/log/ircd
	chown irc:irc debian/ircd-irc2/var/log/ircd
	chmod -R 0755 debian/ircd-irc2/var/log/ircd