- Does nothing except `#include "./OpenShotAudio.h"`
- Linking/copying the header to both names caused redefinition
errors if both were used in the same project.
The header files JuceLibraryCode/*.h are no longer used. Instead there
are templates in include/, which CMake will use to generate headers in
CMAKE_CURRENT_BINARY_DIR/include/ at build time.
* include/JuceHeader.h.in
- variables in namespace ProjectInfo are populated with data from
the corresponding CMake variables
* include/AppConfig.h.in
- No changes currently, CMake will simply copy this file to AppConfig.h
* Version information is now _defined_ at the top of the root
`CMakeLists.txt` file, which is now the primary source of that
data. Other instances of version information will consume the
CMake-defined version information via the appropriate variables.
* `include/Version.h` is eliminated, as it was never used for
any purpose other than to set the version information for CMake.
* Those GLOBAL PROPERTY entries for JUCE_WINDOWS, JUCE_LINUX, etc.
Are removed. Those never had any effect, as CMake properties are
not defined during the build. The Juce header files automatically
determine the value of the JUCE_ defines.
* The source file globbing (which was always fragile) is replaced
by a list of modules, from which filenames are generated.
* "-DDEBUG" is added to the CXX_FLAGS for debug builds, and
CMAKE_BUILD_TYPE is set to "Debug" if not set by the user
(A comment in the CMakeLists.txt explains in more detail)
* The CMakeLists files are also updated to...
- Use GnuInstallDirs
- Be less deeply nested, e.g.
IF(WIN32)
ELSEIF(UNIX)
IF(APPLE)
ELSE()
ENDIF()
ENDIF()
is replaced by
if(WIN32)
endif()
if(UNIX AND APPLE)
endif()
if(UNIX AND NOT APPLE)
endif()
as in practice, at most one of those will ever be true.