@@ -6,8 +6,8 @@ project(pluginval VERSION ${CURRENT_VERSION})
66# Just compliing pluginval
77if (pluginval_IS_TOP_LEVEL)
88 if (APPLE )
9- # Target OS versions down to 10.11
10- set (CMAKE_OSX_DEPLOYMENT_TARGET "10.11 " CACHE INTERNAL "" )
9+ # Target OS versions down to 13.3 (required for C++23 std::format/std::filesystem)
10+ set (CMAKE_OSX_DEPLOYMENT_TARGET "13.3 " CACHE INTERNAL "" )
1111
1212 # Uncomment to produce a universal binary
1313 # set(CMAKE_OSX_ARCHITECTURES arm64 x86_64)
@@ -55,14 +55,16 @@ option(JUCE_ENABLE_MODULE_SOURCE_GROUPS "Enable Module Source Groups" ON)
5555
5656include (cmake/CPM.cmake)
5757CPMAddPackage("gh:Neargye/magic_enum#v0.9.7" )
58+ CPMAddPackage("gh:fredemmott/magic_args#v0.2.1" )
59+ CPMAddPackage("gh:nlohmann/json@3.11.3" )
5860
5961if (PLUGINVAL_ENABLE_RTCHECK)
6062 CPMAddPackage("gh:Tracktion/rtcheck#main" )
6163endif ()
6264
6365# Only fetch JUCE when top-level (when used as dependency, JUCE is already available)
6466if (pluginval_IS_TOP_LEVEL)
65- CPMAddPackage("gh:juce-framework/juce#8.0.3 " )
67+ CPMAddPackage("gh:juce-framework/juce#8.0.12 " )
6668endif ()
6769
6870
@@ -103,7 +105,7 @@ juce_add_gui_app(pluginval
103105
104106juce_generate_juce_header(pluginval)
105107
106- target_compile_features (pluginval PRIVATE cxx_std_20 )
108+ target_compile_features (pluginval PRIVATE cxx_std_23 )
107109
108110set_target_properties (pluginval PROPERTIES
109111 C_VISIBILITY_PRESET hidden
@@ -114,13 +116,15 @@ set(SourceFiles
114116 Source /CrashHandler.h
115117 Source /MainComponent.h
116118 Source /PluginTests.h
119+ Source /PluginvalSettings.h
117120 Source /TestUtilities.h
118121 Source /Validator.h
119122 Source /CommandLine.cpp
120123 Source /CrashHandler.cpp
121124 Source /Main.cpp
122125 Source /MainComponent.cpp
123126 Source /PluginTests.cpp
127+ Source /PluginvalSettings.cpp
124128 Source /tests/BasicTests.cpp
125129 Source /tests/LocaleTest.cpp
126130 Source /tests/BusTests.cpp
@@ -170,7 +174,9 @@ target_link_libraries(pluginval PRIVATE
170174 juce::juce_audio_processors
171175 juce::juce_audio_utils
172176 juce::juce_recommended_warning_flags
173- magic_enum)
177+ magic_enum
178+ magic_args::magic_args
179+ nlohmann_json::nlohmann_json)
174180
175181if (${CMAKE_SYSTEM_NAME} MATCHES "Linux" )
176182 target_link_libraries (pluginval PRIVATE
0 commit comments