An open source DAW for GNU/Linux, inspired by modular synths.
http://noisicaa.odahoda.de/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
99 lines
3.3 KiB
99 lines
3.3 KiB
# @begin:license |
|
# |
|
# Copyright (c) 2015-2019, Benjamin Niemann <pink@odahoda.de> |
|
# |
|
# This program is free software; you can redistribute it and/or modify |
|
# it under the terms of the GNU General Public License as published by |
|
# the Free Software Foundation; either version 2 of the License, or |
|
# (at your option) any later version. |
|
# |
|
# This program is distributed in the hope that it will be useful, |
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
# GNU General Public License for more details. |
|
# |
|
# You should have received a copy of the GNU General Public License along |
|
# with this program; if not, write to the Free Software Foundation, Inc., |
|
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
|
# |
|
# @end:license |
|
|
|
add_python_package( |
|
time_mapper.pyi |
|
musical_time.pyi |
|
) |
|
|
|
set(LIB_SRCS |
|
backend_settings.pb.cc |
|
control_value.pb.cc |
|
devices.pb.cc |
|
engine_notification.pb.cc |
|
host_parameters.pb.cc |
|
instrument_spec.pb.cc |
|
midi_event.pb.cc |
|
musical_time.cpp |
|
musical_time.pb.cc |
|
node_parameters.pb.cc |
|
node_port_properties.pb.cc |
|
player_state.pb.cc |
|
plugin_state.pb.cc |
|
processor_message.pb.cc |
|
project_properties.pb.cc |
|
time_mapper.cpp |
|
) |
|
|
|
set(TEST_SRCS |
|
musical_time_test.pyx |
|
time_mapper_test.pyx |
|
) |
|
|
|
cpp_proto(backend_settings.proto) |
|
py_proto(backend_settings.proto) |
|
cpp_proto(instrument_spec.proto) |
|
py_proto(instrument_spec.proto) |
|
cpp_proto(musical_time.proto) |
|
py_proto(musical_time.proto) |
|
cpp_proto(player_state.proto) |
|
py_proto(player_state.proto) |
|
cpp_proto(plugin_state.proto) |
|
py_proto(plugin_state.proto) |
|
cpp_proto(processor_message.proto) |
|
py_proto(processor_message.proto) |
|
cpp_proto(engine_notification.proto) |
|
py_proto(engine_notification.proto) |
|
cpp_proto(devices.proto) |
|
py_proto(devices.proto) |
|
cpp_proto(control_value.proto) |
|
py_proto(control_value.proto) |
|
cpp_proto(host_parameters.proto) |
|
py_proto(host_parameters.proto) |
|
cpp_proto(project_properties.proto) |
|
py_proto(project_properties.proto) |
|
cpp_proto(node_port_properties.proto) |
|
py_proto(node_port_properties.proto) |
|
cpp_proto(node_parameters.proto) |
|
py_proto(node_parameters.proto) |
|
cpp_proto(midi_event.proto) |
|
py_proto(midi_event.proto) |
|
|
|
add_library(noisicaa-audioproc-public SHARED ${LIB_SRCS}) |
|
target_compile_options(noisicaa-audioproc-public PRIVATE -fPIC -std=c++11 -Wall -Werror -pedantic -DHAVE_PTHREAD_SPIN_LOCK) |
|
set_source_files_properties( |
|
processor_message.pb.cc PROPERTIES COMPILE_FLAGS -Wno-misleading-indentation) |
|
target_link_libraries(noisicaa-audioproc-public PRIVATE noisicaa-core) |
|
target_include_directories(noisicaa-audioproc-public PRIVATE ${LIBPROTOBUF_INCLUDE_DIRS}) |
|
target_link_libraries(noisicaa-audioproc-public PRIVATE ${LIBPROTOBUF_LIBRARIES}) |
|
|
|
add_cython_module(musical_time CXX) |
|
target_link_libraries(${musical_time.so} PRIVATE noisicaa-audioproc-public) |
|
|
|
add_cython_module(time_mapper CXX) |
|
target_link_libraries(${time_mapper.so} PRIVATE noisicaa-audioproc-public) |
|
|
|
foreach(TEST_SRC ${TEST_SRCS}) |
|
string(REGEX REPLACE "\.pyx$" "" TEST_MOD ${TEST_SRC}) |
|
add_cython_module(${TEST_MOD} CXX) |
|
target_link_libraries(${${TEST_MOD}.so} PRIVATE noisicaa-audioproc-public) |
|
target_include_directories(${${TEST_MOD}.so} PRIVATE ${LIBLILV_INCLUDE_DIRS}) |
|
target_link_libraries(${${TEST_MOD}.so} PRIVATE ${LIBLILV_LIBRARIES}) |
|
endforeach(TEST_SRC)
|
|
|