#!/usr/bin/make -f

# export DH_VERBOSE=1

# See http://wiki.debian.org/Hardening#Notes_for_packages_using_CMake
CFLAGS   := $(CFLAGS) $(CPPFLAGS)
CXXFLAGS := $(CXXFLAGS) $(CPPFLAGS)

# The build system links all four libraries against all dependencies.
LDFLAGS  += -Wl,--as-needed

export DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)

ifeq ($(DEB_BUILD_ARCH),alpha)
export TESTS_IEEE_FPU_OPTION = -mieee -mfp-rounding-mode=d
endif

%:
	dh $@

override_dh_auto_configure:
	mkdir -p static
	cd static && QTDIR= cmake .. \
	  -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release \
	  -DWITH_GMPXX=ON -DWITH_CGAL_Qt3=OFF -DWITH_demos=OFF -DWITH_examples=OFF \
	  -DCGAL_ENABLE_PRECONFIG=OFF -DBUILD_SHARED_LIBS=FALSE \
	  -DCGAL_INSTALL_LIB_DIR=lib/$(DEB_HOST_MULTIARCH) \
	  -DCGAL_INSTALL_CMAKE_DIR=lib/$(DEB_HOST_MULTIARCH)/cmake/CGAL
	mkdir -p shared
	cd shared && QTDIR= cmake .. \
	  -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release \
	  -DWITH_GMPXX=ON -DWITH_CGAL_Qt3=OFF -DWITH_demos=OFF -DWITH_examples=OFF \
	  -DCGAL_ENABLE_PRECONFIG=OFF -DBUILD_SHARED_LIBS=TRUE -DCMAKE_SKIP_RPATH=TRUE \
	  -DCGAL_INSTALL_LIB_DIR=lib/$(DEB_HOST_MULTIARCH) \
	  -DCGAL_INSTALL_CMAKE_DIR=lib/$(DEB_HOST_MULTIARCH)/cmake/CGAL
	mkdir -p shared/demo/CGAL_ipelets
	cd shared/demo/CGAL_ipelets && QTDIR= cmake ../../../demo/CGAL_ipelets \
	  -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release \
	  -DCGAL_DIR=$(CURDIR)/shared   

override_dh_auto_build:
	$(MAKE) -C static
	$(MAKE) -C shared
	$(MAKE) -C shared/demo/CGAL_ipelets

override_dh_auto_test:
ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS)))
	$(MAKE) -C debian/tests rounding_modes_simple
	debian/tests/rounding_modes_simple
	$(MAKE) -C debian/tests rounding_math_simple
	debian/tests/rounding_math_simple
	$(MAKE) -C debian/tests rounding_modes_cgal
	LD_LIBRARY_PATH=shared/lib debian/tests/rounding_modes_cgal
	$(MAKE) -C debian/tests rounding_math_cgal
	LD_LIBRARY_PATH=shared/lib debian/tests/rounding_math_cgal
endif

override_dh_auto_clean:
	dh_auto_clean
	rm -fr shared static
	$(MAKE) -C debian/tests clean

override_dh_install:
	$(MAKE) -C static DESTDIR=$(CURDIR)/debian/tmp install
	$(MAKE) -C shared DESTDIR=$(CURDIR)/debian/tmp install
	$(MAKE) -C shared/demo/CGAL_ipelets DESTDIR=$(CURDIR)/debian/tmp install
	mkdir -p debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/CGAL
	mv debian/tmp/usr/include/CGAL/compiler_config.h debian/tmp/usr/include/$(DEB_HOST_MULTIARCH)/CGAL

	# Do not install architecture-dependent FindCGAL.cmake anymore, apparently
	# not really needed.
	# mkdir -p debian/tmp/usr/share/cmake-2.8/Modules
	# cp cmake/modules/FindCGAL.cmake debian/tmp/usr/share/cmake-2.8/Modules

	mv debian/tmp/usr/share/doc/CGAL-`cat VERSION` debian/tmp/usr/share/doc/cgal
	mv debian/tmp/usr/share/doc/cgal/CHANGES debian/tmp/usr/share/doc/cgal/changelog
	rm debian/tmp/usr/share/doc/cgal/LICENSE*
	rm debian/tmp/usr/share/doc/cgal/AUTHORS

	chmod -R u=rwX,g=rX,o=rX demo examples
	tar cf - demo | gzip --no-name --best >debian/tmp/usr/share/doc/cgal/demo.tar.gz
	tar cf - examples | gzip --no-name --best >debian/tmp/usr/share/doc/cgal/examples.tar.gz

	rm debian/tmp/usr/bin/cgal_make_macosx_app

	dh_install --sourcedir=debian/tmp --list-missing

	mkdir -p  debian/libcgal-qt4-dev/usr/include/CGAL
	mv debian/libcgal-dev/usr/include/CGAL/Qt debian/libcgal-qt4-dev/usr/include/CGAL

	mkdir -p debian/libcgal-qt4-11/usr/share/doc
	ln -s libcgal11 debian/libcgal-qt4-11/usr/share/doc/libcgal-qt4-11
	mkdir -p debian/libcgal-dev/usr/share/doc
	ln -s libcgal11 debian/libcgal-dev/usr/share/doc/libcgal-dev
	mkdir -p debian/libcgal-qt4-dev/usr/share/doc
	ln -s libcgal11 debian/libcgal-qt4-dev/usr/share/doc/libcgal-qt4-dev
	mkdir -p debian/libcgal-demo/usr/share/doc
	ln -s libcgal11 debian/libcgal-demo/usr/share/doc/libcgal-demo
	mkdir -p debian/libcgal-ipelets/usr/share/doc
	ln -s libcgal11 debian/libcgal-ipelets/usr/share/doc/libcgal-ipelets

override_dh_installdocs:
	dh_installdocs -plibcgal11 debian/copyright

override_dh_installchangelogs:
	dh_installchangelogs -plibcgal11

override_dh_gencontrol:
	dh_gencontrol -- -VIpe-Version=`dpkg-awk 'Package:^ipe$$' -- Version | grep Version | sed 's/Version: //;s/-[^-]*$$//'`
