Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -44,3 +44,6 @@
[submodule "Fundamental2"]
path = Fundamental
url = https://github.com/4ms/VCVRack-Fundamental
[submodule "Vostok/VCV"]
path = Vostok/VCV
url = https://github.com/Vostok-Instruments/Vostok_VCVRack
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ set(PLUGINS
OrangeLine
RebelTech
Venom
Vostok
)

foreach(plugin ${PLUGINS})
Expand Down
73 changes: 73 additions & 0 deletions Vostok/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
cmake_minimum_required(VERSION 3.22)

if(NOT "${METAMODULE_SDK_DIR}" STREQUAL "")
message("METAMODULE_SDK_DIR set by CMake variable ${METAMODULE_SDK_DIR}")
elseif (DEFINED ENV{METAMODULE_SDK_DIR})
set(METAMODULE_SDK_DIR "$ENV{METAMODULE_SDK_DIR}")
message("METAMODULE_SDK_DIR set by environment variable ${METAMODULE_SDK_DIR}")
else()
set(METAMODULE_SDK_DIR "${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugin-sdk")
message("METAMODULE_SDK_DIR set to default: ${METAMODULE_SDK_DIR}")
endif()

include(${METAMODULE_SDK_DIR}/plugin.cmake)

project(VostokInstrumentsMetaModulePlugin
VERSION 0.1
DESCRIPTION "Vostok Instruments for MetaModule"
LANGUAGES C CXX ASM
)

add_library(VostokInstruments STATIC)

# Add sources from the Rack source repo
set(SOURCE_DIR ${CMAKE_CURRENT_LIST_DIR}/VCV)




message([STATUS] "SOURCE_DIR : ${SOURCE_DIR}")


target_compile_options(VostokInstruments PRIVATE
-Wdouble-promotion
$<$<COMPILE_LANGUAGE:CXX>:-Wno-deprecated-enum-float-conversion>
-Wno-alloc-size-larger-than
-fsingle-precision-constant
-ffast-math
-funsafe-math-optimizations
-Ofast
)


target_sources(VostokInstruments PRIVATE
# ${SOURCE_DIR}/src/plugin.cpp # Note: this file contains init(rack::Plugin*)
${SOURCE_DIR}/src/Asset.cpp
${SOURCE_DIR}/src/Atlas.cpp
${SOURCE_DIR}/src/Ceres.cpp
${SOURCE_DIR}/src/Fuji.cpp
${SOURCE_DIR}/src/Hive.cpp
${SOURCE_DIR}/src/Path.cpp
${SOURCE_DIR}/src/Sena.cpp
${SOURCE_DIR}/src/Trace.cpp
# Add any additional module source files here
${SOURCE_DIR}/src/plugin.cpp
)

# Add includes and compile options for source repo
target_include_directories(VostokInstruments PRIVATE
${SOURCE_DIR}/src
${SOURCE_DIR}/src/ripples
)

set_property(TARGET VostokInstruments PROPERTY CXX_STANDARD 23)


# Call this to link and create the plugin file
create_plugin(
SOURCE_LIB VostokInstruments # The cmake target name (defined in add_target)
PLUGIN_NAME VostokInstruments # This must match the brand "slug" used in VCV Rack
PLUGIN_JSON ${SOURCE_DIR}/plugin.json # Path to the plugin.json file used by VCV Rack
SOURCE_ASSETS ${CMAKE_CURRENT_LIST_DIR}/assets # Path to the assets/ dir containing the PNGs
DESTINATION ${CMAKE_CURRENT_LIST_DIR}/../metamodule-plugins # Path to where you want the plugin file output
)
1 change: 1 addition & 0 deletions Vostok/VCV
Submodule VCV added at e68385
Binary file added Vostok/assets/components/SwitchNarrowHoriz_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/SwitchNarrowHoriz_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/SwitchNarrowHoriz_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/SwitchNarrow_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/SwitchNarrow_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/SwitchNarrow_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/VCVSlider.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/VCVSliderHandle.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/VCVSliderHandleHoriz.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/components/VCVSliderHoriz.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Asset.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Atlas.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Ceres.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Fuji.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Hive.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Path.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Sena.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added Vostok/assets/panels/Trace.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 41 additions & 0 deletions Vostok/plugin-mm.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
{
"MetaModuleBrandName": "VostokInstruments",
"MetaModulePluginMaintainer": "Ewan Hemingway, Vostok Instruments",
"MetaModulePluginMaintainerEmail": "",
"MetaModulePluginMaintainerUrl": "",
"MetaModuleDescription": "",
"MetaModuleIncludedModules": [
{
"slug": "Path",
"name": "Path"
},
{
"slug": "Trace",
"name": "Trace"
},
{
"slug": "Asset",
"name": "Asset"
},
{
"slug": "Atlas",
"name": "Atlas"
},
{
"slug": "Ceres",
"name": "Ceres"
},
{
"slug": "Fuji",
"name": "Fuji"
},
{
"slug": "Sena",
"name": "Sena"
},
{
"slug": "Hive",
"name": "Hive"
}
]
}