Commit graph

55 commits

Author SHA1 Message Date
wiz
48dba22c11 Match upstream version more closely. 2017-01-22 14:49:23 +00:00
adam
c97cdfc11e FFTW 3.3.6-pl1
Bugfix: FFTW 3.3.6 had the wrong libtool version number, and generated shared libraries of the form libfftw3.so.2.6.6 instead of libfftw3.so.3.*.

FFTW 3.3.6
The fftw_make_planner_thread_safe() API introduced in 3.3.5 didn't work, and this 3.3.6 fixes it. Sorry about that.
Compilation fixes for IBM XLC.
Compilation fixes for threads on Windows.
fix SIMD autodetection on amd64 when (_MSC_VER > 1500)
2017-01-21 19:55:29 +00:00
agc
30b55df38e Convert all occurrences (353 by my count) of
MASTER_SITES= 	site1 \
			site2

style continuation lines to be simple repeated

	MASTER_SITES+= site1
	MASTER_SITES+= site2

lines. As previewed on tech-pkg. With thanks to rillig for fixing pkglint
accordingly.
2017-01-19 18:52:01 +00:00
wiz
5d1eded45a Update fftw{,f} to 3.3.5.
FFTW 3.3.5:

* New SIMD support:
  - Power8 VSX instructions in single and double precision.
    To use, add --enable-vsx to configure.
  - Support for AVX2 (256-bit FMA instructions).
    To use, add --enable-avx2 to configure.
  - Experimental support for AVX512 and KCVI. (--enable-avx512, --enable-kcvi)
    This code is expected to work but the FFTW maintainers do not have
    hardware to test it.
  - Support for AVX128/FMA (for some AMD machines) (--enable-avx128-fma)
  - Double precision Neon SIMD for aarch64.
    This code is expected to work but the FFTW maintainers do not have
    hardware to test it.
  - generic SIMD support using gcc vector intrinsics
* Add fftw_make_planner_thread_safe() API
* fix #18 (disable float128 for CUDACC)
* fix #19: missing Fortran interface for fftwq_alloc_real
* fix #21 (don't use float128 on Portland compilers, which pretend to be gcc)
* fix: Avoid segfaults due to double free in MPI transpose

* Special note for distribution maintainers: Although FFTW supports a
  zillion SIMD instruction sets, enabling them all at the same time is
  a bad idea, because it increases the planning time for minimal gain.
  We recommend that general-purpose x86 distributions only enable SSE2
  and perhaps AVX.  Users who care about the last ounce of performance
  should recompile FFTW themselves.
2016-08-19 12:40:18 +00:00
wiz
73716d23de Bump PKGREVISION for perl-5.24.0 for everything mentioning perl. 2016-07-09 06:38:30 +00:00
wiz
0982effce2 Recursive PKGREVISION bump for all packages mentioning 'perl',
having a PKGNAME of p5-*, or depending such a package,
for perl-5.22.0.
2015-06-12 10:48:20 +00:00
wiz
cda18437be Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles. 2014-10-09 14:05:50 +00:00
wiz
7eeb51b534 Bump for perl-5.20.0.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.
2014-05-29 23:35:13 +00:00
wiz
3a348a00e6 Update to 3.3.4:
FFTW 3.3.4

* New functions fftw_alignment_of (to check whether two arrays are
  equally aligned for the purposes of applying a plan) and fftw_sprint_plan
  (to output a description of plan to a string).

* Bugfix in fftw-wisdom-to-conf; thanks to Florian Oppermann for the
  bug report.

* Fixed manual to work with texinfo-5.

* Increased timing interval on x86_64 to reduce timing errors.

* Default to Win32 threads, not pthreads, if both are present.

* Various build-script fixes.
2014-03-31 08:33:10 +00:00
tsutsui
e260f23246 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.
2013-07-09 15:46:45 +00:00
tsutsui
6c9d91d5ea 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@.
2013-06-29 18:59:43 +00:00
gdt
240be403c0 Cosmetic change to make it easier to disable fortran.
This commit makes no semantic change; it merely splits
  USE_LANGUAGES=c fortran77
