r3517 - trunk/scripts
Andres Salomon
dilinger at costa.debian.org
Sat Jul 16 01:40:28 UTC 2005
Author: dilinger
Date: 2005-07-16 01:40:27 +0000 (Sat, 16 Jul 2005)
New Revision: 3517
Modified:
trunk/scripts/split-config
Log:
oh god, that is sexy. it works!
Modified: trunk/scripts/split-config
===================================================================
--- trunk/scripts/split-config 2005-07-16 00:29:54 UTC (rev 3516)
+++ trunk/scripts/split-config 2005-07-16 01:40:27 UTC (rev 3517)
@@ -96,6 +96,7 @@
}
end
+$archdirs = nil
def archdirs
if $archdirs.nil?
base = OPTIONS['dir']
@@ -110,38 +111,39 @@
$archdirs
end
-def subarchdirs
- if $subarchdirs.nil?
- $subarchdir = []
- archdirs().each { |d|
- sa = Dir.open(d) { |e|
- e.find_all { |f|
- File.directory?("#{d}/#{f}") && f !~ /^\./
- }
+def subarchdirs(archdir = nil)
+ subarchdirs = []
+ archdir = archdirs() if archdir.nil?
+ archdir.each { |d|
+ sa = Dir.open(d) { |e|
+ e.find_all { |f|
+ File.directory?("#{d}/#{f}") && f !~ /^\./
}
- sa.collect! { |x| "#{d}/#{x}" }
- $subarchdirs.concat(sa)
}
- end
- $subarchdirs
+ sa.collect! { |x| "#{d}/#{x}" }
+ subarchdirs.concat(sa)
+ }
+ subarchdirs
end
-def flavourfiles
- if $flavourfiles.nil?
- $flavourfiles = []
+def flavourfiles(archdir = nil)
+ flavourfiles = []
+ if archdir.nil?
dirs = archdirs().clone.delete_if { |d|
- b.find { |e|
+ d.find { |e|
# if the subarchdir contains the archdir, nuke
# the archdir from the list.
e.slice(d + '/')
}
}
dirs.concat(subarchdirs())
- dirs.each { |d|
- $flavourfiles.concat(Dir.glob("#{d}/config.*"))
- }
+ else
+ dirs = archdir
end
- $flavourfiles
+ dirs.each { |d|
+ flavourfiles.concat(Dir.glob("#{d}/config.*"))
+ }
+ flavourfiles
end
def affected_files(answer)
@@ -154,12 +156,16 @@
files.concat(subarchdirs().collect { |x| "#{x}/config" })
files.concat(flavourfiles())
when 'a'
- files << "#{base}/#{OPTIONS['arch']}/config"
- files.concat(subarchdirs().collect { |x| "#{x}/config" })
- files.concat(flavourfiles())
+ base += '/' + OPTIONS['arch']
+ files << "#{base}/config"
+ subarches = subarchdirs([base]).collect { |x| "#{x}/config" }
+ files.concat(subarches)
+ files.concat(flavourfiles(subarches))
+ files.concat(flavourfiles([base]))
when 's'
- files << "#{base}/#{OPTIONS['arch']}/#{OPTIONS['subarch']}/config"
- files.concat(flavourfiles())
+ base += '/' + OPTIONS['arch'] + '/' + OPTIONS['subarch']
+ files << "#{base}/config"
+ files.concat(flavourfiles([base]))
when 'f'
if OPTIONS['subarch']
files << "#{base}/#{OPTIONS['arch']}/#{OPTIONS['subarch']}/config.#{OPTIONS['flavour']}"
More information about the Kernel-svn-changes
mailing list