| 1 | NAME = fftw |
|---|
| 2 | VERSION = 3.3 |
|---|
| 3 | CATEGORIES = lib |
|---|
| 4 | GARTYPE = v2 |
|---|
| 5 | |
|---|
| 6 | DESCRIPTION = Library for computing the discrete Fourier transform (DFT) |
|---|
| 7 | define BLURB |
|---|
| 8 | FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) |
|---|
| 9 | in one or more dimensions, of arbitrary input size, and of both real and complex |
|---|
| 10 | data (as well as of even/odd data, i.e. the discrete cosine/sine transforms or |
|---|
| 11 | DCT/DST). We believe that FFTW, which is free software, should become the FFT |
|---|
| 12 | library of choice for most applications. |
|---|
| 13 | endef |
|---|
| 14 | |
|---|
| 15 | MASTER_SITES = http://www.fftw.org/ |
|---|
| 16 | DISTFILES = $(DISTNAME).tar.gz |
|---|
| 17 | |
|---|
| 18 | VENDOR_URL = http://www.fftw.org/ |
|---|
| 19 | |
|---|
| 20 | EXTRA_MODULATORS = LONGDOUBLE |
|---|
| 21 | MODULATIONS_LONGDOUBLE = no yes |
|---|
| 22 | |
|---|
| 23 | # Solaris 9 package does not contain 64 bit on i386 as we have a separate Solaris 10 package |
|---|
| 24 | SKIP_MODULATIONS-5.9 += isa-amd64-longdouble-no isa-amd64-longdouble-yes |
|---|
| 25 | |
|---|
| 26 | # Solaris 9 does not have long double support at all |
|---|
| 27 | SKIP_MODULATIONS-5.9 += isa-sparcv8-longdouble-yes isa-sparcv9-longdouble-yes |
|---|
| 28 | SKIP_MODULATIONS-5.9 += isa-i386-longdouble-yes isa-amd64-longdouble-no isa-amd64-longdouble-yes |
|---|
| 29 | SKIP_MODULATIONS = $(SKIP_MODULATIONS-$(GAROSREL)) |
|---|
| 30 | |
|---|
| 31 | PACKAGING_PLATFORMS += solaris9-sparc solaris9-i386 |
|---|
| 32 | PACKAGING_PLATFORMS += solaris10-sparc solaris10-i386 |
|---|
| 33 | |
|---|
| 34 | PACKAGES += CSWlibfftw3-3 |
|---|
| 35 | SPKG_DESC_CSWlibfftw3-3 = Library for computing the discrete Fourier transform (DFT), libfftw3.so.3 |
|---|
| 36 | PKGFILES_CSWlibfftw3-3 = $(call pkgfiles_lib,libfftw3.so.3) |
|---|
| 37 | |
|---|
| 38 | PACKAGES-5.10 += CSWlibfftw3l3 |
|---|
| 39 | SPKG_DESC_CSWlibfftw3l3 = Library for computing the discrete Fourier transform (DFT) in long double, libfftw3l.so.3 |
|---|
| 40 | PKGFILES_CSWlibfftw3l3 = $(call pkgfiles_lib,libfftw3l.so.3) |
|---|
| 41 | |
|---|
| 42 | PACKAGES += CSWlibfftw3threads3 |
|---|
| 43 | SPKG_DESC_CSWlibfftw3threads3 = Library for computing the discrete Fourier transform (DFT), libfftw3_threads.so.3 |
|---|
| 44 | PKGFILES_CSWlibfftw3threads3 = $(call pkgfiles_lib,libfftw3_threads.so.3) |
|---|
| 45 | |
|---|
| 46 | PACKAGES-5.10 += CSWlibfftw3l-threads3 |
|---|
| 47 | SPKG_DESC_CSWlibfftw3l-threads3 = Library for computing the discrete Fourier transform (DFT) in long double, libfftw3_threads.so.3 |
|---|
| 48 | PKGFILES_CSWlibfftw3l-threads3 = $(call pkgfiles_lib,libfftw3l_threads.so.3) |
|---|
| 49 | |
|---|
| 50 | PACKAGES += CSWlibfftw-dev |
|---|
| 51 | SPKG_DESC_CSWlibfftw-dev = Development files for libfftw3.so.3 |
|---|
| 52 | PKGFILES_CSWlibfftw-dev = $(PKGFILES_DEVEL) |
|---|
| 53 | RUNTIME_DEP_PKGS_CSWlibfftw-dev += CSWlibfftw3-3 |
|---|
| 54 | RUNTIME_DEP_PKGS_CSWlibfftw-dev += CSWlibfftw3threads3 |
|---|
| 55 | RUNTIME_DEP_PKGS_CSWlibfftw-dev-5.10 += CSWlibfftw3l3 |
|---|
| 56 | RUNTIME_DEP_PKGS_CSWlibfftw-dev-5.10 += CSWlibfftw3l-threads3 |
|---|
| 57 | RUNTIME_DEP_PKGS_CSWlibfftw-dev += $(RUNTIME_DEP_PKGS_CSWlibfftw-dev-$(GAROSREL)) |
|---|
| 58 | |
|---|
| 59 | PACKAGES += CSWfftw |
|---|
| 60 | SPKG_DESC_CSWfftw = Utilities for computing the discrete Fourier transform (DFT) |
|---|
| 61 | # PKGFILES is catchall |
|---|
| 62 | RUNTIME_DEP_PKGS_CSWfftw += CSWlibfftw3-3 |
|---|
| 63 | RUNTIME_DEP_PKGS_CSWfftw += CSWlibfftw3threads3 |
|---|
| 64 | RUNTIME_DEP_PKGS_CSWfftw-5.10 += CSWlibfftw3l3 |
|---|
| 65 | RUNTIME_DEP_PKGS_CSWfftw-5.10 += CSWlibfftw3l-threads3 |
|---|
| 66 | RUNTIME_DEP_PKGS_CSWfftw += $(RUNTIME_DEP_PKGS_CSWfftw-$(GAROSREL)) |
|---|
| 67 | |
|---|
| 68 | PACKAGES += $(PACKAGES-$(GAROSREL)) |
|---|
| 69 | |
|---|
| 70 | BUILD64 = 1 |
|---|
| 71 | |
|---|
| 72 | CONFIGURE_ARGS = $(DIRPATHS) |
|---|
| 73 | CONFIGURE_ARGS += --enable-static=no |
|---|
| 74 | CONFIGURE_ARGS += --enable-shared=yes |
|---|
| 75 | CONFIGURE_ARGS += --enable-alloca |
|---|
| 76 | CONFIGURE_ARGS += --enable-portable-binary |
|---|
| 77 | #CONFIGURE_ARGS += --enable-mpi |
|---|
| 78 | #CONFIGURE_ARGS += --enable-openmp |
|---|
| 79 | CONFIGURE_ARGS += --enable-threads |
|---|
| 80 | |
|---|
| 81 | # This is only available for Solaris 10 |
|---|
| 82 | CONFIGURE_ARGS-5.10-longdouble-yes += --enable-long-double |
|---|
| 83 | |
|---|
| 84 | CONFIGURE_ARGS += $(CONFIGURE_ARGS-$(GAROSREL)-longdouble-$(LONGDOUBLE)) |
|---|
| 85 | |
|---|
| 86 | MERGE_SCRIPTS_isa-default-longdouble-no = copy-all |
|---|
| 87 | MERGE_SCRIPTS_isa-extra-longdouble-no = copy-relocate |
|---|
| 88 | MERGE_DIRS_isa-extra-longdouble-no = $(bindir) $(libdir) |
|---|
| 89 | MERGE_SCRIPTS_isa-default-longdouble-yes = copy-all |
|---|
| 90 | MERGE_SCRIPTS_isa-extra-longdouble-yes = copy-relocate |
|---|
| 91 | MERGE_DIRS_isa-extra-longdouble-yes = $(bindir) $(libdir) |
|---|
| 92 | |
|---|
| 93 | include gar/category.mk |
|---|