diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-11-10 23:22:03 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2005-11-10 23:22:03 +0000 |
commit | 40c35f214799bb3e431cfa04a57aed2323be898d (patch) | |
tree | 7a9cb35894e7f1c46b6c09aefeb8f011381de62e | |
parent | fa9a6a96e112313868f4b8623a7bdf2a5c7181d1 (diff) |
* Makefile.in (OUTFLAG): keep trailing spaces. [ruby-dev:27666]
* mkconfig.rb: substitution refereces added.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9525 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | Makefile.in | 3 | ||||
-rw-r--r-- | mkconfig.rb | 37 |
3 files changed, 31 insertions, 19 deletions
@@ -1,3 +1,9 @@ +Fri Nov 11 08:20:56 2005 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * Makefile.in (OUTFLAG): keep trailing spaces. [ruby-dev:27666] + + * mkconfig.rb: substitution refereces added. + Fri Nov 11 07:44:18 2005 Hirokazu Yamamoto <ocean@m2.ccsnet.ne.jp> * configure.in: undef HAVE_LINK on BeOS. (link(2) always returns @@ -17,9 +23,9 @@ Tue Nov 8 15:32:27 2005 GOTOU Yuuzou <gotoyuzo@notwork.org> Mon Nov 7 13:43:51 2005 Hidetoshi NAGAI <nagai@ai.kyutech.ac.jp> - * ext/tk/stubs.c (_nativethread_consistency_check): use simpler + * ext/tk/stubs.c (_nativethread_consistency_check): use simpler (low cost) way to check whether the Tcl interpreter was compiled - with threads enabled of not. + with threads enabled of not. * ext/tk/tcltklib.c: reduce warnings. diff --git a/Makefile.in b/Makefile.in index 9dde68840e..d03aa007ff 100644 --- a/Makefile.in +++ b/Makefile.in @@ -30,7 +30,8 @@ RDOCTARGET = @RDOCTARGET@ EXTOUT = @EXTOUT@ RIDATADIR = $(DESTDIR)$(datadir)/ri/$(MAJOR).$(MINOR)/system -OUTFLAG = -o +empty = +OUTFLAG = @OUTFLAG@$(empty) CFLAGS = @CFLAGS@ @XCFLAGS@ @ARCH_FLAG@ CPPFLAGS = -I. -I$(srcdir) @CPPFLAGS@ LDFLAGS = @STATIC@ $(CFLAGS) @LDFLAGS@ diff --git a/mkconfig.rb b/mkconfig.rb index b4897e6aaa..bce0021669 100644 --- a/mkconfig.rb +++ b/mkconfig.rb @@ -16,10 +16,10 @@ unless File.directory?(dir = File.dirname(rbconfig_rb)) end version = RUBY_VERSION -rbconfig_rb_tmp = rbconfig_rb + '.tmp' -config = open(rbconfig_rb_tmp, "w") -$orgout = $stdout.dup -$stdout.reopen(config) +def (config = "").write(arg) + concat(arg.to_s) +end +$stdout = config fast = {'prefix'=>TRUE, 'ruby_install_name'=>TRUE, 'INSTALL'=>TRUE, 'EXEEXT'=>TRUE} print %[ @@ -119,10 +119,13 @@ print <<EOS val.gsub!(/\\$\\$|\\$\\(([^()]+)\\)|\\$\\{([^{}]+)\\}/) do |var| if !(v = $1 || $2) '$' - elsif key = config[v] + elsif key = config[v = v[/\\A[^:]+(?=(?::(.*?)=(.*))?\\z)/]] + pat, sub = $1, $2 config[v] = false Config::expand(key, config) config[v] = key + key = key.gsub(/\#{Regexp.quote(pat)}(?=\\s|\\z)/n) {sub} if pat + key else var end @@ -135,17 +138,19 @@ print <<EOS end CROSS_COMPILING = nil unless defined? CROSS_COMPILING EOS -$stdout.flush -$stdout.reopen($orgout) -config.close -if $timestamp and - File.exist?(rbconfig_rb) and - FileUtils.compare_file(rbconfig_rb, rbconfig_rb_tmp) - puts "#{rbconfig_rb} unchanged" - File.unlink(rbconfig_rb_tmp) -else - puts "#{rbconfig_rb} updated" - File.rename(rbconfig_rb_tmp, rbconfig_rb) + +$stdout = STDOUT +mode = IO::RDWR|IO::CREAT +mode |= IO::BINARY if defined?(IO::BINARY) +open(rbconfig_rb, mode) do |f| + if $timestamp and f.stat.size == config.size and f.read == config + puts "#{rbconfig_rb} unchanged" + else + puts "#{rbconfig_rb} updated" + f.rewind + f.truncate(0) + f.print(config) + end end if String === $timestamp FileUtils.touch($timestamp) |