Skip to content

Commit

Permalink
Merge pull request #21 from GuitarML/develop
Browse files Browse the repository at this point in the history
Develop
  • Loading branch information
GuitarML committed Aug 30, 2022
2 parents 9a7c816 + dfb7ea1 commit aff99fe
Show file tree
Hide file tree
Showing 22 changed files with 284 additions and 593 deletions.
13 changes: 6 additions & 7 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
[submodule "modules/RTNeural"]
path = modules/RTNeural
url = https://github.com/jatinchowdhury18/RTNeural
[submodule "modules/json"]
path = modules/json
url = https://github.com/nlohmann/json.git
[submodule "modules/JUCE"]
path = modules/JUCE
url = https://github.com/lv2-porting-project/JUCE.git
branch = lv2
[submodule "modules/chowdsp_utils"]
path = modules/chowdsp_utils
url = https://github.com/Chowdhury-DSP/chowdsp_utils
[submodule "modules/libsamplerate"]
path = modules/libsamplerate
url = https://github.com/libsndfile/libsamplerate
[submodule "modules/JUCE"]
path = modules/JUCE
url = https://github.com/juce-framework/JUCE.git
[submodule "modules/RTNeural"]
path = modules/RTNeural
url = https://github.com/jatinchowdhury18/RTNeural.git
36 changes: 20 additions & 16 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
cmake_minimum_required(VERSION 3.15)
set(CMAKE_OSX_DEPLOYMENT_TARGET "10.12" CACHE STRING "Minimum OS X deployment target")
project(Chameleon VERSION 1.1.0)
project(Chameleon VERSION 1.2.0)

set(CMAKE_CXX_STANDARD 17)

add_subdirectory(modules)
include_directories(modules)

# Commented out for CI; change path as appropriate
#juce_set_aax_sdk_path(C:/SDKs/AAX_SDK/)
juce_set_aax_sdk_path(C:/SDKs/AAX_SDK/)

set(JUCE_FORMATS AU VST3 Standalone)
set(JUCE_FORMATS AU VST3)

# Build LV2 only on Linux
if(UNIX AND NOT APPLE)
Expand All @@ -19,10 +18,18 @@ if(UNIX AND NOT APPLE)
endif()

# Build AAX if SDK target exists
#if(TARGET juce_aax_sdk)
# message(STATUS "Building AAX plugin format")
# list(APPEND JUCE_FORMATS AAX)
#endif()
if(TARGET juce_aax_sdk)
message(STATUS "Building AAX plugin format")
list(APPEND JUCE_FORMATS AAX)
endif()

option(BUILD_RELEASE "Set build flags for release builds" OFF)
if(BUILD_RELEASE)
set(HARDENED_RUNTIME_ENABLED YES)
else()
set(HARDENED_RUNTIME_ENABLED NO)
endif()


juce_add_plugin(Chameleon
COMPANY_NAME GuitarML
Expand All @@ -33,7 +40,12 @@ juce_add_plugin(Chameleon
LV2_URI https://github.com/GuitarML/Chameleon
LV2_SHARED_LIBRARY_NAME Chameleon
ICON_BIG resources/logo.png

AU_MAIN_TYPE kAudioUnitType_Effect
AAX_CATEGORY AAX_ePlugInCategory_Harmonic

MICROPHONE_PERMISSION_ENABLED TRUE
HARDENED_RUNTIME_ENABLED ${HARDENED_RUNTIME_ENABLED}
)

# create JUCE header
Expand All @@ -56,11 +68,3 @@ target_compile_definitions(Chameleon
target_link_libraries(Chameleon PUBLIC
juce_plugin_modules
)

# we need these flags for notarization on MacOS
option(MACOS_RELEASE "Set build flags for MacOS Release" OFF)
if(MACOS_RELEASE)
message(STATUS "Setting MacOS release flags...")
set_target_properties(Chameleon_Standalone PROPERTIES
XCODE_ATTRIBUTE_ENABLE_HARDENED_RUNTIME YES)
endif()
170 changes: 0 additions & 170 deletions Chameleon.jucer

This file was deleted.

11 changes: 0 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,14 +60,3 @@ $ cmake -Bbuild
$ cmake --build build --config Release
```
The binaries will be located in `Chameleon/build/Chameleon_artefacts/`

### Build with Projucer

1. Clone or download this repository.
2. Download and install [JUCE](https://juce.com/) This project uses the "Projucer" application from the JUCE website.
3. Initialize and set up submodules
```git submodule update --init --recursive```
4. Open the Chameleon.jucer file and in the appropriate Exporter Header Search Path field, enter the appropriate include paths from the modules folder.
5. Build Chameleon from the Juce Projucer application.

Note: Make sure to build in Release mode unless actually debugging. Debug mode will not keep up with real time playing.

0 comments on commit aff99fe

Please sign in to comment.