diff options
author | David Robillard <d@drobilla.net> | 2022-07-07 18:59:06 -0400 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2022-07-17 18:13:53 -0400 |
commit | d4a970f6962dda28133290194832b726b566ddab (patch) | |
tree | cfe9747042d55388705371a8ce95505ffb702470 /plugins/eg-sampler.lv2 | |
parent | 7f3a2651a3635232d94f7bf9ce23d6b575735732 (diff) | |
download | lv2-d4a970f6962dda28133290194832b726b566ddab.tar.xz |
Switch to meson build system
Diffstat (limited to 'plugins/eg-sampler.lv2')
-rw-r--r-- | plugins/eg-sampler.lv2/meson.build | 44 | ||||
l--------- | plugins/eg-sampler.lv2/waf | 1 | ||||
-rw-r--r-- | plugins/eg-sampler.lv2/wscript | 64 |
3 files changed, 44 insertions, 65 deletions
diff --git a/plugins/eg-sampler.lv2/meson.build b/plugins/eg-sampler.lv2/meson.build new file mode 100644 index 0000000..85dc9a0 --- /dev/null +++ b/plugins/eg-sampler.lv2/meson.build @@ -0,0 +1,44 @@ +# Copyright 2022 David Robillard <d@drobilla.net> +# SPDX-License-Identifier: CC0-1.0 OR ISC + +plugin_sources = files('sampler.c') +bundle_name = 'eg-sampler.lv2' +data_filenames = ['manifest.ttl.in', 'sampler.ttl'] + +sndfile_dep = dependency('sndfile', + version: '>= 1.0.0', + required: get_option('plugins')) + +if sndfile_dep.found() + module = shared_library( + 'sampler', + plugin_sources, + c_args: c_suppressions, + dependencies: [lv2_dep, m_dep, sndfile_dep], + gnu_symbol_visibility: 'hidden', + install: true, + install_dir: lv2dir / bundle_name, + name_prefix: '', + ) + + extension = '.' + module.full_path().split('.')[-1] + config = configuration_data({'LIB_EXT': extension}) + + foreach filename : data_filenames + if filename.endswith('.in') + configure_file( + configuration: config, + input: files(filename), + install_dir: lv2dir / bundle_name, + output: filename.substring(0, -3), + ) + else + configure_file( + copy: true, + input: files(filename), + install_dir: lv2dir / bundle_name, + output: filename, + ) + endif + endforeach +endif diff --git a/plugins/eg-sampler.lv2/waf b/plugins/eg-sampler.lv2/waf deleted file mode 120000 index 59a1ac9..0000000 --- a/plugins/eg-sampler.lv2/waf +++ /dev/null @@ -1 +0,0 @@ -../../waf
\ No newline at end of file diff --git a/plugins/eg-sampler.lv2/wscript b/plugins/eg-sampler.lv2/wscript deleted file mode 100644 index 8c640c1..0000000 --- a/plugins/eg-sampler.lv2/wscript +++ /dev/null @@ -1,64 +0,0 @@ -#!/usr/bin/env python -from waflib.extras import autowaf as autowaf -import re - -# Variables for 'waf dist' -APPNAME = 'eg-sampler.lv2' -VERSION = '1.0.0' - -# Mandatory variables -top = '.' -out = 'build' - -def options(opt): - opt.load('compiler_c') - opt.load('lv2') - autowaf.set_options(opt) - -def configure(conf): - conf.load('compiler_c', cache=True) - conf.load('lv2', cache=True) - conf.load('autowaf', cache=True) - - conf.check_pkg('lv2 >= 1.2.1', uselib_store='LV2') - conf.check_pkg('sndfile >= 1.0.0', uselib_store='SNDFILE') - conf.check_pkg('gtk+-2.0 >= 2.18.0', - uselib_store='GTK2', - system=True, - mandatory=False) - conf.check(features='c cshlib', lib='m', uselib_store='M', mandatory=False) - -def build(bld): - bundle = 'eg-sampler.lv2' - - # Build manifest.ttl by substitution (for portable lib extension) - bld(features = 'subst', - source = 'manifest.ttl.in', - target = 'lv2/%s/%s' % (bundle, 'manifest.ttl'), - install_path = '${LV2DIR}/%s' % bundle, - LIB_EXT = bld.env.LV2_LIB_EXT) - - # Copy other data files to build bundle (build/eg-sampler.lv2) - for i in ['sampler.ttl', 'click.wav']: - bld(features = 'subst', - is_copy = True, - source = i, - target = 'lv2/%s/%s' % (bundle, i), - install_path = '${LV2DIR}/%s' % bundle) - - # Build plugin library - obj = bld(features = 'c cshlib lv2lib', - source = 'sampler.c', - name = 'sampler', - target = 'lv2/%s/sampler' % bundle, - install_path = '${LV2DIR}/%s' % bundle, - use = ['M', 'SNDFILE', 'LV2']) - - # Build UI library - if bld.env.HAVE_GTK2: - obj = bld(features = 'c cshlib lv2lib', - source = 'sampler_ui.c', - name = 'sampler_ui', - target = 'lv2/%s/sampler_ui' % bundle, - install_path = '${LV2DIR}/%s' % bundle, - use = ['GTK2', 'LV2']) |