head 1.12; access; symbols pkgsrc-2023Q4:1.12.0.22 pkgsrc-2023Q4-base:1.12 pkgsrc-2023Q3:1.12.0.20 pkgsrc-2023Q3-base:1.12 pkgsrc-2023Q2:1.12.0.18 pkgsrc-2023Q2-base:1.12 pkgsrc-2023Q1:1.12.0.16 pkgsrc-2023Q1-base:1.12 pkgsrc-2022Q4:1.12.0.14 pkgsrc-2022Q4-base:1.12 pkgsrc-2022Q3:1.12.0.12 pkgsrc-2022Q3-base:1.12 pkgsrc-2022Q2:1.12.0.10 pkgsrc-2022Q2-base:1.12 pkgsrc-2022Q1:1.12.0.8 pkgsrc-2022Q1-base:1.12 pkgsrc-2021Q4:1.12.0.6 pkgsrc-2021Q4-base:1.12 pkgsrc-2021Q3:1.12.0.4 pkgsrc-2021Q3-base:1.12 pkgsrc-2021Q2:1.12.0.2 pkgsrc-2021Q2-base:1.12 pkgsrc-2021Q1:1.3.0.24 pkgsrc-2021Q1-base:1.3 pkgsrc-2020Q4:1.3.0.22 pkgsrc-2020Q4-base:1.3 pkgsrc-2020Q3:1.3.0.20 pkgsrc-2020Q3-base:1.3 pkgsrc-2020Q2:1.3.0.18 pkgsrc-2020Q2-base:1.3 pkgsrc-2020Q1:1.3.0.14 pkgsrc-2020Q1-base:1.3 pkgsrc-2019Q4:1.3.0.16 pkgsrc-2019Q4-base:1.3 pkgsrc-2019Q3:1.3.0.12 pkgsrc-2019Q3-base:1.3 pkgsrc-2019Q2:1.3.0.10 pkgsrc-2019Q2-base:1.3 pkgsrc-2019Q1:1.3.0.8 pkgsrc-2019Q1-base:1.3 pkgsrc-2018Q4:1.3.0.6 pkgsrc-2018Q4-base:1.3 pkgsrc-2018Q3:1.3.0.4 pkgsrc-2018Q3-base:1.3 pkgsrc-2018Q2:1.3.0.2 pkgsrc-2018Q2-base:1.3 pkgsrc-2018Q1:1.2.0.40 pkgsrc-2018Q1-base:1.2 pkgsrc-2017Q4:1.2.0.38 pkgsrc-2017Q4-base:1.2 pkgsrc-2017Q3:1.2.0.36 pkgsrc-2017Q3-base:1.2 pkgsrc-2017Q2:1.2.0.32 pkgsrc-2017Q2-base:1.2 pkgsrc-2017Q1:1.2.0.30 pkgsrc-2017Q1-base:1.2 pkgsrc-2016Q4:1.2.0.28 pkgsrc-2016Q4-base:1.2 pkgsrc-2016Q3:1.2.0.26 pkgsrc-2016Q3-base:1.2 pkgsrc-2016Q2:1.2.0.24 pkgsrc-2016Q2-base:1.2 pkgsrc-2016Q1:1.2.0.22 pkgsrc-2016Q1-base:1.2 pkgsrc-2015Q4:1.2.0.20 pkgsrc-2015Q4-base:1.2 pkgsrc-2015Q3:1.2.0.18 pkgsrc-2015Q3-base:1.2 pkgsrc-2015Q2:1.2.0.16 pkgsrc-2015Q2-base:1.2 pkgsrc-2015Q1:1.2.0.14 pkgsrc-2015Q1-base:1.2 pkgsrc-2014Q4:1.2.0.12 pkgsrc-2014Q4-base:1.2 pkgsrc-2014Q3:1.2.0.10 pkgsrc-2014Q3-base:1.2 pkgsrc-2014Q2:1.2.0.8 pkgsrc-2014Q2-base:1.2 pkgsrc-2014Q1:1.2.0.6 pkgsrc-2014Q1-base:1.2 pkgsrc-2013Q4:1.2.0.4 pkgsrc-2013Q4-base:1.2 pkgsrc-2013Q3:1.2.0.2 pkgsrc-2013Q3-base:1.2 pkgsrc-2013Q2:1.1.0.2 pkgsrc-2013Q2-base:1.1; locks; strict; comment @# @; 1.12 date 2021.06.12.07.30.23; author nia; state Exp; branches; next 1.11; commitid y7NFvnGDr58IvOWC; 1.11 date 2021.05.16.10.16.26; author nia; state Exp; branches; next 1.10; commitid szLqZURpqyeHimTC; 1.10 date 2021.05.16.10.14.09; author nia; state Exp; branches; next 1.9; commitid 762XfOm0wwYnhmTC; 1.9 date 2021.05.16.08.44.33; author nia; state Exp; branches; next 1.8; commitid 6abq5hYiSHw3NlTC; 1.8 date 2021.05.15.11.20.52; author nia; state Exp; branches; next 1.7; commitid YsAuwBBFYTvNGeTC; 1.7 date 2021.05.15.11.18.58; author nia; state Exp; branches; next 1.6; commitid 6YkcxcKMqH24GeTC; 1.6 date 2021.05.15.11.05.29; author nia; state Exp; branches; next 1.5; commitid SJjyutQy0SrtBeTC; 1.5 date 2021.05.07.12.31.22; author thor; state Exp; branches; next 1.4; commitid OPeoY2LpftVRkdSC; 1.4 date 2021.04.29.23.30.15; author thor; state Exp; branches; next 1.3; commitid 9WwCDd6Dg8T5efRC; 1.3 date 2018.05.30.06.45.58; author adam; state Exp; branches; next 1.2; commitid ZZzTwwITLhyCUhEA; 1.2 date 2013.07.09.15.46.45; author tsutsui; state Exp; branches; next 1.1; commitid Pv3zXeWmIHVDiOWw; 1.1 date 2013.06.29.18.59.43; author tsutsui; state Exp; branches; next ; commitid qIPcFKUTzyqMHxVw; desc @@ 1.12 log @fftw: Disable "generic" GCC simd intrinsics These produce poor code and it's always better to use the CPU-specific intrinsics instead, which we already do on platforms where the test suite doesn't fail. @ text @# $NetBSD: options.mk,v 1.11 2021/05/16 10:16:26 nia Exp $ PKG_OPTIONS_VAR= PKG_OPTIONS.fftw PKG_SUPPORTED_OPTIONS= fftw-fortran openmp mpi simd .include "../../mk/bsd.prefs.mk" .if !empty(PKGSRC_COMPILER:M*gcc*) || !empty(PKGSRC_COMPILER:M*clang*) . if ${MACHINE_ARCH} == "x86_64" PKG_SUPPORTED_OPTIONS+= avx . endif PKG_SUGGESTED_OPTIONS+= simd .endif .include "../../mk/bsd.options.mk" .if !empty(PKG_OPTIONS:Mavx) GCC_REQD+= 4.9 . for opt in avx avx2 avx512 avx-128-fma FFTW_FLOAT_OPTS+= --enable-${opt} FFTW_DOUBLE_OPTS+= --enable-${opt} . endfor .endif .if !empty(PKG_OPTIONS:Msimd) . if !empty(MACHINE_ARCH:Mpowerpc*) FFTW_FLOAT_OPTS+= --enable-altivec . endif . if ${MACHINE_ARCH} == "x86_64" FFTW_FLOAT_OPTS+= --enable-sse2 FFTW_DOUBLE_OPTS+= --enable-sse2 . endif .endif .if !empty(PKG_OPTIONS:Mfftw-fortran) USE_LANGUAGES+= fortran77 .else CONFIGURE_ARGS+= --disable-fortran .endif PLIST_VARS+= omp .if !empty(PKG_OPTIONS:Mopenmp) PLIST.omp= yes CONFIGURE_ARGS+= --enable-openmp .endif PLIST_VARS+= mpi .if !empty(PKG_OPTIONS:Mmpi) PLIST.mpi= yes CONFIGURE_ARGS+= --enable-mpi .include "../../mk/mpi.buildlink3.mk" .endif @ 1.11 log @fftw: match future powerpc variants @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.10 2021/05/16 10:14:09 nia Exp $ d4 1 a4 1 PKG_SUPPORTED_OPTIONS= fftw-fortran openmp mpi a8 1 PKG_SUPPORTED_OPTIONS+= simd a25 3 # Generic compiler vector abstractions (GCC extension). FFTW_FLOAT_OPTS+= --enable-generic-simd128 --enable-generic-simd256 FFTW_DOUBLE_OPTS+= --enable-generic-simd128 --enable-generic-simd256 @ 1.10 log @split fftw package into -long and -quad precision variants the package previously used PKG_OPTIONS for this, but PKG_OPTIONS are harmful in the case that they effect the resulting ABI of library packages. this way, things that actually need fftwl and fftwq can depend on these sub-packages. this also fixes fftwq on NetBSD by making it pull in libquadmath. another thing about PKG_OPTIONS for library components is that they mean certain components don't get tested... @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.9 2021/05/16 08:44:33 nia Exp $ d30 1 a30 1 . if ${MACHINE_ARCH} == "powerpc" @ 1.9 log @fftw: enable altivec (detected at runtime) on powerpc test suite runs on mac mini g4. @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.8 2021/05/15 11:20:52 nia Exp $ d4 1 a4 3 # fftw (double) and fftwf (single) are always built, you can add # fftwl (long) and fftwq (quad). PKG_SUPPORTED_OPTIONS= fftw-fortran openmp mpi fftw-long fftw-quad a56 12 PLIST_VARS+= long .if !empty(PKG_OPTIONS:Mfftw-long) FFTW_PRECISION+= long-double PLIST.long= yes .endif PLIST_VARS+= quad .if !empty(PKG_OPTIONS:Mfftw-quad) FFTW_PRECISION+= quad-precision PLIST.quad= yes .endif @ 1.8 log @fftw: avx usage is also gcc-specific in this package... @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.7 2021/05/15 11:18:58 nia Exp $ d32 3 @ 1.7 log @fftw: also move generic simd support to options.mk (on by default) @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.6 2021/05/15 11:05:29 nia Exp $ d12 3 a17 4 .if ${MACHINE_ARCH} == "x86_64" PKG_SUPPORTED_OPTIONS+= avx .endif @ 1.6 log @fftw: clean up funrolling, make avx into a package option @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.5 2021/05/07 12:31:22 thor Exp $ d10 5 d29 10 @ 1.5 log @math/fftw: fix pkglint issues @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.4 2021/04/29 23:30:15 thor Exp $ d7 5 a11 7 # Enable fortran support by default on platforms supported by lang/g95. .if (${MACHINE_ARCH} == i386 || ${MACHINE_ARCH} == x86_64 || \ ${MACHINE_ARCH} == ia64 || !empty(MACHINE_ARCH:Mpowerpc*) || \ ${MACHINE_ARCH} == hppa || !empty(MACHINE_ARCH:Msparc*) || \ ${MACHINE_ARCH} == alpha || !empty(MACHINE_ARCH:Mmips*)) # ...but disable it until lang/g95 issue is resolved. #PKG_SUGGESTED_OPTIONS= fftw-fortran d16 8 d36 1 a36 1 PLIST_VARS+= mpi d38 1 a38 1 PLIST.mpi= yes d43 1 a43 2 PLIST_VARS+= long quad d49 1 @ 1.4 log @math/fftw and dependents: merge math/fftwf backin and add MPI and OpenMP This yields one common package to provide libfftw3 (double) and libfftw3f (single) by default and optionally the Fortran bindings as well as OpenMP and MPI variants, and those with long double or quad precision. This changes all packages depending on fftwf in the same commit to minimize the time of inconsistency. Soon, math/fftwf will disappear. @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.3 2018/05/30 06:45:58 adam Exp $ d8 4 a11 4 .if (!empty(MACHINE_ARCH:Mi386) || !empty(MACHINE_ARCH:Mx86_64) || \ !empty(MACHINE_ARCH:Mia64) || !empty(MACHINE_ARCH:Mpowerpc*) || \ !empty(MACHINE_ARCH:Mhppa) || !empty(MACHINE_ARCH:Msparc*) || \ !empty(MACHINE_ARCH:Malpha) || !empty(MACHINE_ARCH:Mmips*)) d24 1 a24 1 PLIST_VARS+= omp d26 1 a26 1 PLIST.omp= yes d41 1 a41 1 PLIST.long= yes d46 1 a46 1 PLIST.quad= yes @ 1.3 log @fftw: updated to 3.3.8 FFTW 3.3.8: * Fixed AVX, AVX2 for gcc-8. By default, FFTW 3.3.7 was broken with gcc-8. AVX and AVX2 code assumed that the compiler honors the distinction between +0 and -0, but gcc-8 -ffast-math does not. The default CFLAGS included -ffast-math. This release ensures that FFTW works with gcc-8 -ffast-math, and removes -ffast-math from the default CFLAGS for good measure. @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.2 2013/07/09 15:46:45 tsutsui Exp $ d4 3 a6 1 PKG_SUPPORTED_OPTIONS= fftw-fortran d23 25 @ 1.2 log @Disable fftw-fortran option by default until lang/g95 issue is resolved. Also bump PKGREVISION for the option default change. "Please do that" from wiz@@ in PR/48023. @ text @d1 1 a1 1 # $NetBSD: options.mk,v 1.1 2013/06/29 18:59:43 tsutsui Exp $ a4 1 PKG_SUGGESTED_OPTIONS= d11 1 a11 1 #PKG_SUGGESTED_OPTIONS+= fftw-fortran @ 1.1 log @Make fortran support an option and enable it only on supported platforms. Fixes build failure on platforms that are not supported by g95, including NetBSD/arm 6.1. PR/47965 Ok'ed by wiz@@. @ text @d1 1 a1 1 # $NetBSD$ d5 1 d11 2 a12 1 PKG_SUGGESTED_OPTIONS= fftw-fortran @