#!/usr/bin/make -f

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

# magic debhelper rule
%:
	dh $@ --buildsystem=cmake

include /usr/share/dpkg/architecture.mk

ifeq ($(shell dpkg-architecture -qDEB_TARGET_ARCH_BITS), 64)
    FPZIP:= -DSILO_ENABLE_FPZIP=1
else
    FPZIP:= -DSILO_ENABLE_FPZIP=0
endif

# export CONFIG_SHELL=/bin/sh

PY3VERS:= $(shell py3versions -s)
PYABI:=$(shell python3  -c "import sysconfig; print(sysconfig.get_config_var('SOABI'))")
LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH)

DO_MPI=$(shell  pkg-config --exists hdf5-mpi 2> /dev/null; echo $$?)
ifeq ($(DO_MPI),0)
	HDF5_INC:=$(shell pkg-config --cflags hdf5-mpi) 
	HDF5_LIB:=$(shell pkg-config --libs hdf5-mpi) 
else
	HDF5_INC:=$(shell pkg-config --cflags hdf5-serial ) 
	HDF5_LIB:=$(shell pkg-config --libs hdf5-mpi ) 
endif

override_dh_auto_configure:
	dh_auto_configure -- \
		-DCMAKE_SKIP_RPATH=On \
		-DSILO_ENABLE_HDF5=On  \
		-DSILO_ENABLE_SILEX=On \
		-DSILO_ENABLE_INSTALL_LITE_HEADERS=On \
		-DSILO_ENABLE_PYTHON_MODULE=On \
		$(FPZIP) \
		-DCMAKE_C_FLAGS="$(CFLAGS) $(HDF5_INC) -fPIC " \
		-DCMAKE_CXX_FLAGSS="$(CXXFLAGS) -$(HDF5_INC) -fPIC " \
		LDFLAGS="$(LDFLAGS) -L$(HDF5_LIB) " 



# TODO:
# Adapt to build multiple python versions when 3.15 comes out

# Iterate over some directories to avoid stepping into tools/silex, which doesn't build.
# override_dh_auto_build:
	#for d in src tools/browser tools/silock ; do \
	#	$(MAKE) -C $$d CC=$(CC) CXX=$(CXX) ; done
	#$(MAKE) -C tools/silex CXX=$(CXX) QT_MOC=moc QT_LIBS="$(QT_LIBS)" 
	#set -e ; for p in $(PY3VERS) ; do   \
	#	echo "Build python interface for $$p" ; \
	#	$(MAKE) -C tools/python clean all check CXX=$(CXX) PYTHON_CPPFLAGS="-I/usr/include/$$p" ; \
	#	mkdir -p  debian/tmp/usr/lib/pyshared/$$p ;  \
	#	cp tools/python/.libs/Silo.so debian/Silo.so.$$p  ; \
	#done


execute_before_dh_install:
	# move the python modules to where dh_python* will spot them ...
	mkdir -p  debian/tmp/usr/lib/python3/dist-packages
	mv debian/tmp/$(LIBDIR)/Silo.so debian/tmp/usr/lib/python3/dist-packages/Silo.$(PYABI).so
	mv debian/tmp/usr/bin/s2ex.py debian/tmp/usr/bin/s2ex
