Browse Source

added Jack support

pull/208/head
Benjamin 6 years ago
parent
commit
22bda5cd25
4 changed files with 62 additions and 4 deletions
  1. +20
    -0
      cmake/DPFFunctions.cmake
  2. +36
    -0
      cmake/FindJack.cmake
  3. +2
    -2
      dgl/CMakeLists.txt
  4. +4
    -2
      examples/Info/CMakeLists.txt

+ 20
- 0
cmake/DPFFunctions.cmake View File

@@ -1,3 +1,4 @@

# Sets GET_LIBS_AND_DEFINES_LIBS and GET_LIBS_AND_DEFINES_DEFINES variables in parentscope. Link to this !
function(GET_LIBS_AND_DEFINES UI_BACKEND)
if(NOT UI_BACKEND)
@@ -18,6 +19,25 @@ function(GET_LIBS_AND_DEFINES UI_BACKEND)
endfunction(GET_LIBS_AND_DEFINES UI_BACKEND)


function(ADD_JACK)
find_package(Jack)
if(JACK_FOUND)
set(oneValueArgs TARGET UI_BACKEND)
set(multiValueArgs SOURCES INCLUDE_DIRECTORIES DEFINES)
cmake_parse_arguments(PLUGIN_PARAM "" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} )

GET_LIBS_AND_DEFINES(${PLUGIN_PARAM_UI_BACKEND} )

add_executable(${PLUGIN_PARAM_TARGET} ${PLUGIN_PARAM_SOURCES})
SET_TARGET_PROPERTIES(${PLUGIN_PARAM_TARGET} PROPERTIES PREFIX "")
target_link_libraries(${PLUGIN_PARAM_TARGET} ${GET_LIBS_AND_DEFINES_LIBS} DPF ${JACK_LIBRARIES} )
target_include_directories(${PLUGIN_PARAM_TARGET} PUBLIC ${PLUGIN_PARAM_INCLUDE_DIRECTORIES})
target_compile_definitions(${PLUGIN_PARAM_TARGET} PUBLIC ${PLUGIN_PARAM_DEFINES} ${GET_LIBS_AND_DEFINES_DEFINES} DISTRHO_PLUGIN_TARGET_JACK)
elseif(JACK_FOUND)
message("Couldnt build Jack, because Jack not found.")
endif(JACK_FOUND)
endfunction(ADD_JACK)

# Parameter to use:
# TARGET: Name for the generated VST
# UI_BACKEND; weather it should be NONE,EXTERNAL,OPENGL or CAIRO


+ 36
- 0
cmake/FindJack.cmake View File

@@ -0,0 +1,36 @@
# - Try to find JACK
# Once done, this will define
#
# JACK_FOUND - system has JACK
# JACK_INCLUDE_DIRS - the JACK include directories
# JACK_LIBRARIES - link these to use JACK

# Use pkg-config to get hints about paths
find_package(PkgConfig QUIET)
if(PKG_CONFIG_FOUND)
pkg_check_modules(JACK_PKGCONF jack)
endif(PKG_CONFIG_FOUND)

# Include dir
find_path(JACK_INCLUDE_DIR
NAMES jack/jack.h
PATH_SUFFIXES include includes
PATHS ${JACK_PKGCONF_INCLUDE_DIRS}
)

# Library
find_library(JACK_LIBRARY
NAMES jack jack64 libjack libjack64
PATH_SUFFIXES lib
PATHS ${JACK_PKGCONF_LIBRARY_DIRS}
)

find_package(PackageHandleStandardArgs)
find_package_handle_standard_args(Jack DEFAULT_MSG JACK_LIBRARY JACK_INCLUDE_DIR)

if(JACK_FOUND)
set(JACK_LIBRARIES ${JACK_LIBRARY})
set(JACK_INCLUDE_DIRS ${JACK_INCLUDE_DIR})
endif(JACK_FOUND)

mark_as_advanced(JACK_LIBRARY JACK_LIBRARIES JACK_INCLUDE_DIR JACK_INCLUDE_DIRS)

+ 2
- 2
dgl/CMakeLists.txt View File

@@ -4,7 +4,7 @@ project(dgl)

find_package(OpenGL)
find_package(Cairo)
find_package(X11)
#########GENERAL SOURCES###########
set(DGL_COMMON_SRC
src/Application.cpp
@@ -44,7 +44,7 @@ if(OpenGL_FOUND)
target_compile_definitions(dgl-opengl PUBLIC DGL_OPENGL HAVE_OPENGL ${DGL_COMPILE_DEFINITION})
target_include_directories(dgl-opengl PUBLIC ${CMAKE_CURRENT_LIST_DIR}/src/ ${CMAKE_CURRENT_LIST_DIR}/)
set_target_properties(dgl-opengl PROPERTIES POSITION_INDEPENDENT_CODE true)
target_link_libraries(dgl-opengl PUBLIC ${OPENGL_LIBRARIES})
target_link_libraries(dgl-opengl PUBLIC ${OPENGL_LIBRARIES} ${X11_LIBRARIES})
endif(OpenGL_FOUND)

#######CAIRO DGL############


+ 4
- 2
examples/Info/CMakeLists.txt View File

@@ -11,14 +11,16 @@ ADD_VST2(TARGET InfoVst UI_BACKEND OPENGL
SOURCES InfoExamplePlugin.cpp InfoExampleUI.cpp
INCLUDE_DIRECTORIES "./")


ADD_JACK(TARGET InfoJack UI_BACKEND OPENGL
SOURCES InfoExamplePlugin.cpp InfoExampleUI.cpp
INCLUDE_DIRECTORIES "./")
#ADD_DSSI(TARGET CairoUI-DSSI UI_BACKEND CAIRO
# SOURCES CairoExamplePlugin.cpp
# UI_SOURCES DemoWidgetBanner.cpp DemoWidgetClickable.cpp CairoExampleUI.cpp
# INCLUDE_DIRECTORIES "./")


INSTALL(TARGETS InfoJack DESTINATION bin)
INSTALL(TARGETS InfoVst DESTINATION lib/vst)
INSTALL(TARGETS Info Info_ui DESTINATION lib/lv2/Info.lv2)
#INSTALL(TARGETS CairoUI-DSSI CairoUI-DSSI_ui DESTINATION lib/dssi)


Loading…
Cancel
Save