summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
3f83ea0)
If we had two PCF files with the same metrics previously, we'd overwrite
the rules file from the first with a new file from the second. Keep
track of which files we've written during the run, and append to them if
we've already started writing. Finish them all up at the end.
Signed-off-by: Mark Wooding <mdw@distorted.org.uk>
while read keyword rest; do
case "$keyword" in
'#'|'') continue ;;
while read keyword rest; do
case "$keyword" in
'#'|'') continue ;;
exit;
' <$good`
printf "%s %s" "$oldfoundry" "$newfoundry" >>rules/foundries.new
exit;
' <$good`
printf "%s %s" "$oldfoundry" "$newfoundry" >>rules/foundries.new
- exec 3>rules/$newfoundry,$key.rules
- echo >&3 '# -*- perl -*-'
- echo >&3 '# autogenerated by mkrules'
- echo >&3 'sub {'
+ case "$seenrules" in
+ */"$newfoundry,$key"/*)
+ exec 3>>rules/$newfoundry,$key.rules
+ ;;
+ *)
+ exec 3>rules/$newfoundry,$key.rules
+ echo >&3 '# -*- perl -*-'
+ echo >&3 '# autogenerated by mkrules'
+ echo >&3 'sub {'
+ seenrules=$seenrules$newfoundry,$key/
+ ;;
+ esac
+ echo >&3 " # $pcf"
exec 3</dev/null
;;
entire)
exec 3</dev/null
;;
entire)
+while :; do
+ case "$seenrules" in /) break ;; esac
+ seenrules=${seenrules#/}
+ rulefile=${seenrules%%/*}
+ seenrules=/${seenrules#*/}
+ echo "}" >>rules/$rulefile.rules
+done
+
mv rules/foundries.new rules/foundries
mv rules/foundries.new rules/foundries