/[smeserver]/builds_bin/linksource
ViewVC logotype

Annotation of /builds_bin/linksource

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.3 - (hide annotations) (download)
Sat Dec 2 17:19:10 2006 UTC (17 years, 11 months ago) by slords
Branch: MAIN
Changes since 1.2: +12 -12 lines
Update build tools

1 gordonr 1.1 #!/usr/bin/perl
2    
3     use strict;
4     use warnings;
5     use RPM2;
6     use File::Copy;
7    
8     my $rpm_flags = RPM2->vsf_nodsa;
9     my @repositories = qw(
10 slords 1.3 /mirrors/centos/4/fasttrack/SRPMS
11     /mirrors/centos/4/updates/SRPMS
12     /mirrors/centos/4/os/SRPMS
13     /mirrors/centos/4/extras/SRPMS
14     /mirrors/rpmforge/dag/source/
15     /mirrors/atrpms/src/el4-i386/atrpms/stable/
16     /mirrors/fedora-legacy/fedora/3/updates/SRPMS/
17     /mirrors/fedora-legacy/fedora/3/os/SRPMS/
18     /builds/rpms/SRPMS/
19     );
20 gordonr 1.1
21     opendir RPMS, "/builds/RPMS" or die "Couldn't opendir /builds/RPMS";
22     my %rpms = map { my $x = RPM2->open_package("/builds/RPMS/$_", $rpm_flags); $x->tag('NAME') => $x; } grep { /\.rpm$/ } readdir RPMS;
23     closedir RPMS;
24    
25     my %repos;
26     foreach my $repo (reverse @repositories)
27     {
28     my %temp_repo = map { $_ => $repo } grep { /\.rpm$/ } readdir RPMS if ( opendir RPMS, $repo );
29     closedir RPMS;
30    
31     %repos = (%repos, %temp_repo);
32     }
33    
34     foreach my $rpm ( sort keys %rpms )
35     {
36     my (@headers, $header);
37    
38     my $rpmfix = $rpm;
39     $rpmfix =~ s@\+@\\+@g;
40    
41     my @sources;
42     my $src = $rpms{$rpm}->tag('SOURCERPM');
43     push @sources, $src;
44     push @sources, $src if ($src =~ s/\.2\.el4\.rf\./\.rf\./);
45 gordonr 1.2 push @sources, $src if ($src =~ s/\.el4\.rf\./\.rf\./);
46 slords 1.3 push @sources, $src if ($src =~ s/\.el4\.at\./\.at\./);
47 gordonr 1.1 push @sources, $src if ($src =~ s/\.rf\./\.dag\./);
48    
49     my $found = 0;
50     foreach my $source ( @sources )
51     {
52     if( -f "/builds/SRPMS/$source" )
53     {
54     $found = 1;
55     last;
56     } else {
57     if ($repos{$source})
58     {
59     my $fromfile = $repos{$source} . "/$source";
60     $fromfile =~ s#//#/#g;
61 slords 1.3 `cp --preserve=timestamps $fromfile /builds/SRPMS/`;
62 gordonr 1.1 $found = 1;
63     last;
64     }
65    
66     }
67     }
68     print "can't find SRPM ($sources[0]) for $rpm\n" unless $found;
69     }

admin@koozali.org
ViewVC Help
Powered by ViewVC 1.2.1 RSS 2.0 feed