- don't stop sorting at empty lines in %description
- fix indenting of the script OBS-URL: https://build.opensuse.org/package/show/openSUSE:Tools/obs-service-format_spec_file?expand=0&rev=66
This commit is contained in:
parent
bab35e6fd3
commit
b6a7748a7b
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Feb 24 09:48:57 UTC 2012 - coolo@suse.com
|
||||||
|
|
||||||
|
- don't stop sorting at empty lines in %description
|
||||||
|
- fix indenting of the script
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Mon Feb 20 13:19:09 UTC 2012 - coolo@suse.com
|
Mon Feb 20 13:19:09 UTC 2012 - coolo@suse.com
|
||||||
|
|
||||||
|
43
prepare_spec
43
prepare_spec
@ -34,8 +34,7 @@ my $ifhandler;
|
|||||||
my $definelist;
|
my $definelist;
|
||||||
my $debug = 0;
|
my $debug = 0;
|
||||||
|
|
||||||
my @global_tags_list =
|
my @global_tags_list = (
|
||||||
(
|
|
||||||
'Autoreq',
|
'Autoreq',
|
||||||
'Autoreqprov',
|
'Autoreqprov',
|
||||||
'BuildArch',
|
'BuildArch',
|
||||||
@ -77,8 +76,7 @@ sub unify {
|
|||||||
return grep(delete($h{$_}), @_);
|
return grep(delete($h{$_}), @_);
|
||||||
}
|
}
|
||||||
|
|
||||||
sub capitalize_case($)
|
sub capitalize_case($) {
|
||||||
{
|
|
||||||
my ($tag) = @_;
|
my ($tag) = @_;
|
||||||
|
|
||||||
$tag = lc($tag);
|
$tag = lc($tag);
|
||||||
@ -103,14 +101,14 @@ sub compare_arrays {
|
|||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
sub maybe_add_empty_line()
|
sub maybe_add_empty_line() {
|
||||||
{
|
return if $current_section eq "description";
|
||||||
|
|
||||||
push @oldspec, "XXXBLANKLINE"
|
push @oldspec, "XXXBLANKLINE"
|
||||||
if ($current_section ne "description" && $oldspec[-1] !~ /^\s*$/ && $oldspec[-1] !~ /^[#%]/);
|
if ($oldspec[-1] !~ /^\s*$/ && $oldspec[-1] !~ /^[#%]/);
|
||||||
}
|
}
|
||||||
|
|
||||||
sub change_section($)
|
sub change_section($) {
|
||||||
{
|
|
||||||
my ($new_section) = @_;
|
my ($new_section) = @_;
|
||||||
|
|
||||||
maybe_add_empty_line();
|
maybe_add_empty_line();
|
||||||
@ -122,8 +120,7 @@ sub change_section($)
|
|||||||
my %license_replace = ();
|
my %license_replace = ();
|
||||||
use File::Basename;
|
use File::Basename;
|
||||||
|
|
||||||
sub load_license_map()
|
sub load_license_map() {
|
||||||
{
|
|
||||||
return if defined $license_replace{"GPL-2.0"};
|
return if defined $license_replace{"GPL-2.0"};
|
||||||
my $scriptdir = File::Basename::dirname($0);
|
my $scriptdir = File::Basename::dirname($0);
|
||||||
open(MAP, "$scriptdir/licenses_changes.txt") || die "can't open licenses_changes.txt";
|
open(MAP, "$scriptdir/licenses_changes.txt") || die "can't open licenses_changes.txt";
|
||||||
@ -147,8 +144,7 @@ sub load_license_map()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sub replace_single_spdx($)
|
sub replace_single_spdx($) {
|
||||||
{
|
|
||||||
my ($l) = @_;
|
my ($l) = @_;
|
||||||
|
|
||||||
return '' if $l eq '';
|
return '' if $l eq '';
|
||||||
@ -168,8 +164,7 @@ sub replace_single_spdx($)
|
|||||||
}
|
}
|
||||||
|
|
||||||
sub replace_spdx_and($);
|
sub replace_spdx_and($);
|
||||||
sub replace_spdx_and($)
|
sub replace_spdx_and($) {
|
||||||
{
|
|
||||||
my ($license) = @_;
|
my ($license) = @_;
|
||||||
|
|
||||||
# special case as or later is common in our spec files
|
# special case as or later is common in our spec files
|
||||||
@ -198,8 +193,7 @@ sub replace_spdx_and($)
|
|||||||
return join('', @licenses);
|
return join('', @licenses);
|
||||||
}
|
}
|
||||||
|
|
||||||
sub replace_spdx($)
|
sub replace_spdx($) {
|
||||||
{
|
|
||||||
my ($license) = @_;
|
my ($license) = @_;
|
||||||
|
|
||||||
my @licenses = ();
|
my @licenses = ();
|
||||||
@ -263,7 +257,8 @@ sub read_and_parse_old_spec {
|
|||||||
|
|
||||||
if ( /^\s*$/ && $current_section ne "description") {
|
if ( /^\s*$/ && $current_section ne "description") {
|
||||||
# stop preamble parsing on two blank lines
|
# stop preamble parsing on two blank lines
|
||||||
if ($print_comments eq "false" && $oldspec[0] && $oldspec[-1] eq "XXXBLANKLINE") {
|
if ($print_comments eq "false" &&
|
||||||
|
$oldspec[0] && $oldspec[-1] eq "XXXBLANKLINE") {
|
||||||
$print_comments = "true";
|
$print_comments = "true";
|
||||||
push @oldspec, "XXXDOUBLELINE";
|
push @oldspec, "XXXDOUBLELINE";
|
||||||
next;
|
next;
|
||||||
@ -300,8 +295,7 @@ sub read_and_parse_old_spec {
|
|||||||
}
|
}
|
||||||
if ( /^#\s*Copyright\s*/ ) {
|
if ( /^#\s*Copyright\s*/ ) {
|
||||||
my $lastlineblank = 0;
|
my $lastlineblank = 0;
|
||||||
for (;;)
|
for (;;) {
|
||||||
{
|
|
||||||
# check if line is ONLY a standard copyright line, if so, ignore.
|
# check if line is ONLY a standard copyright line, if so, ignore.
|
||||||
my $c = $_;
|
my $c = $_;
|
||||||
$c =~ s{\s*(\d+|copyrights?|\(c\)|suse|linux|products|gmbh|nuremberg|n..?rnberg|germany|\W+)\s*}{}gi;
|
$c =~ s{\s*(\d+|copyrights?|\(c\)|suse|linux|products|gmbh|nuremberg|n..?rnberg|germany|\W+)\s*}{}gi;
|
||||||
@ -317,7 +311,7 @@ sub read_and_parse_old_spec {
|
|||||||
$_ =~ s/%{?epoch}?[:-]//g;
|
$_ =~ s/%{?epoch}?[:-]//g;
|
||||||
$_ =~ s/ 0:/ /g if ( /^requires/i || /^buildreq/i );
|
$_ =~ s/ 0:/ /g if ( /^requires/i || /^buildreq/i );
|
||||||
|
|
||||||
if ( /^BuildRequires:/i || /^Requires:/i || /^Provides:/i ) {
|
if ( /^BuildRequires:/i || /^Requires:/i || /^Provides:/i || /^Obsoletes:/i ) {
|
||||||
my $cur_tag = $_;
|
my $cur_tag = $_;
|
||||||
my $tag = '';
|
my $tag = '';
|
||||||
if (m/^(\S+):\s*(.*)$/) {
|
if (m/^(\S+):\s*(.*)$/) {
|
||||||
@ -608,6 +602,7 @@ warn ("base_package is $base_package\n") if $debug;
|
|||||||
if ( ! stat ((glob("$specdir/$base_package*.spec"))[0] || "") ) {
|
if ( ! stat ((glob("$specdir/$base_package*.spec"))[0] || "") ) {
|
||||||
$base_package =~ s/[0-9]$//;
|
$base_package =~ s/[0-9]$//;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( ! stat ((glob("$specdir/$base_package*.spec"))[0] || "") ) {
|
if ( ! stat ((glob("$specdir/$base_package*.spec"))[0] || "") ) {
|
||||||
$base_package =~ s/\-[^\-]*$//;
|
$base_package =~ s/\-[^\-]*$//;
|
||||||
}
|
}
|
||||||
@ -622,15 +617,15 @@ if ( ! stat ((glob("$specdir/$base_package*.spec"))[0] || "") ) {
|
|||||||
|
|
||||||
read_and_parse_old_spec ( $specfile, $base_package );
|
read_and_parse_old_spec ( $specfile, $base_package );
|
||||||
|
|
||||||
for my $tag (qw(BuildRequires Requires Provides)) {
|
for my $tag (qw(BuildRequires Requires Provides Obsoletes)) {
|
||||||
my $linesmoved = 1;
|
my $linesmoved = 1;
|
||||||
sortcycle: while ($linesmoved) {
|
sortcycle: while ($linesmoved) {
|
||||||
$linesmoved = 0;
|
$linesmoved = 0;
|
||||||
my @firstlines = ();
|
my @firstlines = ();
|
||||||
my @tags = ();
|
my @tags = ();
|
||||||
while ($oldspec[0]) {
|
while (defined $oldspec[0]) {
|
||||||
my $l = shift @oldspec;
|
my $l = shift @oldspec;
|
||||||
if ($l =~ m/^$tag:/ ) {
|
if ($l =~ m/^$tag:/i ) {
|
||||||
push(@tags, $l);
|
push(@tags, $l);
|
||||||
} else {
|
} else {
|
||||||
# if there are already tags, we need to sort and exit
|
# if there are already tags, we need to sort and exit
|
||||||
|
Loading…
Reference in New Issue
Block a user