Skip to content

Commit 1952109

Browse files
committed
CMake (all projects): add INSTALL cmake var so CI can control installation directory
1 parent f708229 commit 1952109

File tree

12 files changed

+198
-158
lines changed

12 files changed

+198
-158
lines changed

Airwindows/CMakeLists.txt

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,11 +40,15 @@ target_compile_options(airwin-registry PRIVATE "-Wno-misleading-indentation;-Wno
4040
target_link_libraries(AirwindowsModules PUBLIC airwin-registry)
4141
set(EXTRA_LINK_OPTIONS $<TARGET_OBJECTS:airwin-registry>)
4242

43+
if("${INSTALL_DIR}" STREQUAL "")
44+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
45+
endif()
46+
4347
create_plugin(
4448
SOURCE_LIB AirwindowsModules
4549
PLUGIN_NAME Airwindows
4650
PLUGIN_JSON ${CMAKE_CURRENT_LIST_DIR}/airwin2rack/plugin.json
4751
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets
48-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins
52+
DESTINATION ${INSTALL_DIR}
4953
)
5054

Bogaudio/CMakeLists.txt

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.22)
22

33
if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
4-
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
4+
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
55
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
66
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7-
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
7+
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
88
else()
99
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10-
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
10+
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
1111
endif()
1212

1313
include(${METAMODULE_SDK_DIR}/plugin.cmake)
@@ -209,16 +209,20 @@ target_include_directories(BogaudioModules
209209
)
210210

211211
target_compile_options(BogaudioModules PRIVATE
212-
$<$<COMPILE_LANGUAGE:CXX>:-include src/mutex-stub.hh>
213-
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-float-conversion>
214-
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-enum-conversion>
212+
$<$<COMPILE_LANGUAGE:CXX>:-include src/mutex-stub.hh>
213+
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-float-conversion>
214+
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-enum-conversion>
215215
)
216216

217+
if("${INSTALL_DIR}" STREQUAL "")
218+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
219+
endif()
220+
217221
create_plugin(
218-
SOURCE_LIB BogaudioModules # This is the cmake target name (defined in add_target)
219-
PLUGIN_NAME Bogaudio # This must match the brand "slug" used in VCV Rack
220-
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
221-
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
222-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins/ # Dir where plugin .mmplugin file should be put
222+
SOURCE_LIB BogaudioModules # This is the cmake target name (defined in add_target)
223+
PLUGIN_NAME Bogaudio # This must match the brand "slug" used in VCV Rack
224+
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
225+
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
226+
DESTINATION ${INSTALL_DIR} # Dir where plugin .mmplugin file should be put
223227
)
224228

ChowDSP/CMakeLists.txt

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.22)
22

33
if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
4-
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
4+
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
55
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
66
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7-
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
7+
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
88
else()
99
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10-
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
10+
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
1111
endif()
1212

1313
include(${METAMODULE_SDK_DIR}/plugin.cmake)
@@ -81,11 +81,14 @@ target_compile_options(ChowDSP PRIVATE
8181

8282
set_property(TARGET ChowDSP PROPERTY CXX_STANDARD 20)
8383

84+
if("${INSTALL_DIR}" STREQUAL "")
85+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
86+
endif()
8487

8588
create_plugin(
86-
SOURCE_LIB ChowDSP # This is the cmake target name (defined in add_target)
87-
PLUGIN_NAME ChowDSP # This must match the brand "slug" used in VCV Rack
88-
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
89-
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
90-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins/ # Dir where plugin .mmplugin file should be put
89+
SOURCE_LIB ChowDSP # This is the cmake target name (defined in add_target)
90+
PLUGIN_NAME ChowDSP # This must match the brand "slug" used in VCV Rack
91+
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
92+
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
93+
DESTINATION ${INSTALL_DIR} # Dir where plugin .mmplugin file should be put
9194
)

CosineKitty-Sapphire/CMakeLists.txt

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.22)
22

