123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- open(S, "<../libcurl/symbols-in-versions") || die;
- my %doc;
- my %rem;
- while(<S>) {
- if(/(^CURL[^ \n]*) *(.*)/) {
- my ($sym, $rest)=($1, $2);
- my @a=split(/ +/, $rest);
- $doc{$sym}=$a[0];
- if($a[2]) {
-
-
- $rem{$sym}=$a[2];
- }
- }
- }
- close(S);
- sub age {
- my ($ver)=@_;
- my @s=split(/\./, $ver);
- return $s[0]*10000+$s[1]*100+$s[2];
- }
- my %used;
- open(C, "<$ARGV[0]") || die;
- while(<C>) {
- if(/\W(CURL[_A-Z0-9v]+)\W/) {
-
- $used{$1}++;
- }
- }
- close(C);
- sub sortversions {
- my $r = age($doc{$a}) <=> age($doc{$b});
- if(!$r) {
- $r = $a cmp $b;
- }
- return $r;
- }
- my @recent = reverse sort sortversions keys %used;
- my $newsym = $recent[0];
- my $newver = $doc{$newsym};
- print "The scanned source uses these symbols introduced in $newver:\n";
- for my $w (@recent) {
- if($doc{$w} eq $newver) {
- printf " $w\n";
- next;
- }
- last;
- }
|