From a49ebc486ea9bd6404b656c3cbd0e8f88ae37c8f Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Tue, 13 Jun 2017 18:37:41 -0400 Subject: [PATCH] env.build_after should expand paths - close #35 --- build_tests/custom_builder/build_after.rb | 4 +++- lib/rscons/environment.rb | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) 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