First of all, I’m not that skilled when it comes to complicated build systems and so on. I’ve always been a fan of the Projucer being an easy tool to generate all I needed. Until now…
I’m about to build software for embedded Intel FPGA ARM SoCs using C++ and OpenCL. This requires invoking some custom cross compiler toolchain for the ARM and the Intel FPGA compiler for OpenCL as an extra step to compile the CL sources. However the same software should still build on standard Windows/Linux/MacOS targets. I got this working by writing my first CMakeLists (you can find the result here) and running them in CLion and Visual Studio 2017. This worked quite well for some limited test projects only relying on the std lib, however for a real project I now want to add JUCE to be able to set up a JUCE Application and use my collection of own modules.
I first found FRUT, but when I read that this relies on specifying the JUCE-exporters to use I came to the conclusion that this can’t be the right tool to create a JUCE application for a custom target like mine.
I then found juce-cmake which looked a bit more promising to me, but I can’t get it working, maybe due to my lack of CMake expert knowledge. I opened an issue for the errors I’m getting in the repo.
As another solution I thought of manually including the headers and sources, but I’m not sure what’s about all the things normally defined in AppConfig.h and JuceHeader.h. At last I thought about creating a project with the Projucer once to just have AppConfig and JuceHeader and then include all headers and sources manually.
In the end I’m not sure what would be the best solution in terms of maintainability and flexibility, so I could need some input from the community on how to do this right. Has anyone done anything similar already and how did he/she solve it? Would love to get some input before trying out a lot of things that only lead to frustration