51 lines
2.4 KiB
CMake
51 lines
2.4 KiB
CMake
|
|
if(SMTG_WIN)
|
|
option(SMTG_PLUGIN_TARGET_USER_PROGRAM_FILES_COMMON "use FOLDERID_UserProgramFilesCommon as VST3 target path" ON)
|
|
endif(SMTG_WIN)
|
|
|
|
#------------------------------------------------------------------------
|
|
# VST3 Folder (following the specification)
|
|
function(smtg_get_default_vst3_path)
|
|
if(SMTG_WIN)
|
|
set(win64Found "1")
|
|
if(NOT ${CMAKE_GENERATOR_PLATFORM} STREQUAL "")
|
|
string(FIND ${CMAKE_GENERATOR_PLATFORM} x64 win64Found)
|
|
if(${win64Found} EQUAL -1)
|
|
string(FIND ${CMAKE_GENERATOR_PLATFORM} ARM64 win64Found)
|
|
endif()
|
|
elseif(${CMAKE_GENERATOR} STREQUAL "Visual Studio 15 2017" OR
|
|
${CMAKE_GENERATOR} STREQUAL "Visual Studio 14 2015" OR
|
|
${CMAKE_GENERATOR} STREQUAL "Visual Studio 12 2013" OR
|
|
${CMAKE_GENERATOR} STREQUAL "Visual Studio 11 2012" OR
|
|
${CMAKE_GENERATOR} STREQUAL "Visual Studio 10 2010" OR
|
|
${CMAKE_GENERATOR} STREQUAL "Visual Studio 9 2008")
|
|
set(win64Found "-1")
|
|
else()
|
|
string(FIND ${CMAKE_GENERATOR} Win32 win32Found)
|
|
if(NOT ${win32Found} EQUAL -1)
|
|
set(win64Found "-1")
|
|
endif()
|
|
endif()
|
|
if(${win64Found} EQUAL -1) # for 32bits OS
|
|
if(EXISTS "$ENV{PROGRAMFILES} (x86)")
|
|
set(SMTG_PLUGIN_TARGET_DEFAULT_PATH "$ENV{PROGRAMFILES} (x86)\\Common Files\\VST3" PARENT_SCOPE)
|
|
else()
|
|
set(SMTG_PLUGIN_TARGET_DEFAULT_PATH "$ENV{PROGRAMFILES}\\Common Files\\VST3" PARENT_SCOPE)
|
|
endif()
|
|
else() # for 64bits OS
|
|
#FOLDERID_UserProgramFilesCommon
|
|
if(SMTG_PLUGIN_TARGET_USER_PROGRAM_FILES_COMMON)
|
|
set(SMTG_PLUGIN_TARGET_DEFAULT_PATH "$ENV{LOCALAPPDATA}\\Programs\\Common\\VST3" PARENT_SCOPE)
|
|
else()
|
|
set(SMTG_PLUGIN_TARGET_DEFAULT_PATH "$ENV{CommonProgramW6432}\\VST3" PARENT_SCOPE)
|
|
endif(SMTG_PLUGIN_TARGET_USER_PROGRAM_FILES_COMMON)
|
|
endif()
|
|
elseif(SMTG_MAC)
|
|
set(SMTG_PLUGIN_TARGET_DEFAULT_PATH "$ENV{HOME}/Library/Audio/Plug-Ins/VST3" PARENT_SCOPE)
|
|
elseif(SMTG_LINUX)
|
|
set(SMTG_PLUGIN_TARGET_DEFAULT_PATH "$ENV{HOME}/.vst3" PARENT_SCOPE)
|
|
else()
|
|
message(FATAL_ERROR "[SMTG] unknown platform")
|
|
endif(SMTG_WIN)
|
|
endfunction(smtg_get_default_vst3_path)
|