Browse Source

Clean up wscript

zrythm_meson
David Robillard 2 years ago
parent
commit
a1ede5f96d
  1. 103
      wscript

103
wscript

@ -1,8 +1,5 @@ @@ -1,8 +1,5 @@
#!/usr/bin/env python
import os
import subprocess
from waflib import Logs, Options
from waflib.extras import autowaf
@ -24,6 +21,7 @@ uri = 'http://drobilla.net/sw/sratom' @@ -24,6 +21,7 @@ uri = 'http://drobilla.net/sw/sratom'
dist_pattern = 'http://download.drobilla.net/sratom-%d.%d.%d.tar.bz2'
post_tags = ['Hacking', 'LAD', 'LV2', 'RDF', 'Sratom']
def options(ctx):
ctx.load('compiler_c')
ctx.add_flags(
@ -31,6 +29,7 @@ def options(ctx): @@ -31,6 +29,7 @@ def options(ctx):
{'static': 'build static library',
'no-shared': 'do not build shared library'})
def configure(conf):
conf.load('compiler_c', cache=True)
conf.load('autowaf', cache=True)
@ -76,8 +75,10 @@ def configure(conf): @@ -76,8 +75,10 @@ def configure(conf):
autowaf.display_summary(conf, {'Unit tests': bool(conf.env.BUILD_TESTS)})
lib_source = ['src/sratom.c']
def build(bld):
# C Headers
includedir = '${INCLUDEDIR}/sratom-%s/sratom' % SRATOM_MAJOR_VERSION
@ -85,8 +86,8 @@ def build(bld): @@ -85,8 +86,8 @@ def build(bld):
# Pkgconfig file
autowaf.build_pc(bld, 'SRATOM', SRATOM_VERSION, SRATOM_MAJOR_VERSION, [],
{'SRATOM_MAJOR_VERSION' : SRATOM_MAJOR_VERSION,
'SRATOM_PKG_DEPS' : 'lv2 serd-0 sord-0'})
{'SRATOM_MAJOR_VERSION': SRATOM_MAJOR_VERSION,
'SRATOM_PKG_DEPS': 'lv2 serd-0 sord-0'})
libflags = ['-fvisibility=hidden']
libs = ['m']
@ -98,32 +99,32 @@ def build(bld): @@ -98,32 +99,32 @@ def build(bld):
# Shared Library
if bld.env.BUILD_SHARED:
obj = bld(features = 'c cshlib',
export_includes = ['.'],
source = lib_source,
includes = ['.', './src'],
lib = libs,
uselib = 'SERD SORD LV2',
name = 'libsratom',
target = 'sratom-%s' % SRATOM_MAJOR_VERSION,
vnum = SRATOM_VERSION,
install_path = '${LIBDIR}',
defines = defines + ['SRATOM_SHARED', 'SRATOM_INTERNAL'],
cflags = libflags)
bld(features = 'c cshlib',
export_includes = ['.'],
source = lib_source,
includes = ['.', './src'],
lib = libs,
uselib = 'SERD SORD LV2',
name = 'libsratom',
target = 'sratom-%s' % SRATOM_MAJOR_VERSION,
vnum = SRATOM_VERSION,
install_path = '${LIBDIR}',
defines = defines + ['SRATOM_SHARED', 'SRATOM_INTERNAL'],
cflags = libflags)
# Static library
if bld.env.BUILD_STATIC:
obj = bld(features = 'c cstlib',
export_includes = ['.'],
source = lib_source,
includes = ['.', './src'],
lib = libs,
uselib = 'SERD SORD LV2',
name = 'libsratom_static',
target = 'sratom-%s' % SRATOM_MAJOR_VERSION,
vnum = SRATOM_VERSION,
install_path = '${LIBDIR}',
defines = defines + ['SRATOM_INTERNAL'])
bld(features = 'c cstlib',
export_includes = ['.'],
source = lib_source,
includes = ['.', './src'],
lib = libs,
uselib = 'SERD SORD LV2',
name = 'libsratom_static',
target = 'sratom-%s' % SRATOM_MAJOR_VERSION,
vnum = SRATOM_VERSION,
install_path = '${LIBDIR}',
defines = defines + ['SRATOM_INTERNAL'])
if bld.env.BUILD_TESTS:
test_libs = libs
@ -134,36 +135,37 @@ def build(bld): @@ -134,36 +135,37 @@ def build(bld):
test_linkflags += ['--coverage']
# Static library (for unit test code coverage)
obj = bld(features = 'c cstlib',
source = lib_source,
includes = ['.', './src'],
lib = test_libs,
uselib = 'SERD SORD LV2',
name = 'libsratom_profiled',
target = 'sratom_profiled',
install_path = '',
defines = defines + ['SRATOM_INTERNAL'],
cflags = test_cflags,
linkflags = test_linkflags)
bld(features = 'c cstlib',
source = lib_source,
includes = ['.', './src'],
lib = test_libs,
uselib = 'SERD SORD LV2',
name = 'libsratom_profiled',
target = 'sratom_profiled',
install_path = '',
defines = defines + ['SRATOM_INTERNAL'],
cflags = test_cflags,
linkflags = test_linkflags)
# Unit test program
obj = bld(features = 'c cprogram',
source = 'tests/sratom_test.c',
includes = ['.', './src'],
use = 'libsratom_profiled',
lib = test_libs,
uselib = 'SERD SORD LV2',
target = 'sratom_test',
install_path = '',
defines = defines,
cflags = test_cflags,
linkflags = test_linkflags)
bld(features = 'c cprogram',
source = 'tests/sratom_test.c',
includes = ['.', './src'],
use = 'libsratom_profiled',
lib = test_libs,
uselib = 'SERD SORD LV2',
target = 'sratom_test',
install_path = '',
defines = defines,
cflags = test_cflags,
linkflags = test_linkflags)
# Documentation
autowaf.build_dox(bld, 'SRATOM', SRATOM_VERSION, top, out)
bld.add_post_fun(autowaf.run_ldconfig)
def test(tst):
import sys
@ -175,6 +177,7 @@ def test(tst): @@ -175,6 +177,7 @@ def test(tst):
with tst.group('Integration') as check:
check(['./sratom_test'])
def lint(ctx):
"checks code for style issues"
import subprocess

Loading…
Cancel
Save