Date: Sun, 07 Jun 2026 09:14:44 +0000 From: Piotr Kubaj <pkubaj@FreeBSD.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org Subject: git: 575b654dc46a - main - audio/surge-synthesizer-xt-lv2: fix build on powerpc64* Message-ID: <6a253684.1d189.a7b88b3@gitrepo.freebsd.org>
index | next in thread | raw e-mail
The branch main has been updated by pkubaj: URL: https://cgit.FreeBSD.org/ports/commit/?id=575b654dc46aa032410861925a393e68fab679ab commit 575b654dc46aa032410861925a393e68fab679ab Author: Piotr Kubaj <pkubaj@FreeBSD.org> AuthorDate: 2026-06-05 07:58:41 +0000 Commit: Piotr Kubaj <pkubaj@FreeBSD.org> CommitDate: 2026-06-07 09:13:13 +0000 audio/surge-synthesizer-xt-lv2: fix build on powerpc64* ld: error: undefined symbol: juce::pnglibNamespace::png_init_filter_functions_vsx(juce::pnglibNamespace::png_struct_def*, unsigned int) --- audio/surge-synthesizer-xt-lv2/Makefile | 6 +++++ ...patch-libs_JUCE_modules_juce__dsp_juce__dsp.cpp | 11 ++++++++ .../patch-libs_JUCE_modules_juce__dsp_juce__dsp.h | 29 ++++++++++++++++++++++ ...ce__graphics_image__formats_juce__PNGLoader.cpp | 10 ++++++++ 4 files changed, 56 insertions(+) diff --git a/audio/surge-synthesizer-xt-lv2/Makefile b/audio/surge-synthesizer-xt-lv2/Makefile index eaad5aecd942..ed645a98bc77 100644 --- a/audio/surge-synthesizer-xt-lv2/Makefile +++ b/audio/surge-synthesizer-xt-lv2/Makefile @@ -87,6 +87,12 @@ PORTSCOUT= ignore:1 # conflicts with old-gen audio/surge-synthesizer-lv2 CMAKE_ARGS+= -DARM_NATIVE=native # based on https://github.com/surge-synthesizer/surge/tree/release/1.9.0#building-for-arm-platforms .endif +.if ${ARCH:Mpowerpc64*} +CMAKE_ON+= SURGE_SKIP_LUA # LuaJIT has no ppc64 backend +CFLAGS+= -Wno-deprecated-altivec-src-compat # simde vector-bool warning is fatal under -Werror +CXXFLAGS+= -Wno-deprecated-altivec-src-compat +.endif + .include <bsd.port.pre.mk> post-patch: diff --git a/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__dsp_juce__dsp.cpp b/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__dsp_juce__dsp.cpp new file mode 100644 index 000000000000..8991c3198ae2 --- /dev/null +++ b/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__dsp_juce__dsp.cpp @@ -0,0 +1,11 @@ +--- libs/JUCE/modules/juce_dsp/juce_dsp.cpp.orig 2026-06-05 07:46:02 UTC ++++ libs/JUCE/modules/juce_dsp/juce_dsp.cpp +@@ -79,7 +79,7 @@ + #include "widgets/juce_Chorus.cpp" + + #if JUCE_USE_SIMD +- #if JUCE_INTEL || defined(__riscv) || defined(__EMSCRIPTEN__) ++ #if JUCE_INTEL || defined(__riscv) || defined(__EMSCRIPTEN__) || defined(__powerpc__) + // falkTX patch to 6.* was this so ... add those ORs above + // #if defined(__i386__) || defined(__amd64__) || defined(_M_X64) || defined(_X86_) || defined(_M_IX86) || defined(__riscv) || defined(__EMSCRIPTEN__) + #ifdef __AVX2__ diff --git a/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__dsp_juce__dsp.h b/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__dsp_juce__dsp.h new file mode 100644 index 000000000000..dafb143a7719 --- /dev/null +++ b/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__dsp_juce__dsp.h @@ -0,0 +1,29 @@ +--- libs/JUCE/modules/juce_dsp/juce_dsp.h.orig 2026-06-05 07:45:45 UTC ++++ libs/JUCE/modules/juce_dsp/juce_dsp.h +@@ -84,6 +84,17 @@ + + #include <arm_neon.h> + ++#elif defined (__powerpc__) ++ ++ #ifndef JUCE_USE_SIMD ++ #define JUCE_USE_SIMD 1 ++ #endif ++ ++ #ifndef SIMDE_ENABLE_NATIVE_ALIASES ++ #define SIMDE_ENABLE_NATIVE_ALIASES ++ #endif ++ #include <simde/x86/sse4.2.h> ++ + #else + + // No SIMD Support +@@ -225,7 +236,7 @@ namespace util + #include "native/juce_SIMDNativeOps_fallback.h" + + // include the correct native file for this build target CPU +- #if defined(__i386__) || defined(__amd64__) || defined(_M_X64) || defined(_X86_) || defined(_M_IX86) || defined(__riscv) || defined(__EMSCRIPTEN__) ++ #if defined(__i386__) || defined(__amd64__) || defined(_M_X64) || defined(_X86_) || defined(_M_IX86) || defined(__riscv) || defined(__EMSCRIPTEN__) || defined(__powerpc__) + #ifdef __AVX2__ + #include "native/juce_SIMDNativeOps_avx.h" + #else diff --git a/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__graphics_image__formats_juce__PNGLoader.cpp b/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__graphics_image__formats_juce__PNGLoader.cpp new file mode 100644 index 000000000000..0b8230cde00b --- /dev/null +++ b/audio/surge-synthesizer-xt-lv2/files/patch-libs_JUCE_modules_juce__graphics_image__formats_juce__PNGLoader.cpp @@ -0,0 +1,10 @@ +--- libs/JUCE/modules/juce_graphics/image_formats/juce_PNGLoader.cpp.orig 2026-06-05 05:33:45 UTC ++++ libs/JUCE/modules/juce_graphics/image_formats/juce_PNGLoader.cpp +@@ -266,6 +266,7 @@ namespace pnglibNamespace + #define PNG_LINKAGE_FUNCTION + + #define PNG_ARM_NEON_OPT 0 ++ #define PNG_POWERPC_VSX_OPT 0 + + #if ! defined (PNG_USER_WIDTH_MAX) + #define PNG_USER_WIDTH_MAX 1000000home | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6a253684.1d189.a7b88b3>
