willpirkleaudio / ASPiK

Audio Specific PlugIn Kernel Framework for Cross-platform Audio Plugin Development
Other
304 stars 36 forks source link

CMake scripts for samples and VSTSDK searches. #42

Open g40 opened 9 months ago

g40 commented 9 months ago

Building VST3 examples only on Windows 10 using VS2022. Below are the changes to the build options, enabling only VST. Please see detail that follows.

Thanks for listening, and an extremely useful project for building VSTs.

Am happy to submit a PR if asked. Bear i mind that I do have an M2 Mac but never used it for AU/AAX construction :)

# --- Universal Build Flag - when using combined SDKs; can still build independently
#                            with individual flags below
set(UNIVERSAL_SDK_BUILD FALSE)  # <-- set TRUE or FALSE

# --- Individual project builds
set(AAX_SDK_BUILD FALSE)# <-- set TRUE or FALSE
set(AU_SDK_BUILD FALSE)# <-- set TRUE or FALSE
set(VST_SDK_BUILD TRUE)# <-- set TRUE or FALSE

This highlights an issue with https://github.com/willpirkleaudio/ASPiK/blob/develop/samples/demo_fx/DemoVolumePlugin/CMakeLists.txt#L178 where the actual VST3SDK folder name is missing.

As a result CMake fails to generate VS project files.

set(SDK_ROOT ${GRANDPARENT_DIR}) should, I think, be set(SDK_ROOT ${GRANDPARENT_DIR}/vst3sdk)

Without this fix, the CMake output is shown below. With the fix, we have joy.

N.B. I'm sure the same error applies to the individual AAX and AU macro definitions as well. They are missing the actual SDK folder name.

R:\src\audio\test\ASPiK\samples\demo_synth\DemoSynthPlugin\win_build>cmake --fresh ..
-- Building for: Visual Studio 17 2022
Dumping macro values
SDK_ROOT="R:/src/audio/test/ASPiK/samples"
GRANDPARENT_DIR="R:/src/audio/test/ASPiK/samples"
------------------------------------
-- Selecting Windows SDK version 10.0.19041.0 to target Windows 10.0.19045.
-- The C compiler identification is MSVC 19.39.33521.0
-- The CXX compiler identification is MSVC 19.39.33521.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: r:/vs2022/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: r:/vs2022/VC/Tools/MSVC/14.39.33519/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- --- Updated File: project_source/source/PluginKernel/plugindescription.h
--
-- ------> Starting VST Project Build:
--         VST SDK Location: R:/src/audio/test/ASPiK/samples
--
CMake Error at cmake/vst_cmake/CMakeLists.txt:25 (include):
  include could not find requested file:

    SMTG_Global

CMake Error at cmake/vst_cmake/CMakeLists.txt:26 (include):
  include could not find requested file:

    SMTG_AddVST3Library

CMake Error at cmake/vst_cmake/CMakeLists.txt:27 (include):
  include could not find requested file:

    SMTG_Bundle

CMake Error at cmake/vst_cmake/CMakeLists.txt:28 (include):
  include could not find requested file:

    SMTG_ExportedSymbols

CMake Error at cmake/vst_cmake/CMakeLists.txt:29 (include):
  include could not find requested file:

    SMTG_PrefixHeader

CMake Error at cmake/vst_cmake/CMakeLists.txt:30 (include):
  include could not find requested file:

    SMTG_PlatformIOS

CMake Error at cmake/vst_cmake/CMakeLists.txt:31 (include):
  include could not find requested file:

    SMTG_PlatformToolset

CMake Error at cmake/vst_cmake/CMakeLists.txt:32 (include):
  include could not find requested file:

    SMTG_CoreAudioSupport

CMake Error at cmake/vst_cmake/CMakeLists.txt:33 (include):
  include could not find requested file:

    SMTG_AAXSupport

CMake Error at cmake/vst_cmake/CMakeLists.txt:34 (include):
  include could not find requested file:

    SMTG_VstGuiSupport

CMake Error at cmake/vst_cmake/CMakeLists.txt:35 (include):
  include could not find requested file:

    SMTG_UniversalBinary

CMake Error at cmake/vst_cmake/CMakeLists.txt:36 (include):
  include could not find requested file:

    SMTG_AddVST3Options

CMake Error at cmake/vst_cmake/CMakeLists.txt:65 (smtg_get_default_vst3_path):
  Unknown CMake command "smtg_get_default_vst3_path".

-- Configuring incomplete, errors occurred!
jacksonherwig commented 6 months ago

Hey I tried this fix and it still does not work for me. Do you have any more information?

g40 commented 6 months ago

If you let us know your build platform/tooling and what errors you are seeing, help may be possible!