From d4a970f6962dda28133290194832b726b566ddab Mon Sep 17 00:00:00 2001 From: David Robillard Date: Thu, 7 Jul 2022 18:59:06 -0400 Subject: Switch to meson build system --- plugins/eg-scope.lv2/meson.build | 41 +++++++++++++++++++++++++++++ plugins/eg-scope.lv2/wscript | 56 ---------------------------------------- 2 files changed, 41 insertions(+), 56 deletions(-) create mode 100644 plugins/eg-scope.lv2/meson.build delete mode 100644 plugins/eg-scope.lv2/wscript (limited to 'plugins/eg-scope.lv2') diff --git a/plugins/eg-scope.lv2/meson.build b/plugins/eg-scope.lv2/meson.build new file mode 100644 index 0000000..ecf01b2 --- /dev/null +++ b/plugins/eg-scope.lv2/meson.build @@ -0,0 +1,41 @@ +# Copyright 2022 David Robillard +# SPDX-License-Identifier: CC0-1.0 OR ISC + +plugin_sources = files('examploscope.c') +bundle_name = 'eg-scope.lv2' +data_filenames = ['manifest.ttl.in', 'examploscope.ttl.in'] + +module = shared_library( + 'examploscope', + plugin_sources, + c_args: c_suppressions, + dependencies: [lv2_dep, m_dep], + gnu_symbol_visibility: 'hidden', + install: true, + install_dir: lv2dir / bundle_name, + name_prefix: '', +) + +config = configuration_data( + { + 'LIB_EXT': '.' + module.full_path().split('.')[-1], + } +) + +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 diff --git a/plugins/eg-scope.lv2/wscript b/plugins/eg-scope.lv2/wscript deleted file mode 100644 index 4333502..0000000 --- a/plugins/eg-scope.lv2/wscript +++ /dev/null @@ -1,56 +0,0 @@ -#!/usr/bin/env python -from waflib.extras import autowaf as autowaf -import re - -# Variables for 'waf dist' -APPNAME = 'eg-scope.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('cairo >= 1.8.10', uselib_store='CAIRO') - conf.check_pkg('gtk+-2.0 >= 2.18.0', - uselib_store='GTK2', - system=True, - mandatory=False) - -def build(bld): - bundle = 'eg-scope.lv2' - - # Build manifest.ttl by substitution (for portable lib extension) - for i in ['manifest.ttl', 'examploscope.ttl']: - bld(features = 'subst', - source = i + '.in', - target = 'lv2/%s/%s' % (bundle, i), - install_path = '${LV2DIR}/%s' % bundle, - LIB_EXT = bld.env.LV2_LIB_EXT) - - # Build plugin library - obj = bld(features = 'c cshlib lv2lib', - source = 'examploscope.c', - name = 'examploscope', - target = 'lv2/%s/examploscope' % bundle, - install_path = '${LV2DIR}/%s' % bundle, - use = 'LV2') - - # Build UI library - if bld.env.HAVE_GTK2: - obj = bld(features = 'c cshlib lv2lib', - source = 'examploscope_ui.c', - name = 'examploscope_ui', - target = 'lv2/%s/examploscope_ui' % bundle, - install_path = '${LV2DIR}/%s' % bundle, - use = 'GTK2 CAIRO LV2') -- cgit v1.2.1