commit: 6026883449f412761b4cf066585c2ec1d1f28f6f
parent 677b59c07c7bf2306a9cb387a402cb0feec3ced2
Author: Michael Forney <mforney@mforney.org>
Date: Fri, 20 Oct 2017 21:52:13 -0700
Remove need for build.ninja and config.ninja
Diffstat:
4 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/build.ninja b/build.ninja
diff --git a/config.def.ninja b/config.def.ninja
@@ -1 +0,0 @@
-# override anything in build.ninja here
diff --git a/gen.lua b/gen.lua
@@ -1,3 +1,21 @@
+set('builddir', config.builddir or 'out')
+set('outdir', '$builddir')
+
+set('target_toolchain', config.target_toolchain or 'x86_64-linux-musl')
+set('target_cflags', config.target_cflags or '-O2 -pipe')
+set('target_cxxflags', config.target_cxxflags or '$target_cflags')
+set('target_ldflags', config.target_ldflags or '-s -static')
+
+set('host_toolchain', config.host_toolchain or 'default')
+set('host_cflags', config.host_cflags or '-pipe')
+set('host_cxxflags', config.host_cxxflags or '$host_cflags')
+set('host_ldflags', config.host_ldflags or '')
+
+set('repo', config.repo or '$builddir/root.git')
+set('repo_flags', config.repo_flags or '--bare')
+set('repo_tag', config.repo_tag or 'tree')
+set('repo_branch', config.repo_branch or 'master')
+
include 'rules.ninja'
toolchain 'target'
diff --git a/setup.lua b/setup.lua
@@ -3,9 +3,6 @@
if not os.execute('test -f config.lua') then
os.execute('cp config.def.lua config.lua')
end
-if not os.execute('test -f config.ninja') then
- os.execute('cp config.def.ninja config.ninja')
-end
dofile 'ninja.lua'
config = dofile 'config.lua'
@@ -51,8 +48,10 @@ function gen(dir)
}
io.output(dir..'/local.ninja.tmp')
set('dir', dir)
- set('outdir', '$builddir/$dir')
- set('srcdir', '$dir/src')
+ if dir ~= '.' then
+ set('outdir', '$builddir/$dir')
+ set('srcdir', '$dir/src')
+ end
dofile(dir..'/gen.lua')
build('gen', '$dir/local.ninja', {'|', pkg.inputs.gen})