into two lines, reorders, and adds comments.

However, one can then easily turn off
  USE_LANGUAGES+= fortran77
and turn on
  CONFIGURE_ARGS+= --disable-fortran
and build, without a fortran dependency, and observe that there are no
PLIST problems.
2013-06-07 13:28:56 +00:00
wiz
d2ca14a3f1 Bump all packages for perl-5.18, that
a) refer 'perl' in their Makefile, or
b) have a directory name of p5-*, or
c) have any dependency on any p5-* package

Like last time, where this caused no complaints.
2013-05-31 12:39:57 +00:00
adam
1e8a16a7b4 Changes 3.3.3:
* Fix deadlock bug in MPI transforms (thanks to Michael Pippig for the
  bug report and patch, and to Graham Dennis for the bug report).
* Use 128-bit ARM NEON instructions instead of 64-bits.  This change
  appears to speed up even ARM processors with a 64-bit NEON pipe.
* Speed improvements for single-precision AVX.
* Speed up planner on machines without "official" cycle counters, such as ARM.
2012-11-26 17:36:50 +00:00
wiz
d8a0a08db2 If a native pthreads implementation is available, also install
libfftw3_threads. Bump PKGREVISION.
2012-10-24 08:57:46 +00:00
wiz
8b5d49eb78 Bump all packages that use perl, or depend on a p5-* package, or
are called p5-*.

I hope that's all of them.
2012-10-03 21:53:53 +00:00
asau
b63c74fdfd "user-destdir" is default these days 2012-09-11 23:04:15 +00:00
wiz
55594b568e Update to 3.3.2:
FFTW 3.3.2

* Removed an archaic stack-alignment hack that was failing with
  gcc-4.7/i386.

* Added stack-alignment hack necessary for gcc on Windows/i386.  We
  will regret this in ten years (see previous change).

* Fix incompatibility with Intel icc which pretends to be gcc
  but does not support quad precision.

* make libfftw{threads,mpi} depend upon libfftw when using libtool;
  this is consistent with most other libraries and simplifies the life
  of various distributors of GNU/Linux.
2012-05-29 13:40:16 +00:00
adam
45014ac7de Changes 3.3.1:
* Reduced planning time in estimate mode for sizes with large prime factors.
* Added AVX autodetection under Visual Studio.
* Modern Fortran interface now uses a separate fftw3l.f03 interface file for
  the long double interface, which is not supported by some Fortran compilers.
  Provided new fftw3q.f03 interface file to access the quadruple-precision FFTW
  routines with recent versions of gcc/gfortran.
* Added support for the NEON extensions to the ARM ISA.
* MPI code now compiles even if mpicc is a C++ compiler.
2012-03-03 11:45:07 +00:00
adam
735801b11f Changes 3.3:
* Compiling OpenMP support (--enable-openmp) now installs a fftw3_omp library,
  instead of fftw3_threads, so that OpenMP and POSIX threads (--enable-threads)
  libraries can be built and installed at the same time.
* Various minor compilation fixes, corrections of manual typos, and
  improvements to the benchmark test program.
* Add support for the AVX extensions to x86 and x86-64. The AVX code works with
  16-byte alignment (as opposed to 32-byte alignment), so there is no ABI
  change compared to FFTW 3.2.2.
* Added Fortran 2003 interface, which should be usable on most modern Fortran
  compilers (e.g. gfortran) and provides type-checked access to the the C FFTW
  interface. (The legacy Fortran-77 interface is still included also.)
* Added MPI distributed-memory transforms. Compared to 3.3alpha, the major
  changes in the MPI transforms are:
