summaryrefslogtreecommitdiffstats
path: root/src/meson.build
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2022-08-18 00:04:37 -0400
committerDavid Robillard <d@drobilla.net>2022-08-18 01:04:36 -0400
commit6bce9e50915d730caa3bd2b60c513fe9915e4b83 (patch)
tree84ae681b9747ea809ea686dcd0a3ad889beb0d2f /src/meson.build
parent5bec7b8de6378bc6cdac5521493a437725048330 (diff)
downloadingen-6bce9e50915d730caa3bd2b60c513fe9915e4b83.tar.gz
ingen-6bce9e50915d730caa3bd2b60c513fe9915e4b83.tar.bz2
ingen-6bce9e50915d730caa3bd2b60c513fe9915e4b83.zip
Switch to meson build system
Diffstat (limited to 'src/meson.build')
-rw-r--r--src/meson.build65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/meson.build b/src/meson.build
new file mode 100644
index 00000000..25dc2fae
--- /dev/null
+++ b/src/meson.build
@@ -0,0 +1,65 @@
+# Copyright 2022 David Robillard <d@drobilla.net>
+# SPDX-License-Identifier: CC0-1.0 OR GPL-3.0-or-later
+
+sources = files(
+ 'AtomReader.cpp',
+ 'AtomWriter.cpp',
+ 'ClashAvoider.cpp',
+ 'ColorContext.cpp',
+ 'Configuration.cpp',
+ 'FilePath.cpp',
+ 'Forge.cpp',
+ 'LV2Features.cpp',
+ 'Library.cpp',
+ 'Log.cpp',
+ 'Parser.cpp',
+ 'Resource.cpp',
+ 'Serialiser.cpp',
+ 'Store.cpp',
+ 'StreamWriter.cpp',
+ 'TurtleWriter.cpp',
+ 'URI.cpp',
+ 'URIMap.cpp',
+ 'URIs.cpp',
+ 'World.cpp',
+ 'runtime_paths.cpp'
+)
+
+if have_socket
+ sources += files('SocketReader.cpp', 'SocketWriter.cpp')
+endif
+
+ingen_deps = [
+ boost_dep,
+ lilv_dep,
+ lv2_dep,
+ raul_dep,
+ serd_dep,
+ sord_dep,
+ sratom_dep,
+ thread_dep,
+]
+
+ingen_include_dirs = include_directories('../include', 'include')
+
+libingen = shared_library(
+ 'ingen' + library_suffix,
+ sources,
+ cpp_args: cpp_suppressions + platform_defines,
+ dependencies: ingen_deps,
+ gnu_symbol_visibility: 'hidden',
+ implicit_include_directories: false,
+ include_directories: ingen_include_dirs,
+ install: true,
+ version: meson.project_version(),
+)
+
+ingen_dep = declare_dependency(
+ dependencies: ingen_deps,
+ include_directories: include_directories('../include'),
+ link_with: libingen,
+)
+
+subdir('server')
+subdir('client')
+subdir('gui')