rscons/build_tests/typical/build_hooks_override_vars.rb
Josh Holtrop ef7e9259cb Add shortcut method for creating environments - close #149
Add env() method to create environments.
Process all environments created at build script top level before
executing any autoconf-enabled tasks, or if no tasks are specified by
the user.
2022-02-12 21:59:52 -05:00

16 lines
519 B
Ruby

env(echo: :command) do |env|
env.append('CPPPATH' => glob('src/**'))
env.add_build_hook do |builder|
if builder.name == "Object" && builder.sources.first =~ %r{one\.c}
builder.vars["CFLAGS"] << "-O1"
builder.sources = ['src/two/two.c']
elsif builder.name == "Object" && builder.target =~ %r{two\.o}
new_vars = builder.vars.clone
new_vars["CFLAGS"] << "-O2"
builder.vars = new_vars
end
end
env.Object('one.o', 'src/one/one.c')
env.Object('two.o', 'src/two/two.c')
end