* Fixed some deadlock and crashing bugs.
* Added Fortran 2003 interface.
* Added new-array execute functions for MPI plans.
* Eliminated use of large MPI tags, since Cray MPI requires tags < 224.
* Expanded documentation.
* make check now runs MPI tests
* Some ABI changes — not binary-compatible with 3.3alpha MPI.
* Add support for quad-precision __float128 in gcc 4.6 or later (on x86.
  x86-64, and Itanium). The new routines use the fftwq_ prefix.
* Temporarily removed MIPS paired-single support due to lack of available
  hardware for testing. We hope to add it back before the final FFTW 3.3
  release; meanwhile, users who want this functionality should continue using
  FFTW 3.2.x.
* Removed support for the Cell Broadband Engine. Cell users should use FFTW
  3.2.x.
* New convenience functions fftw_alloc_real and fftw_alloc_complex to use
  fftw_malloc for real and complex arrays without typecasts or sizeof.
2011-07-28 06:23:41 +00:00
asau
dfc6889736 "fortran" -> "fortran77" except where it is clear that it isn't F77.
"fortran" is alias of "fortran77" for now, but it will change later.
2010-07-30 10:36:22 +00:00
asau
6754aacfb8 Follow f2c/libf2c split: bump revision of all packages
that list Fortran in used languages.
2009-12-03 13:06:51 +00:00
wiz
46d5f1d498 Update to 3.2.2. Set LICENSE to gnu-gpl-v2.
FFTW 3.2.2

* Improve performance of some copy operations of complex arrays on
  x86 machines.

* Add configure flag to disable alloca(), which is broken in mingw64.

* Planning in FFTW_ESTIMATE mode for r2r transforms became slower
  between fftw-3.1.3 and 3.2.  This regression has now been fixed.
2009-08-14 16:14:17 +00:00
adam
d14975a27c Changes 3.2.1:
* Performance improvements for some multidimensional r2c/c2r transforms;
  thanks to Eugene Miloslavsky for his benchmark reports.
* Compile with icc on MacOS X, use better icc compiler flags.
* Compilation fixes for systems where snprintf is defined as a macro;
  thanks to Marcus Mae for the bug report.
* Fortran documentation now recommends not using dfftw_execute,
  because of reports of problems with various Fortran compilers;
  it is better to use dfftw_execute_dft etcetera.
* Some documentation clarifications, e.g. of fact that --enable-openmp
  and --enable-threads are mutually exclusive (thanks to Long To),
  and document slightly odd behavior of plan_guru_r2r in Fortran.
* FAQ was accidentally omitted from 3.2 tarball.
* Remove some extraneous (harmless) files accidentally included in
  a subdirectory of the 3.2 tarball.
2009-02-17 10:40:47 +00:00
adam
e7f4d5c8a2 Changes 3.2:
* Worked around apparent glibc bug that leads to rare hangs when freeing
  semaphores.
* Fixed segfault due to unaligned access in certain obscure problems
  that use SSE and multiple threads.
* MPI transforms not included, as they are still in alpha; the alpha
  versions of the MPI transforms have been moved to FFTW 3.3alpha1.
* Performance improvements for sizes with factors of 5 and 10.
* Documented FFTW_WISDOM_ONLY flag, at the suggestion of Mario
  Emmenlauer and Phil Dumont.
* Port Cell code to SDK2.1 (libspe2), as opposed to the old libspe1 code.
* Performance improvements in Cell code for N < 32k, thanks to Jan Wagner
  for the suggestions.
* Cycle counter for Sun x86_64 compiler, and compilation fix in cycle
  counter for AIX/xlc (thanks to Jeff Haferman for the bug report).
* Fixed incorrect type prefix in MPI code that prevented wisdom routines
  from working in single precision (thanks to Eric A. Borisch for the report).
* Added 'make check' for MPI code (which still fails in a couple corner
  cases, but should be much better than in alpha2).
