diff --git a/build_tests/custom_builder/build_after.rb b/build_tests/custom_builder/build_after.rb index e8c3e14..7d4697b 100644 --- a/build_tests/custom_builder/build_after.rb +++ b/build_tests/custom_builder/build_after.rb @@ -3,6 +3,8 @@ Rscons::Environment.new do |env| [], "CMD" => %w[ruby gen.rb ${_TARGET}], "CMD_DESC" => "Generating") - env.build_after("#{env.build_root}/program.o", "inc.c") + env["build_root"] = env.build_root + env["inc_c"] = "inc.c" + env.build_after("${build_root}/program.o", "${inc_c}") env.Program("program.exe", ["program.c", "inc.c"]) end diff --git a/lib/rscons/environment.rb b/lib/rscons/environment.rb index 19fd825..f20b953 100644 --- a/lib/rscons/environment.rb +++ b/lib/rscons/environment.rb @@ -476,8 +476,10 @@ module Rscons targets = Array(targets) prerequisites = Array(prerequisites) targets.each do |target| + target = expand_path(expand_varref(target)) @registered_build_dependencies[target] ||= Set.new prerequisites.each do |prerequisite| + prerequisite = expand_path(expand_varref(prerequisite)) @registered_build_dependencies[target] << prerequisite end end