1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
#!/usr/bin/perl
#
# $FreeBSD$
#
# Usage: p5-deps.pl
#
# List up unneeded dependencies which is in perl 5.8.9 dist.
#
# This script will be used when perl5.8 port removed.
use strict;
use warnings;
use File::Slurp;
my (%OLD, %VER);
init();
open(my $fh, "<", "/usr/ports/INDEX-8") or die;
while (<$fh>) {
chomp;
my ($port, $dir, $prefix, $comment, $descr, $maint, $cat, $bdep, $rdep) = split(/\|/);
# next if ($maint !~ m/^(kuriyama|perl|port)\@freebsd\.org$/i);
# next if ($dir !~ m#^/usr/ports/devel/#);
my $go = 0;
foreach my $old (values %OLD) {
if ($bdep =~ m|\b$old-\d| or $rdep =~ m|\b$old-\d|) {
$go = 1;
last;
}
}
if ($go) {
foreach my $m (keys %OLD) {
my $make = read_file("$dir/Makefile");
if ($make =~ m#([0-9.]+)?:\${PORTSDIR}/$m($| )#s) {
if ($1) {
# Compare versions in Makefile vs in core.
chomp(my $cmp = `pkg_version -t $1 $VER{$m}`);
if ($cmp eq '>') { # newer version required, OK.
last;
}
}
if (($m eq 'converters/p5-Encode' and $port eq 'p5-Padre-0.50_1') or
($m eq 'devel/p5-Test-Harness' and $port eq 'p5-Games-Bingo-Print-0.04_1')) {
# Known to skip.
} else {
printf "$dir $port $m\n";
last;
}
}
}
}
}
sub init {
while (<DATA>) {
chomp;
my ($dir, $ver) = split(/\s+/, $_);
chdir "/usr/ports/$dir" or die "chdir($dir): $!";
chomp(my $tri = `make -VPKGNAMEPREFIX -VPORTNAME -VPKGNAMESUFFIX`);
my $name = join("", split(/\n/, $tri));
$OLD{$dir} = $name;
$VER{$dir} = $ver;
}
}
# TAP::Harness is p5-Test-Harness>=3.00
__DATA__;
converters/p5-Encode 2.26
converters/p5-MIME-Base64 3.07
devel/p5-Data-Dumper 2.121
devel/p5-ExtUtils-Command 1.16
devel/p5-ExtUtils-Constant 0.21
devel/p5-ExtUtils-Install 1.52
devel/p5-ExtUtils-MakeMaker 6.48
devel/p5-ExtUtils-Manifest 1.56
devel/p5-ExtUtils-ParseXS 2.19
devel/p5-File-Path 2.07
devel/p5-File-Temp 0.20
devel/p5-Getopt-Long 2.37
devel/p5-IO 1.23
devel/p5-Locale-Maketext 1.13
devel/p5-Memoize 1.01
devel/p5-Module-CoreList 2.17
devel/p5-Module-Pluggable 3.9
devel/p5-NEXT 0.64
devel/p5-PathTools 3.31
devel/p5-Storable 2.19
devel/p5-Term-ANSIColor 1.12
devel/p5-Test-Harness 2.64
devel/p5-Test-Simple 0.80
devel/p5-Time-HiRes 1.9715
devel/p5-Time-Local 1.1901
devel/p5-XSLoader 0.10
lang/p5-Scalar-List-Utils 1.19
math/p5-Math-BigInt 1.89
math/p5-Math-BigRat 0.22
math/p5-Math-Complex 1.54
net/p5-Net 1.11
security/p5-Digest 1.15
security/p5-Digest-MD5 2.37
textproc/p5-Filter-Simple 0.83
textproc/p5-Pod-Parser 1.35
textproc/p5-Text-Balanced 1.98
textproc/p5-Text-ParseWords 3.27
www/p5-CGI.pm 3.42
|