diff options
-rw-r--r-- | icons/meson.build | 9 | ||||
-rw-r--r-- | meson.build | 68 | ||||
-rw-r--r-- | src/gui/meson.build | 96 | ||||
-rw-r--r-- | src/meson.build | 2 | ||||
-rw-r--r-- | src/server/meson.build | 38 | ||||
-rw-r--r-- | tests/meson.build | 29 |
6 files changed, 126 insertions, 116 deletions
diff --git a/icons/meson.build b/icons/meson.build index 57bc5e2f..74a2038f 100644 --- a/icons/meson.build +++ b/icons/meson.build @@ -14,10 +14,11 @@ png_icon_sizes = [ icons_dir = get_option('prefix') / get_option('datadir') / 'icons' / 'hicolor' -install_data('scalable/ingen.svg', - install_dir: icons_dir / 'scalable' / 'apps') +install_data('scalable/ingen.svg', install_dir: icons_dir / 'scalable' / 'apps') foreach size : png_icon_sizes - install_data(files(size / 'ingen.png'), - install_dir: icons_dir / size / 'apps') + install_data( + files(size / 'ingen.png'), + install_dir: icons_dir / size / 'apps', + ) endforeach diff --git a/meson.build b/meson.build index 0c5e5280..ebce016c 100644 --- a/meson.build +++ b/meson.build @@ -1,15 +1,18 @@ # Copyright 2020-2023 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR GPL-3.0-or-later -project('ingen', 'cpp', - version: '0.5.1', - license: 'GPLv3+', - meson_version: '>= 0.56.0', - default_options: [ - 'b_ndebug=if-release', - 'buildtype=release', - 'cpp_std=c++17', - ]) +project( + 'ingen', + 'cpp', + default_options: [ + 'b_ndebug=if-release', + 'buildtype=release', + 'cpp_std=c++17', + ], + license: 'GPLv3+', + meson_version: '>= 0.56.0', + version: '0.5.1', +) ingen_src_root = meson.current_source_dir() ingen_build_root = meson.current_build_dir() @@ -32,8 +35,8 @@ add_project_arguments(cpp_suppressions, language: ['cpp']) ########################## lv2dir = get_option('lv2dir') +prefix = get_option('prefix') if lv2dir == '' - prefix = get_option('prefix') if target_machine.system() == 'darwin' and prefix == '/' lv2dir = '/Library/Audio/Plug-Ins/LV2' elif target_machine.system() == 'haiku' and prefix == '/' @@ -50,8 +53,12 @@ endif ########################## # TODO: Distinguish modules from libraries and move modules to a subdirectory -ingen_data_dir = get_option('prefix') / get_option('datadir') / 'ingen' # / versioned_name -ingen_module_dir = get_option('prefix') / get_option('libdir') # / versioned_name +ingen_data_dir = ( + prefix / get_option('datadir') / 'ingen' # / versioned_name +) +ingen_module_dir = ( + prefix / get_option('libdir') # / versioned_name +) # Use versioned name everywhere to support parallel major version installations if host_machine.system() == 'windows' @@ -88,9 +95,7 @@ endif socket_code = '''#include <sys/socket.h> int main(void) { return socket(AF_UNIX, SOCK_STREAM, 0); }''' -have_socket = cpp.compiles(socket_code, - args: platform_defines, - name: 'socket') +have_socket = cpp.compiles(socket_code, args: platform_defines, name: 'socket') platform_defines += ['-DHAVE_SOCKET=@0@'.format(have_socket.to_int())] @@ -122,8 +127,8 @@ sratom_dep = dependency( suil_dep = dependency( 'suil-0', - version: '>= 0.10.0', fallback: ['suil', 'suil_dep'], + version: '>= 0.10.0', ) lv2_dep = dependency( @@ -149,24 +154,31 @@ raul_dep = dependency( # Driver Dependencies # ####################### -portaudio_dep = dependency('portaudio-2.0', - version: '>= 2.0.0', - include_type: 'system', - required: get_option('portaudio')) +portaudio_dep = dependency( + 'portaudio-2.0', + include_type: 'system', + required: get_option('portaudio'), + version: '>= 2.0.0', +) -jack_dep = dependency('jack', - version: '>= 0.120.0', - include_type: 'system', - required: get_option('jack')) +jack_dep = dependency( + 'jack', + include_type: 'system', + required: get_option('jack'), + version: '>= 0.120.0', +) jack_port_rename_code = '''#include <jack/jack.h> int main(void) { return !!&jack_port_rename; }''' platform_defines += '-DHAVE_JACK_PORT_RENAME=@0@'.format( - cpp.compiles(jack_port_rename_code, - args: platform_defines, - dependencies: [jack_dep], - name: 'jack_port_rename').to_int()) + cpp.compiles( + jack_port_rename_code, + args: platform_defines, + dependencies: [jack_dep], + name: 'jack_port_rename', + ).to_int(), +) ############# # Libraries # diff --git a/src/gui/meson.build b/src/gui/meson.build index 67914cca..3b9a7bb6 100644 --- a/src/gui/meson.build +++ b/src/gui/meson.build @@ -7,35 +7,47 @@ gui_defines = platform_defines -glibmm_dep = dependency('glibmm-2.4', - version: '>= 2.14.0', - include_type: 'system', - required: get_option('gui')) - -gthread_dep = dependency('gthread-2.0', - version: '>= 2.14.0', - include_type: 'system', - required: get_option('gui')) - -gtkmm_dep = dependency('gtkmm-2.4', - version: '>= 2.14.0', - include_type: 'system', - required: get_option('gui')) - -ganv_dep = dependency('ganv-1', - version: '>= 1.5.2', - fallback: ['ganv', 'ganv_dep'], - required: get_option('gui')) - -webkit_dep = dependency('webkit-1.0', - version: '>= 1.4.0', - include_type: 'system', - required: false) - -build_gui = (glibmm_dep.found() and - gthread_dep.found() and - gtkmm_dep.found() and - ganv_dep.found()) +glibmm_dep = dependency( + 'glibmm-2.4', + include_type: 'system', + required: get_option('gui'), + version: '>= 2.14.0', +) + +gthread_dep = dependency( + 'gthread-2.0', + include_type: 'system', + required: get_option('gui'), + version: '>= 2.14.0', +) + +gtkmm_dep = dependency( + 'gtkmm-2.4', + include_type: 'system', + required: get_option('gui'), + version: '>= 2.14.0', +) + +ganv_dep = dependency( + 'ganv-1', + fallback: ['ganv', 'ganv_dep'], + required: get_option('gui'), + version: '>= 1.5.2', +) + +webkit_dep = dependency( + 'webkit-1.0', + include_type: 'system', + required: false, + version: '>= 1.4.0', +) + +build_gui = ( + glibmm_dep.found() + and gthread_dep.found() + and gtkmm_dep.found() + and ganv_dep.found() +) if webkit_dep.found() gui_defines += ['-DHAVE_WEBKIT=1'] @@ -149,15 +161,19 @@ if build_gui config = configuration_data() config.set('INGEN_VERSION', meson.project_version()) - configure_file(configuration: config, - input: files('ingen_gui.ui.in'), - output: 'ingen_gui.ui', - install: true, - install_dir: ingen_data_dir) - - configure_file(copy: true, - input: files('ingen_style.rc'), - output: '@PLAINNAME@', - install: true, - install_dir: ingen_data_dir) + configure_file( + configuration: config, + input: files('ingen_gui.ui.in'), + install: true, + install_dir: ingen_data_dir, + output: 'ingen_gui.ui', + ) + + configure_file( + copy: true, + input: files('ingen_style.rc'), + install: true, + install_dir: ingen_data_dir, + output: '@PLAINNAME@', + ) endif diff --git a/src/meson.build b/src/meson.build index 56c7fc86..e8d18851 100644 --- a/src/meson.build +++ b/src/meson.build @@ -21,7 +21,7 @@ sources = files( 'URIMap.cpp', 'URIs.cpp', 'World.cpp', - 'runtime_paths.cpp' + 'runtime_paths.cpp', ) if have_socket diff --git a/src/server/meson.build b/src/server/meson.build index c2e5b761..c1fccf5e 100644 --- a/src/server/meson.build +++ b/src/server/meson.build @@ -6,6 +6,25 @@ ########## server_sources = files( + 'events/Connect.cpp', + 'events/Copy.cpp', + 'events/CreateBlock.cpp', + 'events/CreateGraph.cpp', + 'events/CreatePort.cpp', + 'events/Delete.cpp', + 'events/Delta.cpp', + 'events/Disconnect.cpp', + 'events/DisconnectAll.cpp', + 'events/Get.cpp', + 'events/Mark.cpp', + 'events/Move.cpp', + 'events/SetPortValue.cpp', + 'events/Undo.cpp', + 'internals/BlockDelay.cpp', + 'internals/Controller.cpp', + 'internals/Note.cpp', + 'internals/Time.cpp', + 'internals/Trigger.cpp', 'ArcImpl.cpp', 'BlockFactory.cpp', 'BlockImpl.cpp', @@ -33,26 +52,7 @@ server_sources = files( 'Task.cpp', 'UndoStack.cpp', 'Worker.cpp', - 'events/Connect.cpp', - 'events/Copy.cpp', - 'events/CreateBlock.cpp', - 'events/CreateGraph.cpp', - 'events/CreatePort.cpp', - 'events/Delete.cpp', - 'events/Delta.cpp', - 'events/Disconnect.cpp', - 'events/DisconnectAll.cpp', - 'events/Get.cpp', - 'events/Mark.cpp', - 'events/Move.cpp', - 'events/SetPortValue.cpp', - 'events/Undo.cpp', 'ingen_engine.cpp', - 'internals/BlockDelay.cpp', - 'internals/Controller.cpp', - 'internals/Note.cpp', - 'internals/Time.cpp', - 'internals/Trigger.cpp', 'mix.cpp', ) diff --git a/tests/meson.build b/tests/meson.build index 50b78624..2c7f799f 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -1,26 +1,6 @@ # Copyright 2019-2022 David Robillard <d@drobilla.net> # SPDX-License-Identifier: 0BSD OR GPL-3.0-or-later -############## -# Unit Tests # -############## - -unit_tests = [ -] - -foreach test : unit_tests - test( - test, - executable( - test, - files('tst_@0@.cpp'.format(test)), - cpp_args: cpp_suppressions + platform_defines, - dependencies: [ingen_dep], - ), - suite: 'unit', - ) -endforeach - ##################### # Integration Tests # ##################### @@ -93,10 +73,11 @@ test_env = environment( default_value: lv2dir, internal: 'plugindir', pkgconfig: 'plugindir', - ) + ), ], ), - }) + }, +) foreach test : integration_tests test( @@ -104,8 +85,8 @@ foreach test : integration_tests ingen_test, env: test_env, args: [ - '--load', empty_manifest, - '--execute', files(test + '.ttl'), + ['--load', empty_manifest], + ['--execute', files(test + '.ttl')], ], ) endforeach |