diff --git a/meson.build b/meson.build new file mode 100644 index 0000000..4fe900c --- /dev/null +++ b/meson.build @@ -0,0 +1,42 @@ +project( 'openav_luppp', ['c','cpp'], + default_options : [ + 'cpp_std=c++11', + ]) + +conf_data = configuration_data() +conf_data.set('version', '1.1.1') + + +if(get_option('tests') == true) + add_project_arguments('-DBUILD_TESTS', language : 'cpp') +endif + +add_project_arguments('-Wno-unused-variable', language : 'cpp') +add_project_arguments('-Wno-reorder', language : 'cpp') +add_project_arguments('-Wno-sign-compare', language : 'cpp') + +cc = meson.get_compiler('c') +cpp = meson.get_compiler('cpp') + +luppp_src = [] +subdir('src') + + +dep_names = [ + 'ntk', + 'cairo', + 'liblo', + 'jack', + 'sndfile', + 'samplerate', + 'x11' + ] +deps = [] + +foreach dep : dep_names + deps += dependency(dep) +endforeach + +# compile the main project +executable('luppp', luppp_src + [version_hxx], + dependencies: deps) diff --git a/meson_options.txt b/meson_options.txt new file mode 100644 index 0000000..701b984 --- /dev/null +++ b/meson_options.txt @@ -0,0 +1 @@ +option('tests', type : 'boolean', value : true, description : 'Build tests') diff --git a/src/avtk/meson.build b/src/avtk/meson.build new file mode 100644 index 0000000..66860a8 --- /dev/null +++ b/src/avtk/meson.build @@ -0,0 +1 @@ +luppp_src += files( 'bindings.cxx', 'volume.cxx', 'clipselector.cxx') diff --git a/src/cjson/meson.build b/src/cjson/meson.build new file mode 100644 index 0000000..3d44a70 --- /dev/null +++ b/src/cjson/meson.build @@ -0,0 +1 @@ +luppp_src += files('cJSON.c') diff --git a/src/controller/meson.build b/src/controller/meson.build new file mode 100644 index 0000000..f240e87 --- /dev/null +++ b/src/controller/meson.build @@ -0,0 +1,6 @@ +luppp_src += files( + 'controller.cxx', + 'genericmidi.cxx', + 'guicontroller.cxx', + 'nonseq.cxx' +) diff --git a/src/dsp/meson.build b/src/dsp/meson.build new file mode 100644 index 0000000..c84e1a3 --- /dev/null +++ b/src/dsp/meson.build @@ -0,0 +1 @@ +luppp_src += files('dsp_sidechain_gain.cxx') diff --git a/src/meson.build b/src/meson.build new file mode 100644 index 0000000..d350343 --- /dev/null +++ b/src/meson.build @@ -0,0 +1,40 @@ +version_hxx = vcs_tag( + input : 'version.hxx.in', + output : 'version.hxx') + +luppp_src = files( + 'audiobuffer.cxx', + 'controllerupdater.cxx', + 'debug.cxx', + 'diskreader.cxx', + 'diskwriter.cxx', + 'event.cxx', + 'eventhandlerdsp.cxx', + 'eventhandlergui.cxx', + 'gaudioeditor.cxx', + 'gmastertrack.cxx', + 'goptions.cxx', + 'gridlogic.cxx', + 'gtrack.cxx', + 'gui.cxx', + 'jack.cxx', + 'jacksendreturn.cxx', + 'logic.cxx', + 'looperclip.cxx', + 'looper.cxx', + 'main.cxx', + 'metronome.cxx', + 'timemanager.cxx', + 'trackoutput.cxx' + ) + +subdir('cjson') +subdir('dsp') +subdir('controller') +subdir('observer') +subdir('state') +subdir('avtk') + +if(get_option('tests') == true) + subdir('tests') +endif diff --git a/src/observer/meson.build b/src/observer/meson.build new file mode 100644 index 0000000..8016da9 --- /dev/null +++ b/src/observer/meson.build @@ -0,0 +1 @@ +luppp_src += files('midi.cxx', 'time.cxx') diff --git a/src/state/meson.build b/src/state/meson.build new file mode 100644 index 0000000..236ada8 --- /dev/null +++ b/src/state/meson.build @@ -0,0 +1 @@ +luppp_src += files('state.cxx', 'stately.cxx') diff --git a/src/tests/meson.build b/src/tests/meson.build new file mode 100644 index 0000000..2a5604d --- /dev/null +++ b/src/tests/meson.build @@ -0,0 +1,5 @@ +luppp_src += files( + 'diskreadertest.cxx', + 'diskwritertest.cxx', + 'goptionstest.cxx', + 'gridlogictests.cxx') diff --git a/src/version.hxx.in b/src/version.hxx.in new file mode 100644 index 0000000..9f82d90 --- /dev/null +++ b/src/version.hxx.in @@ -0,0 +1 @@ +#define GIT_VERSION "@VCS_TAG@"