#!/usr/bin/make -f include /usr/share/dpkg/pkg-info.mk include /usr/share/debhelper/dh-fortran/fortran-support.mk export FC_OPTIONAL:= export DH_VERBOSE=1 DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) TMPDIR:=$(CURDIR)/debian/tmp LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH) INCDIR:=/usr/include/$(DEB_HOST_MULTIARCH) FMODDIR:=$(shell echo $(call get_fmoddir,$(FC_DEFAULT))) # Test suite requires 4 processors. Fake it export OMPI_MCA_rmaps_base_oversubscribe=1 BUILD_FLAGS = NO_TEST_ARCH:= mips64el DO_TEST:= $(if $(filter $(DEB_TARGET_ARCH), $(NO_TEST_ARCH)), false, true) %: dh $@ --buildsystem=ecbuild override_dh_auto_clean: dh_auto_clean rm -rf debian/build-* override_dh_auto_configure: for f in $(FC_DEFAULT) $(FC_OPTIONAL) ; do \ dh_auto_configure --builddirectory=debian/build-$$f -- \ ${BUILD_FLAGS} -DCMAKE_Fortran_COMPILER=$$f ; done # -DCMAKE_Fortran_FLAGS="$(FLANG_FCFLAGS)" override_dh_auto_test: $(DO_TEST) && ( for f in $(FC_DEFAULT) $(FC_OPTIONAL) ; do \ dh_auto_test --builddirectory=debian/build-$$f ; \ done ) || echo "Ignoring test failures" override_dh_auto_build: for f in $(FC_DEFAULT) $(FC_OPTIONAL) ; do \ dh_auto_build --builddirectory=debian/build-$$f ; done override_dh_auto_install: dh_auto_install --builddirectory=debian/build-$(FC_DEFAULT) # Fixup cmake files. Hack. can we do better with patches to upstream ? sed -i -e 's%$${fckit_INSTALL_PREFIX}/libexec%/usr/bin%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%$${fckit_BASE_DIR}/libexec%/usr/bin%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%${CURDIR}%/build/fckit/%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%/usr/bin/python %/usr/bin/python3 %g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%fckit-fypp.py%fckit-fypp%' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%fckit-eval.sh%fckit-eval%' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%fctest-generate-runner.py%fctest-generate-runner%' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake sed -i -e 's%/usr/lib/cmake%${LIBDIR}/cmake%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-targets.cmake sed -i -e 's%$${_IMPORT_PREFIX}/lib/libfckit%${LIBDIR}/libfckit%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-targets.cmake sed -i -e 's%$${_IMPORT_PREFIX}/include%/usr/include/${DEB_HOST_MULTIARCH}%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-targets.cmake sed -i -e 's%$${_IMPORT_PREFIX}/module%${FMODDIR}%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-targets.cmake sed -i -e 's%python3\.[0-9]*%python3%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-import.cmake # TODO: This will need work when flang is supported sed -i -e 's%libfckit.so.0d%libfckit-${FC_DEFAULT}.so.0d%g' $(TMPDIR)/$(LIBDIR)/cmake/fckit/fckit-targets-release.cmake # rename those with script extensions mv $(TMPDIR)/usr/libexec/fckit-eval.sh $(TMPDIR)/usr/libexec/fckit-eval mv $(TMPDIR)/usr/libexec/fckit-fypp.py $(TMPDIR)/usr/libexec/fckit-fypp mv $(TMPDIR)/usr/libexec/fctest-generate-runner.py $(TMPDIR)/usr/libexec/fctest-generate-runner chmod -x $(TMPDIR)/$(LIBDIR)/cmake/fckit/* mv $(TMPDIR)/$(LIBDIR)/libfckit.so.0d $(TMPDIR)/$(LIBDIR)/libfckit-${FC_DEFAULT}.so.0d rm $(TMPDIR)/$(LIBDIR)/libfckit.so patchelf --set-soname libfckit-gfortran.so.0d $(TMPDIR)/$(LIBDIR)/libfckit-${FC_DEFAULT}.so.0d patchelf --remove-rpath $(TMPDIR)/$(LIBDIR)/libfckit-${FC_DEFAULT}.so.0d dh_link -p libfckit-dev $(LIBDIR)/libfckit-${FC_DEFAULT}.so.0d $(LIBDIR)/fortran/${FC_DEFAULT}/libfckit.so dh_link -p libfckit-dev $(LIBDIR)/libfckit-${FC_DEFAULT}.so.0d $(LIBDIR)/libfckit-${FC_DEFAULT}.so override_dh_dwz: @echo "Override dwz as it breaks on shlibs edited by patchelf"