* Many other small fixes.
2008-11-18 11:13:06 +00:00
ahoka
0d5df9fd51 Changes since FFTW 3.1.2:
* Bug fix: FFTW computes incorrect results when the user plans both
  REDFT11 and RODFT11 transforms of certain sizes.  The bug is caused
  by incorrect sharing of twiddle-factor tables between the two
  transforms, and only occurs when both are used.  Thanks to Paul
  A. Valiant for the bug report.
2008-10-09 09:08:21 +00:00
wiz
a7c8e0cd61 Reset maintainer on his request. 2008-01-19 09:16:17 +00:00
joerg
9535088ab1 Mark as DESTDIR ready. 2007-12-21 22:35:42 +00:00
rillig
5156c34d24 When PKGSRC_RUN_TEST is set to "yes", Perl is needed. 2006-07-21 07:07:17 +00:00
rillig
2fe30e1c50 Needs a C compiler. 2006-07-21 05:28:26 +00:00
adam
7489ae8db3 Changes 3.1.2:
* Correct bug in configure script: --enable-portable-binary option was ignored!
* Threads compilation fix on AIX: prefer xlc_r to cc_r, and don't use
  either if we are using gcc.
* Updated FAQ to note that Apple gcc 4.0.1 on MacOS/Intel is broken,
  and suggest a workaround.  configure script now detects Core/Duo arch.
* Use -maltivec when checking for altivec.h.
2006-07-07 18:02:01 +00:00
adam
17cbf15f1e Changes 3.1.1:
* Performance improvements for Intel EMT64.
* Performance improvements for large-size transforms with SIMD.
* Cycle counter support for Intel icc and Visual C++ on x86-64.
* In fftw-wisdom tool, replaced obsolete --impatient with --measure.
* Fixed compilation failure with AIX/xlc; thanks to Joseph Thomas.
* Windows DLL support for Fortran API (added missing __declspec(dllexport)).
* SSE/SSE2 code works properly (i.e. disables itself) on older 386 and 486
  CPUs lacking a CPUID instruction; thanks to Eric Korpela.
2006-05-24 19:24:40 +00:00
jlam
739ade02f5 List the info pages directly in the PLIST and ensure that we honor
PKGINFODIR.
2006-03-31 23:56:28 +00:00
joerg
5911def816 Recursive revision bump / recommended bump for gettext ABI change. 2006-02-05 23:08:03 +00:00
adam
5b4402bf9b Changes 3.1:
* Faster FFTW_ESTIMATE planner.
* New (faster) algorithm for REDFT00/RODFT00 (type-I DCT/DST) of odd size.
* "4-step" algorithm for faster FFTs of very large sizes (> 2^18).
* Faster in-place real-data DFTs (for R2HC and HC2R r2r formats).
* Faster in-place non-square transpositions (FFTW uses these internally
  for in-place FFTs, and you can also perform them explicitly using
  the guru interface).
* Faster prime-size DFTs: implemented Bluestein's algorithm, as well
  as a zero-padded Rader variant to limit recursive use of Rader's algorithm.
* SIMD support for split complex arrays.
* Much faster Altivec/VMX performance.
* New fftw_set_timelimit function to specify a (rough) upper bound to the
  planning time (does not affect ESTIMATE mode).
* Removed --enable-3dnow support; use --enable-k7 instead.
* FMA (fused multiply-add) version is now included in "standard" FFTW,
  and is enabled with --enable-fma (the default on PowerPC and Itanium).
* Automatic detection of native architecture flag for gcc.  New
  configure options: --enable-portable-binary and --with-gcc-arch=<arch>,
  for people distributing compiled binaries of FFTW (see manual).
* Automatic detection of Altivec under Linux with gcc 3.4 (so that
  same binary should work on both Altivec and non-Altivec PowerPCs).
* Compiler-specific tweaks/flags/workarounds for gcc 3.4, xlc, HP/UX,
  Solaris/Intel.
* Various documentation clarifications.
* 64-bit clean.  (Fixes a bug affecting the split guru planner on
  64-bit machines, reported by David Necas.)
