#!/usr/bin/make -f # Uncomment this to turn on verbose mode. export DH_VERBOSE=1 # FC_OPTIONAL= include /usr/share/debhelper/dh-fortran/fortran-support.mk DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) LIBDIR:=/usr/lib/$(DEB_HOST_MULTIARCH) INCDIR:=/usr/include/$(DEB_HOST_MULTIARCH) DESTDIR:=$(CURDIR)/debian/tmp CMAKE_DIR:=$(DESTDIR)/$(LIBDIR)/cmake BUILDDIR=debian/build BUILDDIR_DEFAULT=$(BUILDDIR)-$(FC_DEFAULT) # Bizarre, but needed for now BUILDFLAGS:= \ -DENABLE_ACC=Off \ -DENABLE_RPATHS=Off \ -DENABLE_RELATIVE_RPATHS=Off \ -DCMAKE_SKIP_INSTALL_RPATH=On # magic debhelper rule %: dh $@ --buildsystem=ecbuild --builddirectory=$(BUILDDIR_DEFAULT) override_dh_auto_clean: dh_auto_clean rm -rf $(BUILDDIR)-* define dh_configure_fortran_TEMPLATE = FCFLAGS_$(1) = $(if $(filter $(1), gfortran), $(FCFLAGS), $(FCFLAGS_FOR_BUILD) ) # Disable OpenMP this build #OMP_FORTRAN_FLAGS_$(1) = $(if $(filter $(1), flang), -fopenmp, ) dh_configure_fortran_$(1): dh_auto_configure --builddirectory=${BUILDDIR}-$(1) -- \ ${BUILDFLAGS} \ -DCMAKE_Fortran_COMPILER=$(1) \ -DCMAKE_Fortran_FLAGS="$(shell dh_fortran get_fc_flags --fc $(1))" endef $(eval $(call foreach_fc_execute_before,configure)) #-DOpenMP_Fortran_FLAGS="$$(OMP_FORTRAN_FLAGS_$(1))" define dh_build_fortran_TEMPLATE = dh_build_fortran_$(1): dh_auto_build --builddirectory=$(BUILDDIR)-$(1) endef $(eval $(call foreach_fc_execute_before,build)) define dh_install_fortran_TEMPLATE = FMODDIR_$(1)=$(call get_fmoddir,$(1)) dh_install_fortran_$(1): dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_dp/*.mod field_api_dp dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_sp/*.mod field_api_sp dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_buffer/*.mod field_api_buffer dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_core/*.mod field_api_core dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_debug/*.mod field_api_debug dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_factory/*.mod field_api_factory dh_fortran_mod -p libfield-api-ecmwf-dev $(BUILDDIR)-$(1)/include/field_api_util/*.mod field_api_util dh_fortran_lib --flavor $(1) $(BUILDDIR)-$(1)/lib/libfield_api_dp.so.0d dh_fortran_lib --flavor $(1) $(BUILDDIR)-$(1)/lib/libfield_api_sp.so.0d endef $(eval $(call foreach_fc_execute_after,install)) override_dh_auto_install: dh_auto_install --builddirectory=$(BUILDDIR_DEFAULT) #dh_link -p libfield-api-ecmwf-dev $(LIBDIR)/fortran/$(FC_DEFAULT)/libfield_api_sp.so.0d #dh_link --flavor gfortran -p libfield-api-ecmwf-dev $(LIBDIR)/fortran/$(FC_DEFAULT)/libfield_api_dp.so.00d override_dh_auto_test: @echo Skip tests this build