X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=SConstruct;fp=SConstruct;h=7f486b275ee07b8602794f241ff0abb92243e52e;hb=d899a72babb4c2d80fe6e46a77e570864218b46f;hp=0000000000000000000000000000000000000000;hpb=692c77cbd8154af6c12881f885827a4187b0fb06;p=gps-watch.git diff --git a/SConstruct b/SConstruct new file mode 100644 index 0000000..7f486b2 --- /dev/null +++ b/SConstruct @@ -0,0 +1,38 @@ +import SCons +import os + +root_env = Environment(ENV = {'PATH': os.environ['PATH']}) + +# Beautify output. +if ARGUMENTS.get('V', '0') != '1': + root_env['CCCOMSTR'] = ' CC $TARGET' + root_env['RUSTCCOMSTR'] = ' RUSTC $TARGET' + root_env['LINKCOMSTR'] = ' LINK $TARGET' + root_env['ARCOMSTR'] = ' AR $TARGET' + root_env['RANLIBCOMSTR'] = ' RANLIB $TARGET' + root_env['OBJCOPYCOMSTR'] = ' OBJCOPY $TARGET' + +# Make colored output of e.g. gcc work. +root_env['ENV']['TERM'] = os.environ.get('TERM') + +root_env.Append(CCFLAGS = [ + '-std=gnu99', + '-Wall', + '-Wextra', + '-Wwrite-strings', +]) + +root_env.Append(RUSTC = 'rustc') + +root_env.Append(BUILDERS = { 'Rustc': Builder( + action=Action('$RUSTC $RUSTCFLAGS -o $TARGET $SOURCE', '$RUSTCCOMSTR'))}) + +root_env.Append(BUILDERS = { 'Objcopy': Builder( + action=Action('$OBJCOPY -O binary $OBJCOPYFLAGS $SOURCES $TARGET', '$OBJCOPYCOMSTR'), + suffix='.bin', + src_suffix='.elf')}) + +env = root_env.Clone() +env['variant_dir'] = 'build-target' +env['LIBPATH'] = env['variant_dir'] +SConscript('SConscript.target', exports='env', variant_dir=env['variant_dir'], duplicate=0)