aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--ext/extmk.rb12
2 files changed, 13 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 1da25b692f..f08d14f19c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+Thu Feb 10 12:09:16 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * ext/extmk.rb (extract_makefile): default to true if not compiled
+ previously.
+
+ * ext/extmk.rb (extmake): create dummy makefile if extconf failed.
+
Thu Feb 10 12:07:10 2005 Nobuyoshi Nakada <nobu@ruby-lang.org>
* win32/win32.c (init_stdhandle): assign standard file handles.
diff --git a/ext/extmk.rb b/ext/extmk.rb
index 4e692209ee..6cd7ed5232 100644
--- a/ext/extmk.rb
+++ b/ext/extmk.rb
@@ -45,21 +45,20 @@ def relative_from(path, base)
end
end
-def extract_makefile(makefile, force = false)
+def extract_makefile(makefile, keep = true)
m = File.read(makefile)
if !(target = m[/^TARGET[ \t]*=[ \t]*(\S*)/, 1])
- return force
+ return keep
end
installrb = {}
m.scan(/^install-rb-default:[ \t]*(\S+)\n\1:[ \t]*(\S+)/) {installrb[$2] = $1}
oldrb = installrb.keys.sort
newrb = install_rb(nil, "").collect {|d, *f| f}.flatten.sort
- unless (oldrb -= newrb).empty?
- FileUtils.rm_f(oldrb.collect {|old| Config.expand(installrb[old])}, :verbose => true)
- return false
- end
if target_prefix = m[/^target_prefix[ \t]*=[ \t]*\/(.*)/, 1]
target = "#{target_prefix}/#{target}"
+ unless (oldrb -= newrb).empty?
+ return false
+ end
end
$target = target
/^STATIC_LIB[ \t]*=[ \t]*\S+/ =~ m or $static = nil
@@ -113,6 +112,7 @@ def extmake(target)
!(t = modified?(makefile, MTIMES)) ||
%W"#{$srcdir}/makefile.rb #{$srcdir}/extconf.rb #{$srcdir}/depend".any? {|f| modified?(f, [t])})
then
+ ok = false
init_mkmf
Logging::logfile 'mkmf.log'
rm_f makefile