* Fixed Debian bug no.259612: inadvertent use of SSE instructions on
  non-SSE machines (causing a crash) for --enable-sse binaries.
* Fixed bug that caused HC2R transforms to destroy the input in
  certain cases, even if the user specified FFTW_PRESERVE_INPUT.
* Fixed bug where wisdom would be lost under rare circumstances,
  causing excessive planning time.
* FAQ notes bug in gcc-3.4.[1-3] that causes FFTW to crash with SSE/SSE2.
* Fixed accidentally exported symbol that prohibited simultaneous
  linking to double/single multithreaded FFTW (thanks to Alessio Massaro).
* Support Win32 threads under MinGW (thanks to Alessio Massaro).
2006-01-30 09:25:09 +00:00
rillig
b71a1d488b Fixed pkglint warnings. The warnings are mostly quoting issues, for
example MAKE_ENV+=FOO=${BAR} is changed to MAKE_ENV+=FOO=${BAR:Q}. Some
other changes are outlined in

    http://mail-index.netbsd.org/tech-pkg/2005/12/02/0034.html
2005-12-05 20:49:47 +00:00
jlam
585534220c Remove USE_GNU_TOOLS and replace with the correct USE_TOOLS definitions:
USE_GNU_TOOLS	-> USE_TOOLS
	awk		-> gawk
	m4		-> gm4
	make		-> gmake
	sed		-> gsed
	yacc		-> bison
2005-05-22 20:07:36 +00:00
minskim
9eee502ed9 Enable pkgviews installation. 2005-02-23 04:21:33 +00:00
jlam
b6b853727d Nuke USE_FORTRAN and bring the f2c handling within the mk/compiler
framework.  The list of changes include:

  * Modify compiler.mk so that "c" is always prepended to USE_LANGUAGES,
    so we no longer need to say it in package Makefiles.  Packages
    should now append to USE_LANGUAGES instead of setting it.

  * Create mk/compiler/f2c.mk which implements another pseudo-compiler
    "f2c" that may be used with any C compiler backend, e.g.

	PKGSRC_COMPILER= f2c ccache gcc

  * Teach the various "real" compiler files, e.g., sunpro.mk, mipspro.mk,
    etc., to use f2c if the native Fortran compiler isn't present.

Packages that use Fortran should now simply include the line:

	USE_LANGUAGES+=	fortran

in the package Makefile.
2005-01-12 15:31:58 +00:00
tv
c487cb967a Libtool fix for PR pkg/26633, and other issues. Update libtool to 1.5.10
in the process.  (More information on tech-pkg.)

Bump PKGREVISION and BUILDLINK_DEPENDS of all packages using libtool and
installing .la files.

Bump PKGREVISION (only) of all packages depending directly on the above
via a buildlink3 include.
2004-10-03 00:12:51 +00:00
jmmv
ab17dd00b3 PKGCONFIG_OVERRIDE is relative to WRKSRC. 2004-02-14 18:26:26 +00:00
jlam
ec993afa1a LIBTOOL_OVERRIDE and SHLIBTOOL_OVERRIDE are now lists of shell globs
relative to ${WRKSRC}.  Remove redundant LIBTOOL_OVERRIDE settings that
are automatically handled by the default setting in bsd.pkg.mk.
2004-02-14 17:21:32 +00:00
grant
f1ab3f4ed4 replace deprecated USE_GMAKE with USE_GNU_TOOLS+=make. 2004-01-24 13:51:13 +00:00
seb
56b682547a USE_NEW_TEXINFO is unnecessary now. 2003-08-09 10:59:08 +00:00
wiz
a012fbb391 Update to 3.0.1:
* Some speed improvements in SIMD code.

* --without-cycle-counter option is removed.  If no cycle counter is found,
  then the estimator is always used.  A --with-slow-timer option is provided
  to force the use of lower-resolution timers.

