logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: 224b5fdbf9659815321b9bd94de7839d500dd760
parent 7c4274cfb305a52296f0f03113f9bdabf3cd0aa4
Author: Michael Forney <mforney@mforney.org>
Date:   Mon, 21 Aug 2017 00:53:08 -0700

Add mechanism to probe for toolchain features

Diffstat:

Mgen.lua1+
Aprobe/gen.lua3+++
Mrules.ninja3+++
Ascripts/probe.rc7+++++++
4 files changed, 14 insertions(+), 0 deletions(-)

diff --git a/gen.lua b/gen.lua @@ -20,6 +20,7 @@ include 'rules.ninja' toolchain 'target' +subgen 'probe' subgen 'pkg' subgen 'src' diff --git a/probe/gen.lua b/probe/gen.lua @@ -0,0 +1,3 @@ +local function probe(var) + build('probe', '$outdir/'..var, '$dir/'..var, {var=var}) +end diff --git a/rules.ninja b/rules.ninja @@ -39,6 +39,9 @@ rule mc rule muse command = muse $museflags -o $out $in +rule probe + command = rc ./scripts/probe.rc $var $cc $cflags $ldflags -o /dev/null -x c $in >$out.tmp && mv $out.tmp $out + # misc tools rule touch command = touch $out diff --git a/scripts/probe.rc b/scripts/probe.rc @@ -0,0 +1,7 @@ +flag e + + +var=$1 +shift +if($* >[2]/dev/null) + echo '#define '$var' 1' +status=()