Module Logging
In: mkmf.rb

Methods

logfile   message   open   postpone  

Public Class methods

[Source]

     # File mkmf.rb, line 190
190:   def self::logfile file
191:     @logfile = file
192:     if @log and not @log.closed?
193:       @log.flush
194:       @log.close
195:       @log = nil
196:     end
197:   end

[Source]

     # File mkmf.rb, line 184
184:   def self::message(*s)
185:     @log ||= File::open(@logfile, 'w')
186:     @log.sync = true
187:     @log.printf(*s)
188:   end

[Source]

     # File mkmf.rb, line 173
173:   def self::open
174:     @log ||= File::open(@logfile, 'w')
175:     @log.sync = true
176:     $stderr.reopen(@log)
177:     $stdout.reopen(@log)
178:     yield
179:   ensure
180:     $stderr.reopen(@orgerr)
181:     $stdout.reopen(@orgout)
182:   end

[Source]

     # File mkmf.rb, line 199
199:   def self::postpone
200:     tmplog = "mkmftmp#{@postpone += 1}.log"
201:     open do
202:       log, *save = @log, @logfile, @orgout, @orgerr
203:       @log, @logfile, @orgout, @orgerr = nil, tmplog, log, log
204:       begin
205:         log.print(open {yield})
206:         @log.close
207:         File::open(tmplog) {|t| FileUtils.copy_stream(t, log)}
208:       ensure
209:         @log, @logfile, @orgout, @orgerr = log, *save
210:         @postpone -= 1
211:         rm_f tmplog
212:       end
213:     end
214:   end

Search

Google

Ruby API Docs

Links