aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ports/kfr/CONTROL15
-rw-r--r--ports/kfr/portfile.cmake34
-rw-r--r--scripts/ci.baseline.txt3
3 files changed, 52 insertions, 0 deletions
diff --git a/ports/kfr/CONTROL b/ports/kfr/CONTROL
new file mode 100644
index 000000000..985ba86bf
--- /dev/null
+++ b/ports/kfr/CONTROL
@@ -0,0 +1,15 @@
+Source: kfr
+Version: 2020-06-15
+Description: Fast, modern C++ DSP framework
+Homepage: https://www.kfr.dev/
+Supports: !(arm|linux)
+
+Feature: capi
+Description: Enable C API build
+Build-Depends: kfr[dft]
+
+Feature: dft
+Description: Enable DFT and related algorithms
+
+Feature: dft-np
+Description: Enable Non-power of 2 DFT
diff --git a/ports/kfr/portfile.cmake b/ports/kfr/portfile.cmake
new file mode 100644
index 000000000..2cd702e2f
--- /dev/null
+++ b/ports/kfr/portfile.cmake
@@ -0,0 +1,34 @@
+vcpkg_fail_port_install(ON_ARCH "arm" ON_TARGET "Linux")
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO kfrlib/kfr
+ REF 1f9706197abfcd4b4ec19ded3ce37b70ebd9a223
+ SHA512 901c6984a46a7abcc28adf9397759156a9e8d173e028c236ab423568ed20b3a3efe207be9660c961539c73a2767afaedcd76133304f542d3299353942cf13f5e
+ HEAD_REF master
+)
+
+vcpkg_check_features(
+ OUT_FEATURE_OPTIONS FEATURE_OPTIONS
+ capi ENABLE_CAPI_BUILD
+ dft ENABLE_DFT
+ dft-np ENABLE_DFT_NP
+)
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS
+ -DENABLE_TESTS=OFF
+ -DENABLE_ASMTEST=OFF
+ -DREGENERATE_TESTS=OFF
+ -DKFR_EXTENDED_TESTS=OFF
+ -DSKIP_TESTS=ON
+ ${FEATURE_OPTIONS}
+)
+
+vcpkg_install_cmake()
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+
+file(INSTALL ${SOURCE_PATH}/LICENSE.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/${PORT} RENAME copyright)
diff --git a/scripts/ci.baseline.txt b/scripts/ci.baseline.txt
index 262165768..ddf34f5c6 100644
--- a/scripts/ci.baseline.txt
+++ b/scripts/ci.baseline.txt
@@ -629,6 +629,9 @@ jinja2cpplight:arm-uwp=fail
jinja2cpplight:x64-uwp=fail
keystone:arm-uwp=fail
keystone:x64-uwp=fail
+kfr:arm64-windows=fail
+kfr:arm-uwp=fail
+kfr:x64-linux=fail
kinectsdk1:arm64-windows=fail
kinectsdk1:arm-uwp=fail
kinectsdk1:x64-linux=fail