* Added missing static keyword that prevented simultaneous linkage
  of different-precision versions; thanks to Rasmus Larson for the bug report.

* Corrected accidental omission of f77_wisdom.f file; thanks to Alan Watson.

* Removed non-portable use of 'tempfile' in fftw-wisdom-to-conf script;
  thanks to Nicolas Decoster for the patch.

* Added 'make smallcheck' target in tests/ directory, at the request of
  James Treacy.
2003-07-08 14:05:29 +00:00
jmc
00914a324b If the texi file is getting patched it needs to be rebuilt and that needs a
current texinfo.
2003-06-10 00:25:16 +00:00
wiz
e6e5e77663 Add patch to make 'info fftw3' work. Noted broken by Jeremy C. Reed.
PKGREVISION++
2003-06-05 21:41:42 +00:00
jtb
29f8e84330 Only use the fused multiply add version for PowerPC architecture.
Move DISTNAME.
2003-05-02 18:04:47 +00:00
jtb
4c53ffc22a Update to version 3.0.
Major goals of this release:

* Speed: often 20% or more faster than FFTW 2.x, even without SIMD (see below).

* Complete rewrite, to make it easier to add new algorithms and transforms.

* New API, to support more general semantics.

Other enhancements:

* SIMD acceleration on supporting CPUs (SSE, SSE2, 3DNow!, and AltiVec).
 (With special thanks to Franz Franchetti for many experimental prototypes
  and to Stefan Kral for the vectorizing generator from fftwgel.)

* True in-place 1d transforms of large sizes (as well as compressed
  twiddle tables for additional memory/cache savings).

* More arbitrary placement of real & imaginary data, e.g. including
  interleaved (as in FFTW 2.x) as well as separate real/imag arrays.

* Efficient prime-size transforms of real data.

* Multidimensional transforms can operate on a subset of a larger matrix,
  and/or transform selected dimensions of a multidimensional array.

* By popular demand, simultaneous linking to double precision (fftw),
  single precision (fftwf), and long-double precision (fftwl) versions
  of FFTW is now supported.

* Cycle counters (on all modern CPUs) are exploited to speed planning.

* Efficient transforms of real even/odd arrays, a.k.a. discrete
  cosine/sine transforms (types I-IV).  (Currently work via pre/post
  processing of real transforms, ala FFTPACK, so are not optimal.)

* DHTs (Discrete Hartley Transforms), again via post-processing
  of real transforms (and thus suboptimal, for now).

* Support for linking to just those parts of FFTW that you need,
  greatly reducing the size of statically linked programs when
  only a limited set of transform sizes/types are required.

* Canonical global wisdom file (/etc/fftw/wisdom) on Unix, along
  with a command-line tool (fftw-wisdom) to generate/update it.

* Fortran API can be used with both g77 and non-g77 compilers
  simultaneously.

* Multi-threaded version has optional OpenMP support.

* Authors' good looks have greatly improved with age.
2003-04-29 22:48:45 +00:00
seb
66111c6d15 Introduce new framework for handling info files generation and installation.
Summary of changes:
- removal of USE_GTEXINFO
- addition of mk/texinfo.mk
- inclusion of this file in package Makefiles requiring it
- `install-info' substituted by `${INSTALL_INFO}' in PLISTs
- tuning of mk/bsd.pkg.mk:
    removal of USE_GTEXINFO
    INSTALL_INFO added to PLIST_SUBST
    `${INSTALL_INFO}' replace `install-info' in target rules
    print-PLIST target now generate `${INSTALL_INFO}' instead of `install-info'
- a couple of new patch files added for a handful of packages
- setting of the TEXINFO_OVERRIDE "switch" in packages Makefiles requiring it
- devel/cssc marked requiring texinfo 4.0
- a couple of packages Makefiles were tuned with respect of INFO_FILES and
  makeinfo command usage

See -newly added by this commit- section 10.24 of Packages.txt for
further information.
2002-02-18 15:14:00 +00:00