diff --git a/docs/PatchFormat/main.md b/docs/PatchFormat/main.md index 48c5d2ef..e4fcab2c 100644 --- a/docs/PatchFormat/main.md +++ b/docs/PatchFormat/main.md @@ -389,14 +389,29 @@ The value should be the path to a javascript file that will be executed. This sc # Exporting patches -### Building a native VST or AudioUnit from a patch +### Building a native CLAP from a patch + +The `cmaj` tool supports code-generation of a [CLAP](https://github.com/free-audio/clap) C++ project from a Cmajor patch. The project created is a pure static C++ project that doesn't perform any JIT compilation when it runs. + +To use this feature, run the command line app in `generate` mode, e.g. + +``` +% cmaj generate --target=clap + --output=[path to a target folder for the project] + --clapIncludePath=[path to your CLAP include folder] + MyAmazingPatch.cmajorpatch +``` + +It will create a folder containing some source files and a cmake project. + +### Building a native JUCE VST or AudioUnit from a patch The `cmaj` tool supports code-generation of a JUCE C++ project that can be used to natively compile a VST/AudioUnit/AAX plugin for a patch. The resulting code doesn't do any JIT compilation, it simply translates the Cmajor code to pure C++ so that it can be built statically. To use this feature, run the command line app in `generate` mode, e.g. ``` -% cmaj generate --target=plugin +% cmaj generate --target=juce --output=[path to a target folder for the project] --jucePath=[path to your JUCE folder] MyAmazingPatch.cmajorpatch diff --git a/docs/PatchFormat/patch-guis/building-a-native-clap-from-a-patch.md b/docs/PatchFormat/patch-guis/building-a-native-clap-from-a-patch.md new file mode 100644 index 00000000..a26b5c93 --- /dev/null +++ b/docs/PatchFormat/patch-guis/building-a-native-clap-from-a-patch.md @@ -0,0 +1,8 @@ +--- +layout: default +title: Building a native CLAP from a patch +permalink: /docs/PatchFormat#building-a-native-clap-from-a-patch +parent: Patch GUIs +grand_parent: Patch Format +nav_order: 5 +--- diff --git a/docs/PatchFormat/patch-guis/building-a-native-juce-vst-or-audiounit-from-a-patch.md b/docs/PatchFormat/patch-guis/building-a-native-juce-vst-or-audiounit-from-a-patch.md new file mode 100644 index 00000000..21e6b332 --- /dev/null +++ b/docs/PatchFormat/patch-guis/building-a-native-juce-vst-or-audiounit-from-a-patch.md @@ -0,0 +1,8 @@ +--- +layout: default +title: Building a native JUCE VST or AudioUnit from a patch +permalink: /docs/PatchFormat#building-a-native-juce-vst-or-audiounit-from-a-patch +parent: Patch GUIs +grand_parent: Patch Format +nav_order: 6 +--- diff --git a/docs/PatchFormat/patch-guis/building-a-native-vst-or-audiounit-from-a-patch.md b/docs/PatchFormat/patch-guis/building-a-native-vst-or-audiounit-from-a-patch.md deleted file mode 100644 index 2ce4fb37..00000000 --- a/docs/PatchFormat/patch-guis/building-a-native-vst-or-audiounit-from-a-patch.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -layout: default -title: Building a native VST or AudioUnit from a patch -permalink: /docs/PatchFormat#building-a-native-vst-or-audiounit-from-a-patch -parent: Patch GUIs -grand_parent: Patch Format -nav_order: 5 ---- diff --git a/docs/PatchFormat/patch-guis/building-a-web-audio-audioworkletnode-from-a-patch.md b/docs/PatchFormat/patch-guis/building-a-web-audio-audioworkletnode-from-a-patch.md index 2b8caa14..21ae40ef 100644 --- a/docs/PatchFormat/patch-guis/building-a-web-audio-audioworkletnode-from-a-patch.md +++ b/docs/PatchFormat/patch-guis/building-a-web-audio-audioworkletnode-from-a-patch.md @@ -4,5 +4,5 @@ title: Building a Web Audio `AudioWorkletNode` from a patch permalink: /docs/PatchFormat#building-a-web-audio-audioworkletnode-from-a-patch parent: Patch GUIs grand_parent: Patch Format -nav_order: 6 +nav_order: 7 --- diff --git a/docs/StandardLibrary/main.html b/docs/StandardLibrary/main.html index 8f807332..057b7e9e 100644 --- a/docs/StandardLibrary/main.html +++ b/docs/StandardLibrary/main.html @@ -22,29 +22,18 @@
std
namespace is the root for all the built-in Cmajor library code.
The
std
namespace is the root for all the built-in Cmajor library code. -It contains various child namespaces that group tasks into various sub-categories. -