Skip to content
Open
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
4 changes: 4 additions & 0 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,10 @@ if(APPLE OR WIN32 OR TARGET X11::X11)
if(TARGET score_plugin_clap)
add_subdirectory(clappuppet)
endif()

if(TARGET score_plugin_lv2)
add_subdirectory(lv2puppet)
endif()
endif()

if(LINUX)
Expand Down
76 changes: 76 additions & 0 deletions src/lv2puppet/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
project(lv2puppet CXX)

find_path(LV2_PATH lv2/lv2plug.in/ns/ext/atom/atom.h
HINTS "${OSSIA_SDK}/lv2/include")
if(NOT TARGET Lilv)
find_package(Lilv)
endif()
if(NOT TARGET Lilv OR NOT LV2_PATH)
message(STATUS "lv2puppet: Lilv or LV2_PATH not found, skipping")
return()
endif()

add_executable(ossia-score-lv2puppet WIN32
lv2puppet.cpp
../vstpuppet/window.cpp
)
target_compile_definitions(ossia-score-lv2puppet PRIVATE HAS_LV2)
target_link_libraries(
ossia-score-lv2puppet
PRIVATE
$<COMPILE_ONLY:ossia>
$<BUILD_INTERFACE:fmt::fmt>
Lilv
Threads::Threads
${CMAKE_DL_LIBS})

if(APPLE)
find_library(Foundation_FK Foundation)
find_library(Cocoa_FK Cocoa)
target_link_libraries(ossia-score-lv2puppet PRIVATE
${Foundation_FK}
${Cocoa_FK}
)
elseif(WIN32)
target_link_libraries(ossia-score-lv2puppet PRIVATE user32 gdi32 ws2_32)
else()
target_include_directories(ossia-score-lv2puppet PRIVATE "${X11_X11_INCLUDE_PATH}")
endif()

target_include_directories(
ossia-score-lv2puppet
PRIVATE
"${SCORE_SRC}/lib"
"${LV2_PATH}"
)

setup_score_common_exe_features(ossia-score-lv2puppet)

set_target_properties(
ossia-score-lv2puppet
PROPERTIES
DISABLE_PRECOMPILE_HEADERS TRUE
)

if(APPLE AND SCORE_DEPLOYMENT_BUILD)
set_target_properties(
ossia-score-lv2puppet
PROPERTIES
MACOSX_BUNDLE TRUE
MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.plist.in"
RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/ossia score.app/Contents/MacOS")
install(
TARGETS ossia-score-lv2puppet
BUNDLE DESTINATION "ossia score.app/Contents/MacOS"
COMPONENT OssiaScore)
elseif(WIN32)
install(
TARGETS ossia-score-lv2puppet
RUNTIME DESTINATION "${SCORE_BIN_INSTALL_DIR}"
COMPONENT OssiaScore)
else()
install(
TARGETS ossia-score-lv2puppet
RUNTIME DESTINATION bin
COMPONENT OssiaScore)
endif()
38 changes: 38 additions & 0 deletions src/lv2puppet/Info.plist.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>ossia-score-lv2puppet</string>
<key>CFBundleGetInfoString</key>
<string>ossia-score-lv2puppet</string>
<key>CFBundleIconFile</key>
<string></string>
<key>CFBundleIdentifier</key>
<string>io.ossia.lv2puppet</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleLongVersionString</key>
<string>@SCORE_VERSION@</string>
<key>CFBundleName</key>
<string>ossia-score-lv2puppet</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>@SCORE_VERSION@</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>@SCORE_VERSION@</string>
<key>CSResourcesFileMapped</key>
<true/>
<key>LSRequiresCarbon</key>
<true/>
<key>NSHumanReadableCopyright</key>
<string></string>
<key>NSHighResolutionCapable</key>
<true/>
</dict>
</plist>
38 changes: 38 additions & 0 deletions src/lv2puppet/entitlements.plist
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>com.apple.security.cs.allow-jit</key>
<true/>
<key>com.apple.security.cs.allow-unsigned-executable-memory</key>
<true/>
<key>com.apple.security.app-sandbox</key>
<false/>
<key>com.apple.security.cs.disable-library-validation</key>
<true/>
<key>com.apple.security.assets.music.read-write</key>
<true/>
<key>com.apple.security.files.downloads.read-write</key>
<true/>
<key>com.apple.security.device.firewire</key>
<true/>
<key>com.apple.security.device.microphone</key>
<true/>
<key>com.apple.security.device.usb</key>
<true/>
<key>com.apple.security.device.audio-input</key>
<true/>
<key>com.apple.security.device.camera</key>
<true/>
<key>com.apple.security.device.bluetooth</key>
<true/>
<key>com.apple.security.network.server</key>
<true/>
<key>com.apple.security.network.client</key>
<true/>
<key>com.apple.security.files.user-selected.read-write</key>
<true/>
<key>com.apple.security.files.bookmarks.app-scope</key>
<true/>
</dict>
</plist>
Loading
Loading