diff --git a/audio/cardinal/Makefile b/audio/cardinal/Makefile index 1cb2fb11ae57..07869b870841 100644 --- a/audio/cardinal/Makefile +++ b/audio/cardinal/Makefile @@ -1,87 +1,87 @@ # CAVEAT cross-compilation (ex. CPUTYPE=znver3) fails, upstream needs to fix this: https://github.com/DISTRHO/Cardinal/issues/646 PORTNAME= cardinal DISTVERSION= 26.02 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= audio MASTER_SITES= https://github.com/DISTRHO/Cardinal/releases/download/${DISTVERSION}/ MAINTAINER= yuri@FreeBSD.org COMMENT= Plugin wrapper around VCV Rack WWW= https://cardinal.kx.studio/ \ https://github.com/DISTRHO/Cardinal LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/LICENSE BROKEN_armv7= compilation fails due to the variable name conflict with base header, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279134 BUILD_DEPENDS= ${LOCALBASE}/include/FuzzySearchDatabase.hpp:textproc/fuzzysearchdatabase \ bash:shells/bash \ cmake:devel/cmake-core LIB_DEPENDS= libasound.so:audio/alsa-lib \ libdbus-1.so:devel/dbus \ libfftw3f.so:math/fftw3-float \ libjansson.so:devel/jansson \ liblo.so:audio/liblo \ libpffft.so:math/pffft \ libpulse-simple.so:audio/pulseaudio \ libsamplerate.so:audio/libsamplerate \ libsndfile.so:audio/libsndfile \ libspeexdsp.so:audio/speexdsp RUN_DEPENDS= xdg-desktop-portal>0:deskutils/xdg-desktop-portal USES= compiler:c++17-lang gl gmake libarchive localbase:ldflags pkgconfig python sdl shebangfix tar:xz xorg USE_XORG= x11 xcursor xext xrandr USE_GL= gl USE_SDL= sdl2 SHEBANG_GLOB= *.sh CXXFLAGS+= -I${LOCALBASE}/include/pffft CXXFLAGS+= -Wno-error=missing-template-arg-list-after-template-kw # workaround for surgext/src/VCO.cpp:1051:28: error: a template argument list is expected after a name prefixed by the template keyword [-Wmissing-template-arg-list-after-template-kw] CXXFLAGS_powerpc64le= -DNO_WARN_X86_INTRINSICS LDFLAGS+= -lpffft -lexecinfo #MAKE_ENV= LD_PRELOAD=/usr/lib/libpthread.so # workaround for https://github.com/DISTRHO/Cardinal/issues/128#issuecomment-1030817359 MAKE_ARGS= SYSDEPS=true BINARY_ALIAS= gcc-ar=ar \ python3=${PYTHON_CMD} OPTIONS_DEFINE= DOCS LIBLO LTO OPTIONS_DEFAULT= #LIBLO LTO PORTDOCS= * LIBLO_DESC= Support Open Sound Control protocol through liblo LIBLO_MAKE_ARGS= WITH_LTO=true LIBLO_MAKE_ARGS_OFF= WITH_LTO=false LIBLO_LIB_DEPENDS= liblo.so:audio/liblo LIBLO_BROKEN= fails to build with liblo, see https://github.com/DISTRHO/Cardinal/issues/641 LTO_MAKE_ARGS= WITH_LTO=true LTO_BROKEN= Fails to build with LTO because it is gcc-centered LDFLAGS+= -Wl,--allow-multiple-definition # for roundevenf fix below: multipl binaries are built with multiple modules, so we add roundevenf and alow multiple definitions of it post-patch: # inject definition of missing function roundevenf, see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=298503 @cd ${WRKSRC} && \ for f in \ plugins/ZZC/src/FN.cpp \ plugins/Fundamental/src/LFO.cpp \ plugins/Biset/src/Igc/Igc.cpp \ plugins/ML_modules/src/Quant.cpp \ plugins/HetrickCV/src/Bitshift.cpp \ plugins/Venom/src/XM_OP.cpp \ plugins/Venom/src/PolyOffset.cpp \ plugins/MindMeldModular/src/EqMaster/EqMaster.cpp \ plugins/AnimatedCircuits/src/Folding/Folding.cpp \ plugins/AnimatedCircuits/src/LFold/LFold.cpp \ plugins/dBiz/src/Bench.cpp \ ; do \ cat ${FILESDIR}/roundevenf-definition.c $$f > $$f.tmp && mv $$f.tmp $$f; \ done .include diff --git a/math/pffft/Makefile b/math/pffft/Makefile index 8b3ae9a1af87..adebedd1581f 100644 --- a/math/pffft/Makefile +++ b/math/pffft/Makefile @@ -1,39 +1,37 @@ PORTNAME= pffft -PORTVERSION= 2022.12.19 # use date because this library is unlikely to ever have releases +DISTVERSIONPREFIX= v +DISTVERSION= 1.1.0 +PORTEPOCH= 1 CATEGORIES= math MAINTAINER= yuri@FreeBSD.org COMMENT= Pretty Fast FFT (PFFFT) library WWW= https://github.com/marton78/pffft LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE.txt -USES= cmake +USES= cmake:testing USE_LDCONFIG= yes USE_GITHUB= yes GH_ACCOUNT= marton78 -GH_TAGNAME= e0bf595 CMAKE_ON= BUILD_SHARED_LIBS INSTALL_PFDSP INSTALL_PFFASTCONV +CMAKE_OFF= PFFFT_BUILD_TESTS +CMAKE_TESTING_ON= PFFFT_BUILD_TESTS -.include +.include # for ARCH .if ${ARCH:Mpowerpc*} CMAKE_ARGS+= -DPFFFT_USE_SIMD:BOOL=OFF #https://github.com/marton78/pffft/issues/55 .endif -.include - .if ${ARCH} == i386 CFLAGS+= -msse2 CXXFLAGS+= -msse2 # fixes error: always_inline function '_mm_unpacklo_ps' requires target feature 'sse', but would be inlined into function 'pffft_zreorder' that is compiled without support for 'sse' .endif -post-install: # move headers into a dedicated directory - cd ${STAGEDIR}${PREFIX} && \ - ${MKDIR} include/${PORTNAME} && \ - ${MV} include/*.h include/*.hpp include/${PORTNAME} +# tests as of 1.1.0: 100% tests passed, 0 tests failed out of 9 -.include +.include diff --git a/math/pffft/distinfo b/math/pffft/distinfo index 1123aaa341e0..3675eb87144f 100644 --- a/math/pffft/distinfo +++ b/math/pffft/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1737159043 -SHA256 (marton78-pffft-2022.12.19-e0bf595_GH0.tar.gz) = 2bd6fb3df6a65588b6ef4ee36f4930449dabca392125a0e07d74b780fc32a943 -SIZE (marton78-pffft-2022.12.19-e0bf595_GH0.tar.gz) = 158769 +TIMESTAMP = 1790694323 +SHA256 (marton78-pffft-v1.1.0_GH0.tar.gz) = ea0701a6bc256405b03975908a6a92d0ffecdd18579e8484b8d789c8bd561787 +SIZE (marton78-pffft-v1.1.0_GH0.tar.gz) = 162455 diff --git a/math/pffft/files/patch-CMakeLists.txt b/math/pffft/files/patch-CMakeLists.txt deleted file mode 100644 index b88715ccc1c5..000000000000 --- a/math/pffft/files/patch-CMakeLists.txt +++ /dev/null @@ -1,57 +0,0 @@ ---- CMakeLists.txt.orig 2022-12-19 10:24:43 UTC -+++ CMakeLists.txt -@@ -170,7 +170,7 @@ endif() - - ###################################################### - --add_library(PFFFT STATIC ${FLOAT_SOURCES} ${DOUBLE_SOURCES} pffft_common.c pffft_priv_impl.h pffft.hpp ) -+add_library(PFFFT ${FLOAT_SOURCES} ${DOUBLE_SOURCES} pffft_common.c pffft_priv_impl.h pffft.hpp ) - set_target_properties(PFFFT PROPERTIES OUTPUT_NAME "pffft") - target_compile_definitions(PFFFT PRIVATE _USE_MATH_DEFINES) - target_activate_c_compiler_warnings(PFFFT) -@@ -196,7 +196,7 @@ if (PFFFT_USE_TYPE_FLOAT) - ###################################################### - - if (PFFFT_USE_TYPE_FLOAT) -- add_library(PFDSP STATIC pf_mixer.cpp pf_mixer.h pf_cplx.h pf_carrier.cpp pf_carrier.h pf_cic.cpp pf_cic.h fmv.h ) -+ add_library(PFDSP pf_mixer.cpp pf_mixer.h pf_cplx.h pf_carrier.cpp pf_carrier.h pf_cic.cpp pf_cic.h fmv.h ) - set_property(TARGET PFDSP PROPERTY CXX_STANDARD 11) - set_property(TARGET PFDSP PROPERTY CXX_STANDARD_REQUIRED ON) - set_target_properties(PFDSP PROPERTIES OUTPUT_NAME "pfdsp") -@@ -225,7 +225,7 @@ if (PFFFT_USE_FFTPACK) - if (PFFFT_USE_FFTPACK) - - # float / single precision -- add_library(FFTPACK_FLOAT STATIC fftpack.c fftpack.h) -+ add_library(FFTPACK_FLOAT fftpack.c fftpack.h) - target_compile_definitions(FFTPACK_FLOAT PRIVATE _USE_MATH_DEFINES) - target_activate_c_compiler_warnings(FFTPACK_FLOAT) - target_link_libraries( FFTPACK_FLOAT ${MATHLIB} ) -@@ -234,7 +234,7 @@ if (PFFFT_USE_FFTPACK) - ) - - # double precision -- add_library(FFTPACK_DOUBLE STATIC fftpack.c fftpack.h) -+ add_library(FFTPACK_DOUBLE fftpack.c fftpack.h) - target_compile_definitions(FFTPACK_DOUBLE PRIVATE _USE_MATH_DEFINES) - target_compile_definitions(FFTPACK_DOUBLE PUBLIC FFTPACK_DOUBLE_PRECISION) - target_activate_c_compiler_warnings(FFTPACK_DOUBLE) -@@ -258,7 +258,7 @@ if (PFFFT_USE_TYPE_FLOAT) - - if (PFFFT_USE_TYPE_FLOAT) - # only 'float' supported in PFFASTCONV -- add_library(PFFASTCONV STATIC pffastconv.c pffastconv.h pffft.h ) -+ add_library(PFFASTCONV pffastconv.c pffastconv.h pffft.h ) - set_target_properties(PFFASTCONV PROPERTIES OUTPUT_NAME "pffastconv") - target_compile_definitions(PFFASTCONV PRIVATE _USE_MATH_DEFINES) - target_activate_c_compiler_warnings(PFFASTCONV) -@@ -597,7 +597,9 @@ endif() - - ###################################################### - -+if (FREEBSD_BUILD_EXAMPLES) - add_subdirectory(examples) -+endif() - - ###################################################### - diff --git a/math/pffft/files/patch-pffft__double.c b/math/pffft/files/patch-src_pffft__double.c similarity index 53% rename from math/pffft/files/patch-pffft__double.c rename to math/pffft/files/patch-src_pffft__double.c index 275598b10e69..2d44001ce38c 100644 --- a/math/pffft/files/patch-pffft__double.c +++ b/math/pffft/files/patch-src_pffft__double.c @@ -1,11 +1,13 @@ ---- pffft_double.c.orig 2022-01-30 17:29:25 UTC -+++ pffft_double.c +-- Upstreamed: https://github.com/marton78/pffft/pull/105 + +--- src/pffft_double.c.orig 2026-09-29 15:09:52 UTC ++++ src/pffft_double.c @@ -75,6 +75,8 @@ # include #elif defined(__MINGW32__) || defined(__MINGW64__) # include +#elif defined(__FreeBSD__) -+# include ++# include #else # include #endif diff --git a/math/pffft/pkg-plist b/math/pffft/pkg-plist index 4a4fb44f4e6c..6fc22a7a3fee 100644 --- a/math/pffft/pkg-plist +++ b/math/pffft/pkg-plist @@ -1,11 +1,15 @@ include/pffft/pf_carrier.h include/pffft/pf_cic.h include/pffft/pf_cplx.h include/pffft/pf_mixer.h include/pffft/pffastconv.h include/pffft/pffft.h include/pffft/pffft.hpp include/pffft/pffft_double.h +lib/cmake/pffft/pffft-config-version.cmake +lib/cmake/pffft/pffft-config.cmake +lib/cmake/pffft/pffft-targets-%%CMAKE_BUILD_TYPE%%.cmake +lib/cmake/pffft/pffft-targets.cmake lib/libpfdsp.so lib/libpffastconv.so lib/libpffft.so