gsub(/^Group/, "6Group", s);
gsub(/^URL/, "7URL", s);
+ gsub(/^BuildRequires/, "B1BuildRequires", s);
+ gsub(/^BuildConflicts/, "B2BuildConflicts", s);
gsub(/^Provides/, "X1Provides", s);
gsub(/^Obsoletes/, "X2Obsoletes", s);
gsub(/^Conflicts/, "X3Conflicts", s);
sub(/PreReq:/, "Requires:", $1);
}
format_preamble()
- kill_preamble_macros();
+# kill_preamble_macros(); # breaks tabbing
b_idx++;
l = substr($0, index($0, $2));
function demacroize(str)
{
- sub("%{mod_name}", mod_name, str);
- sub("%{name}", name, str);
+ if (mod_name) {
+ sub("%{mod_name}", mod_name, str);
+ }
+ if (name) {
+ sub("%{name}", name, str);
+ }
if (version) {
sub("%{version}", version, str);
}
function kill_preamble_macros()
{
if ($1 ~ /^URL:/ || $1 ~ /^Obsoletes:/) {
+ # NB! assigning $2 a value breaks tabbing
$2 = demacroize($2);
# unify sourceforge url
sub("\.sf\.net/$", ".sourceforge.net/", $2);
}
function format_requires(tag, value, n, p, i, deps, ndeps) {
+ # skip any formatting for commented out items
+ if (/^#/) {
+ return tag "\t" value
+ }
n = split(value, p, / *,? */);
for (i = 1; i <= n; i++) {
if (p[i+1] ~ /[<=>]/) {