| version 1.1, 2005/12/21 18:04:06 |
version 1.2, 2005/12/21 18:16:03 |
|
|
| #!/usr/bin/perl |
#!/usr/bin/perl |
| # $RedRiver$ |
# $RedRiver: find_depends,v 1.1 2005/12/21 18:04:06 andrew Exp $ |
| use strict; |
use strict; |
| use warnings; |
use warnings; |
| |
|
| # find www/ -name *.so* | xargs find_depends | sort -u | xargs -I {} cp {} /home/andrew/www{} |
# find /home/andrew/www/ -name *.so* | xargs find_depends | sort -u | xargs -I {} cp {} /home/andrew/www{} |
| |
|
| |
|
| #use OpenBSD::PackageInfo; |
|
| #use OpenBSD::PackingList; |
|
| #use OpenBSD::SharedLibs; |
|
| #use Data::Dumper; |
|
| |
|
| #my $dir = '/var/db/pkg'; |
|
| #my $pkg = 'p5-DBD-mysql-3.0002'; |
|
| #my $pkg = 'p5-DBD-mysql'; |
|
| |
|
| |
|
| |
|
| #my $file = shift || '/usr/local/libdata/perl5/site_perl/i386-openbsd/auto/DBD/mysql/mysql.so'; |
|
| |
|
| |
|
| die unless @ARGV; |
die unless @ARGV; |
| |
|
| my %libs; |
my %libs; |
| |
|
| foreach my $file (@ARGV) { |
foreach my $file (@ARGV) { |
| my $libs = find_libs($file); |
my $l = find_libs($file); |
| #print Dumper $libs; |
|
| foreach (keys %{ $libs }) { |
foreach (keys %{ $l }) { |
| $libs{ $_ } = $libs->{$_}; |
$libs{$_} = $l->{$_}; |
| } |
} |
| } |
} |
| |
|
|
|
| } |
} |
| |
|
| exit; |
exit; |
| |
|
| #OpenBSD::SharedLibs::add_system_libs('/'); |
|
| |
|
| #print installed_packages(); |
|
| #print installed_name($pkg); |
|
| #print info_names(); |
|
| #exit; |
|
| |
|
| #my $plist = OpenBSD::PackingList->from_installation($pkg) || die $!; |
|
| |
|
| #print Dumper $plist->{wantlib}; |
|
| |
|
| #print Dumper $OpenBSD::SharedLibs::registered_libs; |
|
| |
|
| #foreach (@{ $plist->{wantlib} }) { |
|
| # print Dumper $_->{name}, find_library($_->{name}); |
|
| #} |
|
| |
|
| #sub find_library |
|
| #{ |
|
| # my $spec = shift; |
|
| # my @r; |
|
| # OpenBSD::SharedLibs::add_system_libs('/'); |
|
| # |
|
| # my $lib = '/usr'; |
|
| # @r = OpenBSD::SharedLibs::lookup_libspec('/usr', $spec); |
|
| # unless (@r) { |
|
| # $lib = '/usr/X11R6'; |
|
| # @r = OpenBSD::SharedLibs::lookup_libspec('/usr/X11R6', $spec); |
|
| # } |
|
| # unless (@r) { |
|
| # for my $pkg (installed_packages()) { |
|
| # OpenBSD::SharedLibs::add_package_libs($pkg, 1); |
|
| # } |
|
| # $lib = '/usr/local'; |
|
| # @r = OpenBSD::SharedLibs::lookup_libspec('/usr/local', $spec); |
|
| # } |
|
| # return $lib, @r; |
|
| #} |
|
| |
|
| sub find_libs |
sub find_libs |
| { |
{ |