#!/usr/bin/make -f

include /usr/share/cdbs/1/rules/debhelper.mk

# Add here any variable or target overrides you need.

EXT=gfortran
PACKAGE=spml
FC=gfortran
MPIFC=/usr/bin/mpif90.openmpi
INCLUDE_FLAGS=-I/usr/include
ARCH=$(shell dpkg --print-architecture)
SYSFFLAGS:=-O2 -fPIC -g -fopenmp
FFLAGS:=
NETCDF:=/usr/lib/libnetcdf.a
NETCDFF:=/usr/lib/libnetcdff.a
NETCDFINC:=/usr/include
GTOOL5:=/usr/lib/gtool5/lib/libgtool5.a
GTOOL5_MPI:=/usr/lib/gtool5-mpi/lib/libgtool5-mpi.a
ISPACK:=/usr/lib/libispack.a
CONF_NETCDF:=--with-netcdf=$(NETCDF) \
	--with-netcdff=$(NETCDFF) \
	--with-netcdf-include=$(NETCDFINC)
CONF_GTOOL5:=--with-gtool5=$(GTOOL5)
CONF_GTOOL5_MPI:=--with-gtool5=$(GTOOL5_MPI)
CONF_ISPACK:=--with-ispack=$(ISPACK)
CONF_LUMATRIX=--with-lapack=/usr/lib/liblapack.a
CONF_FLAGS:= $(CONF_NETCDF) \
	$(CONF_GTOOL5) \
	$(CONF_ISPACK) \
	$(CONF_LUMATRIX)
CONF_FLAGS_MPI:= $(CONF_NETCDF) \
	$(CONF_GTOOL5_MPI) \
	$(CONF_ISPACK) \
	$(CONF_LUMATRIX) \
	--with-mpifc=$(MPIFC)
MANPAGES:=debian/*.1
DEB_INSTALL_MANPAGES_$(PACKAGE) :=$(MANPAGES)

clean::
	-[ -f Config.mk ] && $(MAKE) distclean
	rm -f debian/*.postinst; \
	rm -f debian/*.prerm  ; \
	rm -f debian/*.docs ;\
	rm -f debian/*.links ;\
	rm -f $(MANPAGES)

pre-build::
	(cd ./debian && \
	PACKAGE=$(PACKAGE) EXT=$(EXT) PRIORITY=100 sh ./pre-build.sh)

build/$(PACKAGE)::
	@echo "build non-mpi library"
	FC="$(FC)" SYSFFLAGS="$(SYSFFLAGS)" FFLAGS="$(FFLAGS)" \
	./configure --prefix=/usr/lib/$(PACKAGE) $(CONF_FLAGS)
	$(MAKE) LIBNAME=$(PACKAGE)
	$(MAKE) install \
		DESTDIR=$(CURDIR)/debian/$(PACKAGE) \
		LIBNAME=$(PACKAGE)
	$(MAKE) distclean
	@echo "build mpi library"
	FC="$(MPIFC)" SYSFFLAGS="$(SYSFFLAGS)" FFLAGS="$(FFLAGS)" \
	./configure --prefix=/usr/lib/$(PACKAGE)-mpi $(CONF_FLAGS_MPI)
	$(MAKE) LIBNAME=$(PACKAGE)
	$(MAKE) install \
		DESTDIR=$(CURDIR)/debian/$(PACKAGE) \
		LIBNAME=$(PACKAGE)
	$(MAKE) distclean
	cd $(CURDIR)/debian/$(PACKAGE)/usr/lib/$(PACKAGE)-mpi/bin ; rm spmfrt
	mkdir -p $(CURDIR)/debian/$(PACKAGE)/usr/share/man/man1
	@for f in spmfrt spmconfig ; do \
	  cat debian/$(PACKAGE)/usr/lib/$(PACKAGE)/bin/$$f | \
	      sed -e s/^#//g | /usr/bin/ruby1.8 /usr/bin/rd2 -r rd/rd2man-lib > debian/$$f-$(EXT).1 ;\
	done
	cat debian/$(PACKAGE)/usr/lib/$(PACKAGE)-mpi/bin/mpispmfrt | \
	    sed -e s/^#//g | /usr/bin/ruby1.8 /usr/bin/rd2 -r rd/rd2man-lib > debian/mpispmfrt-$(EXT).1
	cat debian/$(PACKAGE)/usr/lib/$(PACKAGE)-mpi/bin/spmconfig | \
	    sed -e s/^#//g | /usr/bin/ruby1.8 /usr/bin/rd2 -r rd/rd2man-lib > debian/mpispmconfig-$(EXT).1