33
if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
4-
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
4+
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
55
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
66
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7-
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
7+
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
88
else()
99
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10-
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
10+
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
1111
endif()
1212

1313
include(${METAMODULE_SDK_DIR}/plugin.cmake)
@@ -48,13 +48,13 @@ target_sources(Sapphire
4848
${SOURCE_DIR}/src/sapphire_globals.cpp
4949
${SOURCE_DIR}/src/sapphire_panel.cpp
5050

51-
firmware-stubs.cc
51+
firmware-stubs.cc
5252
plugin.cpp
5353
)
5454

5555
target_include_directories(Sapphire PRIVATE
56-
${SOURCE_DIR}/src
57-
${CMAKE_CURRENT_LIST_DIR}
56+
${SOURCE_DIR}/src
57+
${CMAKE_CURRENT_LIST_DIR}
5858
)
5959

6060
target_compile_options(Sapphire PRIVATE
@@ -64,10 +64,14 @@ target_compile_options(Sapphire PRIVATE
6464

6565
set_property(TARGET Sapphire PROPERTY CXX_STANDARD 20)
6666

67+
if("${INSTALL_DIR}" STREQUAL "")
68+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
69+
endif()
70+
6771
create_plugin(
6872
SOURCE_LIB Sapphire # This is the cmake target name (defined in add_target)
6973
PLUGIN_NAME CosineKitty-Sapphire # This must match the brand "slug" used in VCV Rack
70-
PLUGIN_JSON ${SOURCE_DIR}/plugin.json
74+
PLUGIN_JSON ${SOURCE_DIR}/plugin.json
7175
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
72-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins # Path to where you want the plugin dir output: it can be shared between multiple plugins
76+
DESTINATION ${INSTALL_DIR} # Path to where you want the plugin dir output: it can be shared between multiple plugins
7377
)

CountModula/CMakeLists.txt

Lines changed: 16 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.22)
22

33
if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
4-
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
4+
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
55
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
6-
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7-
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
6+
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7+
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
88
else()
9-
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10-
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
9+
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10+
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
1111
endif()
1212

1313
include(${METAMODULE_SDK_DIR}/plugin.cmake)
@@ -169,22 +169,25 @@ target_sources(CountModula
169169
)
170170

171171
target_include_directories(CountModula PRIVATE
172-
${SOURCE_DIR}/src
172+
${SOURCE_DIR}/src
173173
)
174174

175175
target_compile_options(CountModula
176-
PRIVATE
177-
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-enum-conversion>
176+
PRIVATE
177+
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-enum-conversion>
178178
-Wno-array-bounds #Fix because Menu returns a nullptr
179179
)
180180

181181
set_property(TARGET CountModula PROPERTY CXX_STANDARD 20)
182182

183+
if("${INSTALL_DIR}" STREQUAL "")
184+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
185+
endif()
183186

184187
create_plugin(
185-
SOURCE_LIB CountModula # This is the cmake target name (defined in add_target)
186-
PLUGIN_NAME CountModula # This must match the brand "slug" used in VCV Rack
187-
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
188-
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
189-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins/ # Dir where plugin .mmplugin file should be put
188+
SOURCE_LIB CountModula # This is the cmake target name (defined in add_target)
189+
PLUGIN_NAME CountModula # This must match the brand "slug" used in VCV Rack
190+
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
191+
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
192+
DESTINATION ${INSTALL_DIR} # Dir where plugin .mmplugin file should be put
190193
)

Fundamental/CMakeLists.txt

Lines changed: 56 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.22)
22

33
if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
4-
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
4+
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
55
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
6-
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7-
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
6+
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7+
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
88
else()
9-
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10-
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
9+
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10+
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
1111
endif()
1212

