summaryrefslogtreecommitdiffhomepage
path: root/Rakefile
diff options
context:
space:
mode:
authorKOBAYASHI Shuji <[email protected]>2020-11-03 16:03:46 +0900
committerKOBAYASHI Shuji <[email protected]>2020-11-03 16:03:46 +0900
commit82a2a5657c1023cbad15db6eec4f85aba594a41e (patch)
treef889a7df4e2aa27ac6bce58bd728f84aa7566f3c /Rakefile
parent436765eb948937e12fcef6fd06f2b31e3df38437 (diff)
downloadmruby-82a2a5657c1023cbad15db6eec4f85aba594a41e.tar.gz
mruby-82a2a5657c1023cbad15db6eec4f85aba594a41e.zip
Reduce recompilation when updating presym target files
Fix that updating presym target files would recompile almost all files even if symbols did not change.
Diffstat (limited to 'Rakefile')
-rw-r--r--Rakefile7
1 files changed, 4 insertions, 3 deletions
diff --git a/Rakefile b/Rakefile
index 272aad011..2d88cde99 100644
--- a/Rakefile
+++ b/Rakefile
@@ -115,6 +115,7 @@ psfiles.each do |file|
end
symbols.each{|x| x.chomp!}
presym_file="#{MRUBY_ROOT}/build/presym"
+presym_inc="#{presym_file}.inc"
op_table = {
"!" => "not",
"!=" => "neq",
@@ -189,11 +190,11 @@ file presym_file => cfiles+rbfiles+psfiles+[__FILE__] do
presyms.each{|x| x.chomp!}
if presyms != symbols
File.write(presym_file, symbols.join("\n"))
+ Rake::Task[presym_inc].invoke
end
end
-presym_inc=presym_file+".inc"
-file presym_inc => presym_file do
+task presym_inc do
presyms = File.readlines(presym_file)
presyms.each{|x| x.chomp!}
File.open(presym_inc, "w") do |f|
@@ -231,7 +232,7 @@ file presym_inc => presym_file do
end
desc "preallocated symbols"
-task :gensym => presym_inc
+task :gensym => presym_file
depfiles += MRuby.targets.map { |n, t|
t.libraries