#!/usr/bin/make -f ARCHITECTURE := $(shell dpkg-architecture -qDEB_HOST_ARCH_CPU) DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) CFLAGS = -Wall -g ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS += -O0 else CFLAGS += -O2 endif CONFFLAGS := --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --enable-shared --enable-mpi --enable-threads ifeq ($(ARCHITECTURE), i386) ARCHCONFFLAGS := --enable-i386-hacks endif build: build-arch build-indep autoreconf-stamp: autoreconf -f -i -I. touch autoreconf-stamp build-arch: build-arch-stamp build-arch-stamp: autoreconf-stamp dh_testdir # single precision F77=gfortran CFLAGS="$(CFLAGS)" CC=mpicc ./configure $(CONFFLAGS) --enable-float --enable-type-prefix $(ARCHCONFFLAGS) $(MAKE) ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) #$(MAKE) -C tests check ./tests/fftw_test -t -e -v -p 1024 -x 1 ./tests/rfftw_test -t -e -v -p 1024 -x 1 endif $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp-single $(MAKE) clean # double precision F77=gfortran CFLAGS="$(CFLAGS)" CC=mpicc ./configure $(CONFFLAGS) $(ARCHCONFFLAGS) $(MAKE) ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) #$(MAKE) -C tests check ./tests/fftw_test -t -e -v -p 1024 -x 1 ./tests/rfftw_test -t -e -v -p 1024 -x 1 endif $(MAKE) install DESTDIR=$(CURDIR)/debian/tmp-double touch build-arch-stamp build-indep: build-indep-stamp build-indep-stamp: autoreconf-stamp # docs F77=gfortran CFLAGS="$(CFLAGS)" ./configure $(CONFFLAGS) --enable-float --enable-type-prefix $(ARCHCONFFLAGS) rm -f doc/fftw.info $(MAKE) -C doc $(MAKE) -C doc html $(MAKE) -C FAQ touch build-indep-stamp clean: clean1st clean1st: dh_testdir dh_testroot rm -f build-arch-stamp build-indep-stamp autoreconf-stamp # Add here commands to clean up after the build process. [ ! -f Makefile ] || $(MAKE) distclean [ ! -f Makefile ] || $(MAKE) -C doc clean-local [ ! -f Makefile ] || $(MAKE) -C FAQ clean rm -f compile fftw/libfftw.la mpi/libfftw_mpi.la mpi/librfftw_mpi.la rfftw/librfftw.la threads/libfftw_threads.la threads/librfftw_threads.la rm -rf $(CURDIR)/debian/tmp-* dh_clean install: install-indep install-arch install-indep: dh_testdir dh_testroot dh_clean -k -i dh_installdirs -i dh_install -p fftw-docs FAQ/fftw-faq.html/*.html usr/share/doc/fftw-docs/FAQ dh_install -p fftw-docs doc/*.html usr/share/doc/fftw-docs/html dh_install -p fftw-docs doc/*.gif usr/share/doc/fftw-docs/html # dh_install -p fftw-docs debian/mpi/Makefile mpi/TOMS_transpose.h \ mpi/fftw_mpi_test.c mpi/rfftw_mpi_test.c mpi/sched.h \ mpi/test_sched.c mpi/test_transpose_mpi.c \ usr/share/doc/fftw-docs/examples/mpi # dh_install -p fftw-docs debian/tests/Makefile fftw/config.h fftw/fftw-int.h usr/share/doc/fftw-docs/examples/tests for i in README fftw_test.c rfftw_test.c test_main.c test_main.h; do \ dh_install -p fftw-docs tests/$$i usr/share/doc/fftw-docs/examples/tests; \ done # dh_install -p fftw-docs debian/threads/Makefile usr/share/doc/fftw-docs/examples/threads for i in fftw_threads-int.h fftw_threads_test.c rfftw_threads_test.c; do \ dh_install -p fftw-docs threads/$$i usr/share/doc/fftw-docs/examples/threads; \ done install-arch: dh_testdir dh_testroot dh_clean -k -s dh_installdirs -s mkdir -p $(CURDIR)/debian/tmp-single/usr/share/doc/sfftw-dev/fortran mkdir -p $(CURDIR)/debian/tmp-double/usr/share/doc/fftw-dev/fortran cp -a fortran/fftw_f77.i $(CURDIR)/debian/tmp-single/usr/share/doc/sfftw-dev/fortran/ cp -a fortran/fftw_f77.i $(CURDIR)/debian/tmp-double/usr/share/doc/fftw-dev/fortran/ dh_install --sourcedir=$(CURDIR)/debian/tmp-single -p sfftw2 dh_install --sourcedir=$(CURDIR)/debian/tmp-single -p sfftw-dev dh_install --sourcedir=$(CURDIR)/debian/tmp-double -p fftw2 dh_install --sourcedir=$(CURDIR)/debian/tmp-double -p fftw-dev binary-common: dh_testdir dh_testroot dh_installchangelogs ChangeLog dh_installdocs dh_installexamples dh_installman dh_installinfo dh_link dh_strip dh_compress -X.c -X.h -XMakefile dh_fixperms dh_makeshlibs dh_installdeb dh_shlibdeps dh_gencontrol dh_md5sums dh_builddeb binary-indep: build-indep install-indep $(MAKE) -f debian/rules DH_OPTIONS=-i binary-common binary-arch: build-arch install-arch $(MAKE) -f debian/rules DH_OPTIONS=-a binary-common binary: binary-arch binary-indep .PHONY: build clean binary-indep binary-arch binary install install-indep install-arch clean1st autoreconf-stamp