1313
include(${METAMODULE_SDK_DIR}/plugin.cmake)
@@ -25,57 +25,57 @@ set(SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/Fundamental/src)
2525
target_sources(Fundamental
2626
PRIVATE
2727

28-
${SOURCE_DIR}/8vert.cpp
29-
${SOURCE_DIR}/ADSR.cpp
30-
${SOURCE_DIR}/CVMix.cpp
31-
${SOURCE_DIR}/Compare.cpp
32-
${SOURCE_DIR}/Fade.cpp
33-
${SOURCE_DIR}/Gates.cpp
34-
${SOURCE_DIR}/LFO.cpp
35-
${SOURCE_DIR}/Logic.cpp
36-
${SOURCE_DIR}/MidSide.cpp
37-
${SOURCE_DIR}/Mixer.cpp
38-
${SOURCE_DIR}/Mult.cpp
39-
${SOURCE_DIR}/Mutes.cpp
40-
${SOURCE_DIR}/Noise.cpp
41-
${SOURCE_DIR}/Octave.cpp
42-
${SOURCE_DIR}/Process.cpp
43-
${SOURCE_DIR}/Pulses.cpp
44-
${SOURCE_DIR}/Push.cpp
45-
${SOURCE_DIR}/Quantizer.cpp
46-
${SOURCE_DIR}/Random.cpp
47-
${SOURCE_DIR}/RandomValues.cpp
48-
${SOURCE_DIR}/Rescale.cpp
49-
${SOURCE_DIR}/SEQ3.cpp
50-
${SOURCE_DIR}/SHASR.cpp
51-
${SOURCE_DIR}/SequentialSwitch.cpp
52-
${SOURCE_DIR}/Unity.cpp
53-
${SOURCE_DIR}/VCA-1.cpp
54-
${SOURCE_DIR}/VCA.cpp
55-
${SOURCE_DIR}/VCF.cpp
56-
${SOURCE_DIR}/VCMixer.cpp
57-
${SOURCE_DIR}/VCO.cpp
58-
59-
quant.cc
28+
${SOURCE_DIR}/8vert.cpp
29+
${SOURCE_DIR}/ADSR.cpp
30+
${SOURCE_DIR}/CVMix.cpp
31+
${SOURCE_DIR}/Compare.cpp
32+
${SOURCE_DIR}/Fade.cpp
33+
${SOURCE_DIR}/Gates.cpp
34+
${SOURCE_DIR}/LFO.cpp
35+
${SOURCE_DIR}/Logic.cpp
36+
${SOURCE_DIR}/MidSide.cpp
37+
${SOURCE_DIR}/Mixer.cpp
38+
${SOURCE_DIR}/Mult.cpp
39+
${SOURCE_DIR}/Mutes.cpp
40+
${SOURCE_DIR}/Noise.cpp
41+
${SOURCE_DIR}/Octave.cpp
42+
${SOURCE_DIR}/Process.cpp
43+
${SOURCE_DIR}/Pulses.cpp
44+
${SOURCE_DIR}/Push.cpp
45+
${SOURCE_DIR}/Quantizer.cpp
46+
${SOURCE_DIR}/Random.cpp
47+
${SOURCE_DIR}/RandomValues.cpp
48+
${SOURCE_DIR}/Rescale.cpp
49+
${SOURCE_DIR}/SEQ3.cpp
50+
${SOURCE_DIR}/SHASR.cpp
51+
${SOURCE_DIR}/SequentialSwitch.cpp
52+
${SOURCE_DIR}/Unity.cpp
53+
${SOURCE_DIR}/VCA-1.cpp
54+
${SOURCE_DIR}/VCA.cpp
55+
${SOURCE_DIR}/VCF.cpp
56+
${SOURCE_DIR}/VCMixer.cpp
57+
${SOURCE_DIR}/VCO.cpp
58+
59+
quant.cc
6060

6161
# Screens don't work in MM:
62-
# ${SOURCE_DIR}/Scope.cpp
62+
# ${SOURCE_DIR}/Scope.cpp
6363

6464
# Not relevent without polyphony:
65-
# ${SOURCE_DIR}/Merge.cpp
66-
# ${SOURCE_DIR}/Split.cpp # not relevent without polyphony
67-
# ${SOURCE_DIR}/Sum.cpp # not relevent without polyphony
68-
# ${SOURCE_DIR}/Viz.cpp #not relevent without polyphony
65+
# ${SOURCE_DIR}/Merge.cpp
66+
# ${SOURCE_DIR}/Split.cpp # not relevent without polyphony
67+
# ${SOURCE_DIR}/Sum.cpp # not relevent without polyphony
68+
# ${SOURCE_DIR}/Viz.cpp #not relevent without polyphony
6969

70-
# Uses filesystem:
71-
# ${SOURCE_DIR}/WTLFO.cpp
72-
# ${SOURCE_DIR}/WTVCO.cpp
73-
# ${SOURCE_DIR}/dr_wav.c
70+
# Uses filesystem:
71+
# ${SOURCE_DIR}/WTLFO.cpp
72+
# ${SOURCE_DIR}/WTVCO.cpp
73+
# ${SOURCE_DIR}/dr_wav.c
7474

7575
# src_new src_delete src_process
76-
# ${SOURCE_DIR}/Delay.cpp
76+
# ${SOURCE_DIR}/Delay.cpp
7777

78-
plugin.cpp
78+
plugin.cpp
7979
)
8080

