From 9a2e08b94f7c91cf32725d727f5e451895e2ed33 Mon Sep 17 00:00:00 2001 From: Greg Wuller Date: Sun, 27 Dec 2020 11:11:23 -0800 Subject: [PATCH] minor build improvements (#1281) * fix maiden-repl dependency checking * edge.sh: fail fast, limit build parallelism assuming the target audience for `edge.sh` is a less technical person testing unreleased features it makes sense to exit as soon as one of the commands fails (such as `waf configure`) instead of continuing on to produce a bad build or errors which obscure the initial problem. limiting parallelism is a safety. building more than two of the c++ components in parallel with the matron/crone/supercollider running will somewhat often run out of memory and fail. limiting the build to two jobs leaves ~100Mb of headroom during a clean build --- edge.sh | 4 ++-- maiden-repl/wscript | 5 +---- wscript | 4 ++++ 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/edge.sh b/edge.sh index 7adfa1e92..0d8089f6d 100755 --- a/edge.sh +++ b/edge.sh @@ -1,7 +1,7 @@ #!/bin/sh +set -e cd "$(dirname "$0")" git pull git submodule update ./waf configure -./waf - +./waf -j2 diff --git a/maiden-repl/wscript b/maiden-repl/wscript index 8a4edbc1d..1e79aa77d 100644 --- a/maiden-repl/wscript +++ b/maiden-repl/wscript @@ -7,8 +7,7 @@ def options(opt): def configure(conf): conf.load('compiler_c compiler_cxx') - conf.check_cfg(package='pthread', args=['--cflags', '--libs']) - conf.check_cfg(package='readline', args=['--cflags', '--libs']) + # libraries with full pkg-config data conf.check_cfg(package='ncursesw', args=['--cflags', '--libs']) conf.check_cfg(package='panel', args=['--cflags', '--libs']) conf.check_cfg(package='nanomsg', args=['--cflags', '--libs']) @@ -31,8 +30,6 @@ def build(bld): ], use=[ - 'PTHREAD', - 'READLINE', 'NCURSESW', 'PANEL', 'NANOMSG' diff --git a/wscript b/wscript index 18405f6b9..a95d4d3ba 100644 --- a/wscript +++ b/wscript @@ -17,6 +17,8 @@ def options(opt): opt.add_option('--enable-ableton-link', action='store_true', default=True) opt.add_option('--profile-matron', action='store_true', default=False) + opt.recurse('maiden-repl') + def configure(conf): conf.load('compiler_c compiler_cxx boost') @@ -72,6 +74,8 @@ def configure(conf): conf.env.ENABLE_ABLETON_LINK = conf.options.enable_ableton_link conf.define('HAVE_ABLETON_LINK', conf.options.enable_ableton_link) + conf.recurse('maiden-repl') + def build(bld): bld.recurse('matron') bld.recurse('maiden-repl')