diff options
| author | chausner <15180557+chausner@users.noreply.github.com> | 2021-10-12 20:27:30 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2021-10-12 11:27:30 -0700 |
| commit | 677eae74c020ff36842ce2fa1a8e50387a359038 (patch) | |
| tree | d5a63d89b0a8ac54e7d28c673149106786bc07c5 | |
| parent | 0ab80cc66dd1cb051f30d61875f9c45a44199e9d (diff) | |
| download | vcpkg-677eae74c020ff36842ce2fa1a8e50387a359038.tar.gz vcpkg-677eae74c020ff36842ce2fa1a8e50387a359038.zip | |
[pffft] new port (#20624)
* Add new port pffft
* Add pffft to baseline
Co-authored-by: chausner <chausner@users.noreply.github.com>
| -rw-r--r-- | ports/pffft/CMakeLists.txt | 25 | ||||
| -rw-r--r-- | ports/pffft/copyright | 52 | ||||
| -rw-r--r-- | ports/pffft/portfile.cmake | 22 | ||||
| -rw-r--r-- | ports/pffft/vcpkg.json | 17 | ||||
| -rw-r--r-- | versions/baseline.json | 4 | ||||
| -rw-r--r-- | versions/p-/pffft.json | 9 |
6 files changed, 129 insertions, 0 deletions
diff --git a/ports/pffft/CMakeLists.txt b/ports/pffft/CMakeLists.txt new file mode 100644 index 000000000..40f447ae5 --- /dev/null +++ b/ports/pffft/CMakeLists.txt @@ -0,0 +1,25 @@ +cmake_minimum_required(VERSION 3.12.4)
+project(pffft C)
+
+add_library(pffft pffft.c)
+
+if(MSVC)
+ target_compile_definitions(pffft PRIVATE _USE_MATH_DEFINES)
+endif()
+
+target_include_directories(pffft PUBLIC $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}> $<INSTALL_INTERFACE:include>)
+
+install(
+ TARGETS pffft
+ EXPORT pffft-config
+)
+
+install(
+ EXPORT pffft-config
+ NAMESPACE pffft::
+ DESTINATION share/pffft
+)
+
+if(NOT DISABLE_INSTALL_HEADERS)
+ install(FILES pffft.h DESTINATION include/pffft)
+endif()
\ No newline at end of file diff --git a/ports/pffft/copyright b/ports/pffft/copyright new file mode 100644 index 000000000..871b42e83 --- /dev/null +++ b/ports/pffft/copyright @@ -0,0 +1,52 @@ +Copyright (c) 2013 Julien Pommier ( pommier@modartt.com )
+
+Based on original fortran 77 code from FFTPACKv4 from NETLIB
+(http://www.netlib.org/fftpack), authored by Dr Paul Swarztrauber
+of NCAR, in 1985.
+
+As confirmed by the NCAR fftpack software curators, the following
+FFTPACKv5 license applies to FFTPACKv4 sources. My changes are
+released under the same terms.
+
+FFTPACK license:
+
+http://www.cisl.ucar.edu/css/software/fftpack5/ftpk.html
+
+Copyright (c) 2004 the University Corporation for Atmospheric
+Research ("UCAR"). All rights reserved. Developed by NCAR's
+Computational and Information Systems Laboratory, UCAR,
+www.cisl.ucar.edu.
+
+Redistribution and use of the Software in source and binary forms,
+with or without modification, is permitted provided that the
+following conditions are met:
+
+- Neither the names of NCAR's Computational and Information Systems
+Laboratory, the University Corporation for Atmospheric Research,
+nor the names of its sponsors or contributors may be used to
+endorse or promote products derived from this Software without
+specific prior written permission.
+
+- Redistributions of source code must retain the above copyright
+notices, this list of conditions, and the disclaimer below.
+
+- Redistributions in binary form must reproduce the above copyright
+notice, this list of conditions, and the disclaimer below in the
+documentation and/or other materials provided with the
+distribution.
+
+THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING, BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, INDIRECT, INCIDENTAL, SPECIAL,
+EXEMPLARY, OR CONSEQUENTIAL DAMAGES OR OTHER LIABILITY, WHETHER IN AN
+ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+
+PFFFT : a Pretty Fast FFT.
+
+This file is largerly based on the original FFTPACK implementation, modified in
+order to take advantage of SIMD instructions of modern CPUs.
diff --git a/ports/pffft/portfile.cmake b/ports/pffft/portfile.cmake new file mode 100644 index 000000000..32d4f833f --- /dev/null +++ b/ports/pffft/portfile.cmake @@ -0,0 +1,22 @@ +vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_from_bitbucket(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO jpommier/pffft
+ REF ed78751d751e51bbd94c41d24f748b400f272d69
+ SHA512 44f65c7f7e5b71f549dca2e03d58b1fd64e698858f79e4c2833a9ae3dff8a835cf9d5e14be2341c6370f800012cb69b05b9226d6918b12e67f7f7e81ed8e9ad4
+ HEAD_REF master
+)
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS_DEBUG
+ -DDISABLE_INSTALL_HEADERS=ON
+)
+
+vcpkg_cmake_install()
+vcpkg_cmake_config_fixup()
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/copyright" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}")
\ No newline at end of file diff --git a/ports/pffft/vcpkg.json b/ports/pffft/vcpkg.json new file mode 100644 index 000000000..5ea7a3bd2 --- /dev/null +++ b/ports/pffft/vcpkg.json @@ -0,0 +1,17 @@ +{ + "name": "pffft", + "version-date": "2021-10-09", + "description": "PFFFT, a pretty fast Fourier Transform.", + "homepage": "https://bitbucket.org/jpommier/pffft/", + "supports": "static", + "dependencies": [ + { + "name": "vcpkg-cmake", + "host": true + }, + { + "name": "vcpkg-cmake-config", + "host": true + } + ] +} diff --git a/versions/baseline.json b/versions/baseline.json index 1aaaea54a..25a33f202 100644 --- a/versions/baseline.json +++ b/versions/baseline.json @@ -5096,6 +5096,10 @@ "baseline": "2.8.3", "port-version": 1 }, + "pffft": { + "baseline": "2021-10-09", + "port-version": 0 + }, "pfring": { "baseline": "2019-10-17", "port-version": 3 diff --git a/versions/p-/pffft.json b/versions/p-/pffft.json new file mode 100644 index 000000000..9defc0134 --- /dev/null +++ b/versions/p-/pffft.json @@ -0,0 +1,9 @@ +{ + "versions": [ + { + "git-tree": "c425b1091069b34450a9b7e524f1cad202e4e709", + "version-date": "2021-10-09", + "port-version": 0 + } + ] +} |