8181
target_include_directories(Fundamental PRIVATE
@@ -89,16 +89,19 @@ target_compile_options(Fundamental PRIVATE
8989
)
9090

9191
target_compile_definitions(Fundamental PRIVATE
92-
METAMODULE
92+
METAMODULE
9393
)
9494

9595
set_property(TARGET Fundamental PROPERTY CXX_STANDARD 20)
9696

97+
if("${INSTALL_DIR}" STREQUAL "")
98+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
99+
endif()
97100

98101
create_plugin(
99-
SOURCE_LIB Fundamental # This is the cmake target name (defined in add_target)
100-
PLUGIN_NAME Fundamental # This must match the brand "slug" used in VCV Rack
102+
SOURCE_LIB Fundamental # This is the cmake target name (defined in add_target)
103+
PLUGIN_NAME Fundamental # This must match the brand "slug" used in VCV Rack
101104
PLUGIN_JSON ${CMAKE_CURRENT_LIST_DIR}/Fundamental/plugin.json
102-
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
103-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins # Path to where you want the plugin dir output: it can be shared between multiple plugins
105+
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
106+
DESTINATION ${INSTALL_DIR} # Path to where you want the plugin dir output: it can be shared between multiple plugins
104107
)

Geodesics/CMakeLists.txt

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
cmake_minimum_required(VERSION 3.22)
22

33
if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
4-
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
4+
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
55
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
66
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
7-
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
7+
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
88
else()
99
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
10-
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
10+
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
1111
endif()
1212

1313
include(${METAMODULE_SDK_DIR}/plugin.cmake)
@@ -42,16 +42,19 @@ target_sources(Geodesics
4242
)
4343

4444
target_include_directories(Geodesics PRIVATE
45-
${SOURCE_DIR}/src
45+
${SOURCE_DIR}/src
4646
)
4747

4848
set_property(TARGET Geodesics PROPERTY CXX_STANDARD 20)
4949

50+
if("${INSTALL_DIR}" STREQUAL "")
51+
set(INSTALL_DIR ${CMAKE_CURRENT_LIST_DIR}/metamodule-plugins)
52+
endif()
5053

5154
create_plugin(
52-
SOURCE_LIB Geodesics # This is the cmake target name (defined in add_target)
53-
PLUGIN_NAME Geodesics # This must match the brand "slug" used in VCV Rack
54-
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
55-
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
56-
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins/ # Dir where plugin .mmplugin file should be put
55+
SOURCE_LIB Geodesics # This is the cmake target name (defined in add_target)
56+
PLUGIN_NAME Geodesics # This must match the brand "slug" used in VCV Rack
57+
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
58+
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
59+
DESTINATION ${INSTALL_DIR} # Dir where plugin .mmplugin file should be put
5760
)

0 commit comments

Comments
 (0)