]> git.pld-linux.org Git - packages/gcc.git/blob - gcc-optimize-la.pl
- release 2, oneline fix for sigsegv in libgomp
[packages/gcc.git] / gcc-optimize-la.pl
1 #!/usr/bin/perl
2
3 sub trim
4 {
5     my $string = shift;
6     $string =~ s/^\s+//;
7     $string =~ s/\s+$//;
8     return $string;
9 }
10
11 open(F, $ARGV[0]) or die("cannot open file: $ARGV[0]\n");
12 @lines = <F>;
13 close(F);
14
15 @deps = ();
16
17 foreach (@lines)
18 {
19     if (/(^dependency_libs='(.*)')[\ \t]*$/)
20     {
21         my $trimmed = trim($2);
22         $trimmed =~ y/'//d;
23         @libs = split(/[\ \t\n]+/, $trimmed);
24         @L = grep(/^-L.*gcc\/.*\/\d\.\d\.\d(\/(32|64|x32|nof))*$/, @libs);
25         @l = grep(/^(-l.*|\/.*\.la$)/, @libs);
26         $opt_L = join(' ', @L);
27         $opt_l = join(' ', @l);
28         print("dependency_libs='");
29         print($opt_L);
30         if (scalar(@L))
31         {
32             print(" ");
33         }
34         print($opt_l);
35         print("'\n");
36     }
37     elsif (/^libdir='(.*)'/)
38     {
39         print("libdir='$ARGV[1]'\n");
40     }
41     else
42     {
43         print($_);
44     }
45 }
This page took 0.092193 seconds and 3 git commands to generate.