#!/usr/bin/make -f

export DEB_LDFLAGS_MAINT_PREPEND := -Wl,-z,defs -Wl,--as-needed

DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
LIBDIR=/usr/lib/$(DEB_HOST_MULTIARCH)
BUILDDIR=$(CURDIR)/debian/build

# For hardening
CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS) #  -fPIC
CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)

export LDFLAGS CFLAGS CXXFLAGS

%:
	dh $@ --buildsystem=cmake --with=python2 --builddirectory=$(BUILDDIR)

override_dh_auto_configure:
	# Disable python modules until we figure out how to build them properly
	F77=gfortran dh_auto_configure -- \
	    -DCMAKE_BUILD_TYPE=Release \
	    -DDISABLE_OS_CHECK=ON \
	    -DENABLE_PNG=ON -DENABLE_PYTHON=ON \
	    -DENABLE_AEC=ON \
	    -DENABLE_RPATHS=OFF \
	    -DHAVE_BIT_REPRODUCIBLE=ON \
	    -DCFLAGS="${CFLAGS} ${LDFLAGS}" \
	    -DENABLE_ALIGN_MEMORY=ON -DENABLE_GRIB_TIMER=ON \
		-DENABLE_GRIB_THREADS=ON 
#	    -DENABLE_MEMORY_MANAGEMENT=ON \

override_dh_auto_test:
	        LD_LIBRARY_PATH=$(CURDIR)/debian/build/lib dh_auto_test 

override_dh_install:
	for d in libgrib_api_f77.so  libgrib_api_f90.so	libgrib_api.so ; do \
		mv debian/tmp/usr/lib/$$d.0 debian/tmp/usr/lib/$$d.0.0.0 ; done
	dh_numpy
	# Make properly visible
	mv debian/tmp/usr/lib/python2.7/site-packages/grib_api debian/tmp/usr/lib/python2.7/site-packages/gribapi
	mv debian/tmp/usr/lib/python2.7/site-packages/gribapi/gribapi.py debian/tmp/usr/lib/python2.7/site-packages/gribapi/__init__.py
	dh_install
	# Setup cmake files for magics++, metview, etc.
	mkdir -p debian/libgrib-api-dev/$(LIBDIR)/cmake/grib_api
	cp debian/tmp/usr/share/grib_api/cmake/* debian/libgrib-api-dev/$(LIBDIR)/cmake/grib_api
	sed -e 's%$${_IMPORT_PREFIX}%/usr%' \
	       < debian/tmp/usr/share/grib_api//cmake/grib_api-targets-release.cmake \
              > debian/libgrib-api-dev/$(LIBDIR)/cmake/grib_api/grib_api-targets-release.cmake

override_dh_auto_clean:
	dh_auto_clean
	# Things that upstream leaves behind
	rm -f python/gribapi.pyc
	rm -f tests/bitmap.rules tests/out.grib1 tests/out.grib2 tests/out.gribidx \
	      tests/rules tests/simple_ieee_test.grib1.txt tests/statistics.filter \
	      tests/statistics.out tests/x.grib \
	      data/change_scanning_rotated_ll.filter examples/F90/index.idx

override_dh_fixperms:
	dh_fixperms
	test -e /usr/bin/dh_buildinfo && dh_buildinfo
