| @@ -4,7 +4,7 @@ on: | |||||
| push: | push: | ||||
| env: | env: | ||||
| CACHE_VERSION: 23 | |||||
| CACHE_VERSION: 24 | |||||
| DEBIAN_FRONTEND: noninteractive | DEBIAN_FRONTEND: noninteractive | ||||
| HOMEBREW_NO_AUTO_UPDATE: 1 | HOMEBREW_NO_AUTO_UPDATE: 1 | ||||
| LIBGL_ALWAYS_SOFTWARE: 'true' | LIBGL_ALWAYS_SOFTWARE: 'true' | ||||
| @@ -451,7 +451,7 @@ jobs: | |||||
| git clone --depth=1 -b master https://github.com/juce-framework/JUCE.git jucewrapper/JUCE | git clone --depth=1 -b master https://github.com/juce-framework/JUCE.git jucewrapper/JUCE | ||||
| sed -i -e 's/kAudioUnitProperty_SupportsMPE/kAudioUnitProperty_ignore_SupportsMPE/' jucewrapper/JUCE/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.h | sed -i -e 's/kAudioUnitProperty_SupportsMPE/kAudioUnitProperty_ignore_SupportsMPE/' jucewrapper/JUCE/modules/juce_audio_processors/format_types/juce_AudioUnitPluginFormat.h | ||||
| mkdir -p jucewrapper/build | mkdir -p jucewrapper/build | ||||
| pushd jucewrapper/build; cmake -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.8 -DCMAKE_BUILD_TYPE=Release .. && make -j $(sysctl -n hw.logicalcpu); popd | |||||
| pushd jucewrapper/build; cmake -DCMAKE_OSX_ARCHITECTURES=x86_64 -DCMAKE_OSX_DEPLOYMENT_TARGET=10.8 -DCMAKE_BUILD_TYPE=Release .. && make VERBOSE=1 -j $(sysctl -n hw.logicalcpu); popd | |||||
| mv jucewrapper/build/*_artefacts/Release/AU/*.component bin/ | mv jucewrapper/build/*_artefacts/Release/AU/*.component bin/ | ||||
| - name: Build macOS intel (packaging) | - name: Build macOS intel (packaging) | ||||
| run: | | run: | | ||||
| @@ -539,7 +539,7 @@ jobs: | |||||
| pushd deps/PawPaw; source local.env macos-universal; popd | pushd deps/PawPaw; source local.env macos-universal; popd | ||||
| git clone --depth=1 -b master https://github.com/juce-framework/JUCE.git jucewrapper/JUCE | git clone --depth=1 -b master https://github.com/juce-framework/JUCE.git jucewrapper/JUCE | ||||
| mkdir -p jucewrapper/build | mkdir -p jucewrapper/build | ||||
| pushd jucewrapper/build; cmake -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' -DCMAKE_OSX_DEPLOYMENT_TARGET=10.12 -DCMAKE_BUILD_TYPE=Release .. && make -j $(sysctl -n hw.logicalcpu); popd | |||||
| pushd jucewrapper/build; cmake -DCMAKE_OSX_ARCHITECTURES='arm64;x86_64' -DCMAKE_OSX_DEPLOYMENT_TARGET=10.12 -DCMAKE_BUILD_TYPE=Release .. && make VERBOSE=1 -j $(sysctl -n hw.logicalcpu); popd | |||||
| mv jucewrapper/build/*_artefacts/Release/AU/*.component bin/ | mv jucewrapper/build/*_artefacts/Release/AU/*.component bin/ | ||||
| - name: Build macOS universal (packaging) | - name: Build macOS universal (packaging) | ||||
| run: | | run: | | ||||
| @@ -99,12 +99,18 @@ CMAKE += -DCMAKE_INSTALL_PREFIX='$(DEP_PATH)' | |||||
| CMAKE += -DBUILD_SHARED_LIBS=OFF | CMAKE += -DBUILD_SHARED_LIBS=OFF | ||||
| # make sure macOS target matches ours | # make sure macOS target matches ours | ||||
| ifeq ($(MACOS),true) | |||||
| ifneq (,$(findstring -arch$(SPACE),$(CXXFLAGS))) | ifneq (,$(findstring -arch$(SPACE),$(CXXFLAGS))) | ||||
| CMAKE += -DCMAKE_OSX_ARCHITECTURES='$(subst $(SPACE),;,$(subst -arch=,,$(filter -arch=%,$(subst -arch$(SPACE),-arch=,$(CXXFLAGS)))))' | CMAKE += -DCMAKE_OSX_ARCHITECTURES='$(subst $(SPACE),;,$(subst -arch=,,$(filter -arch=%,$(subst -arch$(SPACE),-arch=,$(CXXFLAGS)))))' | ||||
| else ifeq ($(CIBUILD),true) | |||||
| $(error CI build requires -march flag on macOS) | |||||
| endif | endif | ||||
| ifneq (,$(findstring -mmacosx-version-min=,$(CXXFLAGS))) | ifneq (,$(findstring -mmacosx-version-min=,$(CXXFLAGS))) | ||||
| export MACOSX_DEPLOYMENT_TARGET = $(subst -mmacosx-version-min=,,$(filter -mmacosx-version-min=%,$(CXXFLAGS))) | export MACOSX_DEPLOYMENT_TARGET = $(subst -mmacosx-version-min=,,$(filter -mmacosx-version-min=%,$(CXXFLAGS))) | ||||
| CMAKE += -DCMAKE_OSX_DEPLOYMENT_TARGET=$(MACOSX_DEPLOYMENT_TARGET) | CMAKE += -DCMAKE_OSX_DEPLOYMENT_TARGET=$(MACOSX_DEPLOYMENT_TARGET) | ||||
| else ifeq ($(CIBUILD),true) | |||||
| $(error CI build requires -mmacosx-version-min flag on macOS) | |||||
| endif | |||||
| endif | endif | ||||
| # make sure debug/release matches | # make sure debug/release matches | ||||
| @@ -151,6 +157,7 @@ DEP_MAKE += CONFIGURE="$(CONFIGURE)" | |||||
| DEP_MAKE += DEP_FLAGS="$(BASE_FLAGS)" | DEP_MAKE += DEP_FLAGS="$(BASE_FLAGS)" | ||||
| DEP_MAKE += DEP_MAC_SDK_FLAGS= | DEP_MAKE += DEP_MAC_SDK_FLAGS= | ||||
| DEP_MAKE += MACHINE=$(MACHINE)$(MACHINE_SUFFIX) | DEP_MAKE += MACHINE=$(MACHINE)$(MACHINE_SUFFIX) | ||||
| DEP_MAKE += VERBOSE=1 | |||||
| ifeq ($(MACOS),true) | ifeq ($(MACOS),true) | ||||
| DEP_MAKE += SHA256SUM="shasum5.28 -a 256" | DEP_MAKE += SHA256SUM="shasum5.28 -a 256" | ||||
| @@ -86,6 +86,7 @@ set_property(TARGET libzstd PROPERTY IMPORTED_LOCATION "${PROJECT_SOURCE_DIR}/.. | |||||
| # dependencies | # dependencies | ||||
| find_package(PkgConfig REQUIRED) | find_package(PkgConfig REQUIRED) | ||||
| pkg_check_modules(FFTW3F REQUIRED fftw3f) | |||||
| pkg_check_modules(LIBLO REQUIRED liblo) | pkg_check_modules(LIBLO REQUIRED liblo) | ||||
| pkg_check_modules(SNDFILE REQUIRED sndfile) | pkg_check_modules(SNDFILE REQUIRED sndfile) | ||||
| @@ -181,6 +182,7 @@ target_link_libraries(CardinalFX | |||||
| ${GL_LIBRARIES} | ${GL_LIBRARIES} | ||||
| ${DBUS_LIBRARIES} | ${DBUS_LIBRARIES} | ||||
| -L${LIBLO_LIBRARY_DIRS} | -L${LIBLO_LIBRARY_DIRS} | ||||
| ${FFTW3F_LIBRARIES} | |||||
| ${LIBLO_LIBRARIES} | ${LIBLO_LIBRARIES} | ||||
| ${SNDFILE_LIBRARIES} | ${SNDFILE_LIBRARIES} | ||||
| ${X11_LIBRARIES} | ${X11_LIBRARIES} | ||||
| @@ -269,6 +271,7 @@ target_link_libraries(CardinalSynth | |||||
| ${GL_LIBRARIES} | ${GL_LIBRARIES} | ||||
| ${DBUS_LIBRARIES} | ${DBUS_LIBRARIES} | ||||
| -L${LIBLO_LIBRARY_DIRS} | -L${LIBLO_LIBRARY_DIRS} | ||||
| ${FFTW3F_LIBRARIES} | |||||
| ${LIBLO_LIBRARIES} | ${LIBLO_LIBRARIES} | ||||
| ${SNDFILE_LIBRARIES} | ${SNDFILE_LIBRARIES} | ||||
| ${X11_LIBRARIES} | ${X11_LIBRARIES} | ||||
| @@ -17,6 +17,11 @@ | |||||
| #include <juce_audio_processors/juce_audio_processors.h> | #include <juce_audio_processors/juce_audio_processors.h> | ||||
| #include <AvailabilityMacros.h> | |||||
| #if MAC_OS_X_VERSION_MAX_ALLOWED > 101200 | |||||
| #error unwanted macOS version, too new | |||||
| #endif | |||||
| #define createPlugin createStaticPlugin | #define createPlugin createStaticPlugin | ||||
| #include "src/DistrhoPluginInternal.hpp" | #include "src/DistrhoPluginInternal.hpp" | ||||
| #include "src/DistrhoUIInternal.hpp" | #include "src/DistrhoUIInternal.hpp" | ||||