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

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

# Enable all hardening options
export DEB_BUILD_MAINT_OPTIONS=hardening=+all

#http://wiki.debian.org/Hardening#Notes_for_packages_using_CMake
CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)

DEB_TARGET_ARCH ?= $(shell dpkg-architecture -qDEB_TARGET_ARCH)
DEFAULT_BUILD_DIRECTORY = obj-$(shell dpkg-architecture -q DEB_HOST_GNU_TYPE)

# Do not enable Qt on armel and armhf.
# libqt5opengl uses OpenGL ES on armel+armhf,
# simgear/flightgear use full OpenGL on all
# architectures, and the two can't be mixed.
# See https://bugs.debian.org/895332
ifneq (,$(findstring $(DEB_HOST_ARCH),armel armhf))
  ENABLE_QT = OFF
else
  ENABLE_QT = ON
endif

# Take care of excess precision of the x87 FPU.
# See https://bugs.debian.org/963200
ifneq (,$(filter $(DEB_HOST_ARCH), i386))
	export DEB_CXXFLAGS_MAINT_APPEND += -ffloat-store
endif

CMAKE_FLAGS = \
	-DCMAKE_BUILD_TYPE="RelWithDebInfo" \
	-DCMAKE_C_FLAGS="$(CFLAGS)" \
	-DCMAKE_CXX_FLAGS="$(CXXFLAGS)" \
	-DCMAKE_CXX_FLAGS_RELWITHDEBINFO="-g -DNDEBUG" \
	-DCMAKE_SHARED_LINKER_FLAGS="$(LDFLAGS)" \
	-DCMAKE_VERBOSE_MAKEFILE=ON \
	-DCMAKE_INSTALL_PREFIX:PATH=/usr \
	-DCMAKE_INSTALL_BINDIR:PATH=games \
	-DFG_DATA_DIR:PATH=/usr/share/games/flightgear \
	-DENABLE_LARCSIM=ON \
	-DENABLE_UIUC_MODEL=ON \
	-DENABLE_QT=$(ENABLE_QT) \
	-DSP_FDMS=ON \
	-DSYSTEM_SQLITE=ON \
	-DSYSTEM_SPEEX=ON

%:
	dh $@ --buildsystem=cmake

override_dh_auto_configure:
	dh_auto_configure -- $(CMAKE_FLAGS)

override_dh_installdocs:
	dh_installdocs
	cp docs-mini/* debian/flightgear/usr/share/doc/flightgear || true
	cp utils/TerraSync/README.txt debian/flightgear/usr/share/doc/flightgear/README.TerraSync
	rm $(CURDIR)/debian/flightgear/usr/share/doc/flightgear/README.Cygwin
	rm $(CURDIR)/debian/flightgear/usr/share/doc/flightgear/README.IRIX
	rm $(CURDIR)/debian/flightgear/usr/share/doc/flightgear/README.MacOS

#	Drop README.Linux, it's outdated to the point of uselessness.
	rm $(CURDIR)/debian/flightgear/usr/share/doc/flightgear/README.Linux

override_dh_installchangelogs:
	dh_installchangelogs ChangeLog

override_dh_strip:
	dh_strip --dbgsym-migration='flightgear-dbg (<<  1:2016.2.1+dfsg-6~)'

override_dh_auto_test:
	cd $(DEFAULT_BUILD_DIRECTORY) && make fgfs_test_suite
	dh_auto_test --no-parallel

copyright_check:
	${MAKE} -f /usr/share/cdbs/1/rules/utils.mk debian/stamp-copyright-check
	rm debian/stamp-copyright-check