#!/usr/bin/make -f
# -*- makefile -*- made with the aid of dh_make, by Craig Small
# 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-independant
# package.

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

CONFIGURE_FLAGS := --prefix=/usr --sysconfdir=/etc --enable-debug --mandir=/usr/share/man --enable-shared 

LIBFLTK         := libfltk-utf8
LIBFLTK_DEV     := libfltk-utf8-dev
SHARED_LIB      := libfltk-utf8.so.1.1
SONAME_LIB      := libfltk-utf8.so.1.1
STATIC_LIB	:= libfltk-utf8.a
SHARED_IMG_LIB  := libfltk-utf8_images.so.1.1
SONAME_IMG_LIB  := libfltk-utf8_images.so.1.1
STATIC_IMG_LIB	:= libfltk-utf8_images.a
STATIC_GL_LIB	:= libfltk-utf8_gl.a
SHARED_GL_LIB  := libfltk-utf8_gl.so.1.1
SONAME_GL_LIB  := libfltk-utf8_gl.so.1.1

LIBFLTK_TMP     := $(shell pwd)/debian/tmp
LIBFLTK_DEV_TMP := $(shell pwd)/debian/$(LIBFLTK_DEV)

BINDIR          := usr/bin
DOCDIR          := usr/share/doc
INCDIR          := usr/include
LIBDIR          := usr/lib
MANDIR          := usr/share/man

INSTALL_R_FILE  := install -p -m 644 -o root -g root
INSTALL_X_FILE  := install -p -m 755 -o root -g root
INSTALL_DIR     := install -p -m 755 -o root -g root -d

build: build-stamp
build-stamp: configure
	dh_testdir
	./configure $(CONFIGURE_FLAGS)
	$(MAKE) -C src
	$(MAKE) -C fluid
	touch $@

configure: configure.in
	autoconf

clean:
	dh_testdir
	test ! -d $(LIBFLTK_TMP) || test -O $(LIBFLTK_TMP) || dh_testroot

	-$(MAKE) distclean
	rm -f *-stamp lib/libfltk-utf8* src/libfltk-utf8.* config.h config.status config.cache
	dh_clean

# Build architecture-independent files here.
binary-indep: 

binary-arch: build
#	dh_testversion
	dh_testdir -a
	dh_testroot -a
	dh_clean -a -k

	$(INSTALL_DIR)      $(LIBFLTK_TMP)/$(LIBDIR)
	$(INSTALL_DIR)      $(LIBFLTK_TMP)/$(DOCDIR)/$(LIBFLTK)
	$(INSTALL_R_FILE)   src/$(SHARED_LIB) $(LIBFLTK_TMP)/$(LIBDIR)
#	ln -nsf             $(SHARED_LIB) $(LIBFLTK_TMP)/$(LIBDIR)/$(SONAME_LIB)
	$(INSTALL_R_FILE)   src/$(SHARED_IMG_LIB) $(LIBFLTK_TMP)/$(LIBDIR)
	$(INSTALL_R_FILE)   src/$(SHARED_GL_LIB) $(LIBFLTK_TMP)/$(LIBDIR)
#	ln -nsf             $(SHARED_IMG_LIB) $(LIBFLTK_TMP)/$(LIBDIR)/$(SONAME_IMG_LIB)
	$(INSTALL_R_FILE)   debian/copyright $(LIBFLTK_TMP)/$(DOCDIR)/$(LIBFLTK)/copyright
	$(INSTALL_R_FILE)   debian/changelog $(LIBFLTK_TMP)/$(DOCDIR)/$(LIBFLTK)/changelog.Debian

	$(INSTALL_DIR)      $(LIBFLTK_DEV_TMP)/$(LIBDIR)
	$(INSTALL_DIR)      $(LIBFLTK_DEV_TMP)/$(BINDIR)
	$(INSTALL_DIR)      $(LIBFLTK_DEV_TMP)/$(INCDIR)/FL
	$(INSTALL_DIR)      $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)

	ln -nsf $(LIBFLTK)  $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK_DEV)
	cp -r documentation $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/documentation
	chown -R root.root  $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/documentation
	chmod    644        $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/documentation/*
	cp -r test          $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/examples
	chown -R root.root  $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/examples
	chmod    644        $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/examples/*

	$(INSTALL_R_FILE)   lib/$(STATIC_LIB) $(LIBFLTK_DEV_TMP)/$(LIBDIR)
	ln -nsf             $(SHARED_LIB) $(LIBFLTK_DEV_TMP)/$(LIBDIR)/libfltk-utf8.so
	$(INSTALL_R_FILE)   lib/$(STATIC_IMG_LIB) $(LIBFLTK_DEV_TMP)/$(LIBDIR)
	$(INSTALL_R_FILE)   lib/$(STATIC_GL_LIB) $(LIBFLTK_DEV_TMP)/$(LIBDIR)
	ln -nsf             $(SHARED_IMG_LIB) $(LIBFLTK_DEV_TMP)/$(LIBDIR)/libfltk-utf8_images.so
	ln -nsf             $(SHARED_GL_LIB) $(LIBFLTK_DEV_TMP)/$(LIBDIR)/libfltk-utf8_gl.so
	-cp -r FL/*.h FL/*.H $(LIBFLTK_DEV_TMP)/$(INCDIR)/FL
	ln -nfs FL $(LIBFLTK_DEV_TMP)/$(INCDIR)/Fl
	( cd $(LIBFLTK_DEV_TMP)/$(INCDIR)/FL && \
          for file in *.H; do \
	    ln -nfs $$file $$(basename $$file .H).h ; \
          done \
	) 
	chown -R root.root  $(LIBFLTK_DEV_TMP)/$(INCDIR)
	chmod    644        $(LIBFLTK_DEV_TMP)/$(INCDIR)/FL/*
	chmod    755        $(LIBFLTK_DEV_TMP)/$(INCDIR)
	chmod    755        $(LIBFLTK_DEV_TMP)/$(INCDIR)/FL
	$(INSTALL_X_FILE)   fluid/fluid   $(LIBFLTK_DEV_TMP)/$(BINDIR)/fluid
	$(INSTALL_X_FILE)   fltk-config   $(LIBFLTK_DEV_TMP)/$(BINDIR)/fltk-config

	cp makeinclude $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/examples/
	sed -e 's!\.\./makeinclude!makeinclude!g' \
	    -e 's!\.\./src/make_timestamp!!g' \
	    test/Makefile > \
	    $(LIBFLTK_DEV_TMP)/$(DOCDIR)/$(LIBFLTK)/examples/Makefile

	$(INSTALL_DIR) $(LIBFLTK_DEV_TMP)/$(MANDIR)/man1
	$(INSTALL_R_FILE) \
		documentation/fluid.man \
		$(LIBFLTK_DEV_TMP)/$(MANDIR)/man1/fluid.1

	dh_installmenu -plibfltk-utf8-dev
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
	dh_installdeb -a
	LD_LIBRARY_PATH=$(LIBFLTK_TMP)/$(LIBDIR) dh_shlibdeps -a
	dh_gencontrol -u-isp
	dh_md5sums -a
	dh_builddeb -a

source diff:
	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false

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