1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
| | Adding the option ZYN_SYSTEM_RTOSC to let the use of the system provided RtOsc
instead of using the bundled one.
--- a/CMakeLists.txt 2022-01-22 02:46:21.000000000 +0100
+++ b/CMakeLists.txt 2023-05-03 23:17:58.411667901 +0200
@@ -10,24 +10,34 @@
add_definitions(-DZYN_DATADIR="${ZYN_DATADIR}")
endif()
+option(ZYN_SYSTEM_RTOSC "Use system provided librtosc and librtosc-cpp" OFF)
+
#Include RTOSC
-if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rtosc/CMakeLists.txt")
- message(STATUS "RTOSC NOT FOUND")
- message(STATUS "Attempting to checkout submodule")
- find_package(Git REQUIRED)
- execute_process(COMMAND git submodule update --init --recursive)
+if(ZYN_SYSTEM_RTOSC)
+ include(FindPkgConfig)
+ pkg_check_modules(RTOSC REQUIRED librtosc)
+ pkg_check_modules(RTOSC_CPP REQUIRED librtosc-cpp)
+ include_directories(${RTOSC_INCLUDE_DIR})
+ message(STATUS "Found system provided librtosc and librtosc-cpp...")
+else()
if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rtosc/CMakeLists.txt")
- message(FATAL_ERROR "FAILED TO CHECKOUT RTOSC\n"
- "please check file permissions and your network")
+ message(STATUS "RTOSC NOT FOUND")
+ message(STATUS "Attempting to checkout submodule")
+ find_package(Git REQUIRED)
+ execute_process(COMMAND git submodule update --init --recursive)
+ if(NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/rtosc/CMakeLists.txt")
+ message(FATAL_ERROR "FAILED TO CHECKOUT RTOSC\n"
+ "please check file permissions and your network")
+ endif()
+ else()
+ message(STATUS "Found Rtosc Submodule...")
endif()
-else()
- message(STATUS "Found Rtosc Submodule...")
-endif()
-set(RTOSC_NO_INSTALL TRUE)
-include("rtosc/cmake/ColorMessage.cmake")
-add_subdirectory(rtosc)
-include_directories(rtosc/include)
+ set(RTOSC_NO_INSTALL TRUE)
+ include("rtosc/cmake/ColorMessage.cmake")
+ add_subdirectory(rtosc)
+ include_directories(rtosc/include)
+endif()
enable_testing()
include(CTestConfig.cmake)
--- a/src/CMakeLists.txt 2022-01-22 02:46:21.000000000 +0100
+++ b/src/CMakeLists.txt 2023-05-03 23:17:58.411667901 +0200
@@ -575,13 +575,27 @@
set(PTHREAD_LIBRARY pthread)
endif()
-target_link_libraries(zynaddsubfx_core
- ${ZLIB_LIBRARIES}
- ${FFTW3F_LIBRARIES}
- ${MXML_LIBRARIES}
- ${OS_LIBRARIES}
- ${PTHREAD_LIBRARY}
- rtosc rtosc-cpp)
+if(ZYN_SYSTEM_RTOSC)
+ target_link_libraries(zynaddsubfx_core
+ ${ZLIB_LIBRARIES}
+ ${FFTW3F_LIBRARIES}
+ ${MXML_LIBRARIES}
+ ${OS_LIBRARIES}
+ ${PTHREAD_LIBRARY}
+ ${RTOSC_LIBRARIES}
+ ${RTOSC_CPP_LIBRARIES}
+ )
+else()
+ target_link_libraries(zynaddsubfx_core
+ ${ZLIB_LIBRARIES}
+ ${FFTW3F_LIBRARIES}
+ ${MXML_LIBRARIES}
+ ${OS_LIBRARIES}
+ ${PTHREAD_LIBRARY}
+ rtosc
+ rtosc-cpp
+ )
+endif()
if(IwyuErr)
message (STATUS "Include what you use: ${IwyuErr}")
When ZYN_SYSTEM_RTOSC is ON, port-checker file is not available and the test
fails.
--- a/src/Tests/CMakeLists.txt 2022-01-22 02:46:21.000000000 +0100
+++ b/src/Tests/CMakeLists.txt 2023-05-04 00:19:01.635383149 +0200
@@ -65,7 +65,6 @@
if(LIBLO_FOUND)
cp_script(check-ports.rb)
- add_test(PortChecker check-ports.rb)
endif()
add_executable(save-osc SaveOSC.cpp)
target_link_libraries(save-osc
|