Browse Source

Compatibility with cmake 3.7

pull/269/head
Jean Pierre Cimalando 4 years ago
parent
commit
0533e2e64b
1 changed files with 31 additions and 7 deletions
  1. +31
    -7
      cmake/DPF-plugin.cmake

+ 31
- 7
cmake/DPF-plugin.cmake View File

@@ -130,7 +130,9 @@ function(dpf__build_jack NAME DGL_LIBRARY)
return()
endif()

dpf__add_executable("${NAME}-jack")
dpf__create_dummy_source_list(_no_srcs)

dpf__add_executable("${NAME}-jack" ${_no_srcs})
dpf__add_plugin_main("${NAME}-jack" "jack")
dpf__add_ui_main("${NAME}-jack" "jack" "${DGL_LIBRARY}")
target_link_libraries("${NAME}-jack" PRIVATE "${NAME}-dsp" "${NAME}-ui")
@@ -149,7 +151,9 @@ endfunction()
# Add build rules for a DSSI plugin.
#
function(dpf__build_ladspa NAME)
dpf__add_module("${NAME}-ladspa")
dpf__create_dummy_source_list(_no_srcs)

dpf__add_module("${NAME}-ladspa" ${_no_srcs})
dpf__add_plugin_main("${NAME}-ladspa" "ladspa")
target_link_libraries("${NAME}-ladspa" PRIVATE "${NAME}-dsp")
set_target_properties("${NAME}-ladspa" PROPERTIES
@@ -172,7 +176,9 @@ function(dpf__build_dssi NAME DGL_LIBRARY)
return()
endif()

dpf__add_module("${NAME}-dssi")
dpf__create_dummy_source_list(_no_srcs)

dpf__add_module("${NAME}-dssi" ${_no_srcs})
dpf__add_plugin_main("${NAME}-dssi" "dssi")
target_link_libraries("${NAME}-dssi" PRIVATE "${NAME}-dsp")
set_target_properties("${NAME}-dssi" PROPERTIES
@@ -181,7 +187,7 @@ function(dpf__build_dssi NAME DGL_LIBRARY)
PREFIX "")

if(DGL_LIBRARY)
dpf__add_executable("${NAME}-dssi-ui")
dpf__add_executable("${NAME}-dssi-ui" ${_no_srcs})
dpf__add_ui_main("${NAME}-dssi-ui" "dssi" "${DGL_LIBRARY}")
target_link_libraries("${NAME}-dssi-ui" PRIVATE "${NAME}-ui")
set_target_properties("${NAME}-dssi-ui" PROPERTIES
@@ -200,7 +206,9 @@ endfunction()
# Add build rules for a LV2 plugin.
#
function(dpf__build_lv2 NAME DGL_LIBRARY MONOLITHIC)
dpf__add_module("${NAME}-lv2")
dpf__create_dummy_source_list(_no_srcs)

dpf__add_module("${NAME}-lv2" ${_no_srcs})
dpf__add_plugin_main("${NAME}-lv2" "lv2")
target_link_libraries("${NAME}-lv2" PRIVATE "${NAME}-dsp")
set_target_properties("${NAME}-lv2" PROPERTIES
@@ -215,7 +223,7 @@ function(dpf__build_lv2 NAME DGL_LIBRARY MONOLITHIC)
set_target_properties("${NAME}-lv2" PROPERTIES
OUTPUT_NAME "${NAME}")
else()
dpf__add_module("${NAME}-lv2-ui")
dpf__add_module("${NAME}-lv2-ui" ${_no_srcs})
dpf__add_ui_main("${NAME}-lv2-ui" "lv2" "${DGL_LIBRARY}")
target_link_libraries("${NAME}-lv2-ui" PRIVATE "${NAME}-ui")
set_target_properties("${NAME}-lv2-ui" PROPERTIES
@@ -241,7 +249,9 @@ endfunction()
# Add build rules for a VST plugin.
#
function(dpf__build_vst NAME DGL_LIBRARY)
dpf__add_module("${NAME}-vst")
dpf__create_dummy_source_list(_no_srcs)

dpf__add_module("${NAME}-vst" ${_no_srcs})
dpf__add_plugin_main("${NAME}-vst" "vst")
dpf__add_ui_main("${NAME}-vst" "vst" "${DGL_LIBRARY}")
target_link_libraries("${NAME}-vst" PRIVATE "${NAME}-dsp" "${NAME}-ui")
@@ -479,6 +489,20 @@ function(dpf__ensure_sources_non_empty VAR)
set("${VAR}" "${_file}" PARENT_SCOPE)
endfunction()

# dpf__create_dummy_source_list
# ------------------------------------------------------------------------------
#
# Create a dummy source list which is equivalent to compiling nothing.
# This is only for compatibility with older CMake versions, which refuse to add
# targets without any sources.
#
macro(dpf__create_dummy_source_list VAR)
set("${VAR}")
if(CMAKE_VERSION VERSION_LESS "3.11")
dpf__ensure_sources_non_empty("${VAR}")
endif()
endmacro()

# dpf__warn_once
# ------------------------------------------------------------------------------
#


Loading…
Cancel
Save