/[grub]/grub2/genmk.rb
ViewVC logotype

Diff of /grub2/genmk.rb

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.14 by okuji, Sun Jul 3 18:06:56 2005 UTC revision 1.15 by okuji, Sun Jul 24 18:16:26 2005 UTC
# Line 268  MOSTLYCLEANFILES += #{deps_str} Line 268  MOSTLYCLEANFILES += #{deps_str}
268    end    end
269  end  end
270    
271    class Script
272      def initialize(dir, name)
273        @dir = dir
274        @name = name
275      end
276      attr_reader :dir, :name
277    
278      def rule(sources)
279        if sources.length != 1
280          raise "only a single source file must be specified for a script"
281        end
282        src = sources[0]
283        if /\.in$/ !~ src
284          raise "unknown source file `#{src}'"
285        end
286    
287        "CLEANFILES += #{@name}
288    
289    #{@name}: #{src} config.status
290            ./config.status --file=#{name}:#{src}
291    
292    "
293      end
294    end
295    
296  images = []  images = []
297  utils = []  utils = []
298  pmodules = []  pmodules = []
299  programs = []  programs = []
300    scripts = []
301    
302  cont = false  cont = false
303  s = nil  s = nil
# Line 310  while l = gets Line 336  while l = gets
336            end            end
337    
338          when 'PROGRAMS'          when 'PROGRAMS'
339            programs += args.split(/\s+/).collect do |util|            programs += args.split(/\s+/).collect do |prog|
340              Program.new(prefix, util)              Program.new(prefix, prog)
341              end
342    
343            when 'SCRIPTS'
344              scripts += args.split(/\s+/).collect do |script|
345                Script.new(prefix, script)
346            end            end
347    
348          when 'SOURCES'          when 'SOURCES'
# Line 323  while l = gets Line 354  while l = gets
354              print util.rule(args.split(/\s+/))              print util.rule(args.split(/\s+/))
355            elsif program = programs.detect() {|u| u.name.to_var == prefix}            elsif program = programs.detect() {|u| u.name.to_var == prefix}
356              print program.rule(args.split(/\s+/))              print program.rule(args.split(/\s+/))
357              elsif script = scripts.detect() {|s| s.name.to_var == prefix}
358                print script.rule(args.split(/\s+/))
359            end            end
360          end          end
361        end        end

Legend:
Removed from v.1.14  
changed lines
  Added in v.1.15

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26