Browse Source

Support clap in cmake, always define HAVE_JACK

Signed-off-by: falkTX <falktx@falktx.com>
pull/409/head
falkTX 2 years ago
parent
commit
30cf55aa15
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
1 changed files with 38 additions and 2 deletions
  1. +38
    -2
      cmake/DPF-plugin.cmake

+ 38
- 2
cmake/DPF-plugin.cmake View File

@@ -22,7 +22,7 @@
# add_subdirectory(DPF)
#
# dpf_add_plugin(MyPlugin
# TARGETS lv2 vst2 vst3
# TARGETS clap lv2 vst2 vst3
# UI_TYPE opengl
# FILES_DSP
# src/MyPlugin.cpp
@@ -71,7 +71,7 @@ include(CMakeParseArguments)
#
# `TARGETS` <tgt1>...<tgtN>
# a list of one of more of the following target types:
# `jack`, `ladspa`, `dssi`, `lv2`, `vst2`, `vst3`
# `jack`, `ladspa`, `dssi`, `lv2`, `vst2`, `vst3`, `clap`
#
# `UI_TYPE` <type>
# the user interface type: `opengl` (default), `cairo`
@@ -162,6 +162,8 @@ function(dpf_add_plugin NAME)
dpf__build_vst2("${NAME}" "${_dgl_library}")
elseif(_target STREQUAL "vst3")
dpf__build_vst3("${NAME}" "${_dgl_library}")
elseif(_target STREQUAL "clap")
dpf__build_clap("${NAME}" "${_dgl_library}")
else()
message(FATAL_ERROR "Unrecognized target type for plugin: ${_target}")
endif()
@@ -432,6 +434,39 @@ function(dpf__build_vst3 NAME DGL_LIBRARY)
endif()
endfunction()

# dpf__build_clap
# ------------------------------------------------------------------------------
#
# Add build rules for a VST2 plugin.
#
function(dpf__build_clap NAME DGL_LIBRARY)
dpf__create_dummy_source_list(_no_srcs)

dpf__add_module("${NAME}-clap" ${_no_srcs})
dpf__add_plugin_main("${NAME}-clap" "clap")
dpf__add_ui_main("${NAME}-clap" "clap" "${DGL_LIBRARY}")
dpf__set_module_export_list("${NAME}-clap" "clap")
target_link_libraries("${NAME}-clap" PRIVATE "${NAME}-dsp" "${NAME}-ui")
set_target_properties("${NAME}-clap" PROPERTIES
LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin/$<0:>"
ARCHIVE_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/obj/clap/$<0:>"
OUTPUT_NAME "${NAME}"
PREFIX ""
SUFFIX ".clap")

if(APPLE)
set_target_properties("${NAME}-clap" PROPERTIES
LIBRARY_OUTPUT_DIRECTORY "${PROJECT_BINARY_DIR}/bin/${NAME}.clap/Contents/MacOS/$<0:>"
OUTPUT_NAME "${NAME}"
SUFFIX "")
set(INFO_PLIST_PROJECT_NAME "${NAME}")
configure_file("${DPF_ROOT_DIR}/utils/plugin.bundle/Contents/Info.plist"
"${PROJECT_BINARY_DIR}/bin/${NAME}.clap/Contents/Info.plist" @ONLY)
file(COPY "${DPF_ROOT_DIR}/utils/plugin.bundle/Contents/PkgInfo"
DESTINATION "${PROJECT_BINARY_DIR}/bin/${NAME}.clap/Contents")
endif()
endfunction()

# dpf__add_dgl_cairo
# ------------------------------------------------------------------------------
#
@@ -690,6 +725,7 @@ function(dpf__set_target_defaults NAME)
C_VISIBILITY_PRESET "hidden"
CXX_VISIBILITY_PRESET "hidden"
VISIBILITY_INLINES_HIDDEN TRUE)
target_compile_definitions("${NAME}" PUBLIC "HAVE_JACK")
if(WIN32)
target_compile_definitions("${NAME}" PUBLIC "NOMINMAX")
endif()


Loading…
Cancel
Save