Missing header guard in juce_IncludeModuleHeaders.h


#1

Hello.

I don't use Introjucer to build my plugins but a different build system (for lv2 + vst scripted builds).
I had some changes in place in the juce code to make it build for me.

I've got a developer that wants to build juce-based LV2 plugins too,
but using the generated VST Makefile from Introjucer, slightly modified to build as LV2.

In order for those build methods to work (custom + Introjucer) the modules/juce_audio_plugin_client/utility/juce_IncludeModuleHeaders.h file needs the usual header guard. ie:

#ifndef JUCE_INCLUDEMODULEHEADERS_H_INCLUDED
#define JUCE_INCLUDEMODULEHEADERS_H_INCLUDED
// code...
#endif // JUCE_INCLUDEMODULEHEADERS_H_INCLUDED

Please add those.

Thanks.

 

PS: I've been cleaning up the LV2 wrapper code so it can be imported into juce as-is.
The only missing thing is a RFC base64 implementation in juce.
I'm using some borrowed code for now, which might not suitable for mainline juce.

 


#2

Ok, I can add that header guard.

And yes, thanks - would be keen to see your LV2 changes. (I actually also have a binary->base64 function that I should add to the library, but haven't done the other direction yet.)

 


#3

Cool, thanks.

The LV2 wrapper is on my little juce fork here https://github.com/DISTRHO/juce

You can simply copy&paste the plugin_client/LV2 folder to get it to work.
Juce doens't have a LV2 plugin type right now, so the code has this:

createPluginFilterOfType (AudioProcessor::wrapperType_VST)

I need to fix some oddities about the time position code,
and perhaps create an LV2 extension to get a text string from parameters like VST does.
LV2 uses real values, so it doens't actually need this.
Sadly juce doesn't support real values so I have to create something as a workaround.