diff --git a/infrastructure/install/check-libs-elf b/infrastructure/install/check-libs-elf deleted file mode 100755 index 7cdee8fc6a6..00000000000 --- a/infrastructure/install/check-libs-elf +++ /dev/null @@ -1,125 +0,0 @@ -#!/usr/bin/perl -w - -# $OpenBSD: check-libs-elf,v 1.11 2004/11/23 11:54:55 espie Exp $ - -# Copyright (c) 2001 Marc Espie -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND -# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE -# FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS -# OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) -# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT -# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY -# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -# SUCH DAMAGE. -# - -# Check that all libraries are mentioned in lib depends. - -use strict; -use OpenBSD::PackageInfo; -use OpenBSD::PackingList; -use OpenBSD::SharedLibs; - -sub find_library -{ - my $spec = shift; - my @r; - OpenBSD::SharedLibs::add_system_libs('/'); - @r = OpenBSD::SharedLibs::lookup_libspec('/usr', $spec); - unless (@r) { - @r = OpenBSD::SharedLibs::lookup_libspec('/usr/X11R6', $spec); - } - unless (@r) { - for my $pkg (installed_packages()) { - OpenBSD::SharedLibs::add_package_libs($pkg, 1); - } - @r = OpenBSD::SharedLibs::lookup_libspec('/usr/local', $spec); - } - return join(',', @r); -} - -my $error = 0; -my %registered; -my %used; - -if (defined $ENV{'LIB_DEPENDS'}) { - for my $d (split(/[ ,\n]+/, $ENV{'LIB_DEPENDS'})) { - $d =~ s/.*\///; - $d =~ s/\.$//; - $d =~ s/(?:\.\d+){1,2}$//; - $registered{$d} = 1; - $used{$d} = 0; - } -} - -if (defined $ENV{'WANTLIB'}) { - for my $r (split(/\s+/, $ENV{'WANTLIB'})) { - $r =~ s/(?:\.\d+){1,2}$//; - $registered{$r} = 1; - $used{$r} = 0; - } -} - -open(my $libs, '<', shift) or die; -open(my $builds, '<', shift) or die; -while (<$builds>) { - chomp; - if (m/^.*\/lib(.*?)\.so((?:\.\d+)*)$/) { - $registered{$1} = $2; - } -} - -close($builds); - -while (<$libs>) { - my ($path, $name, $major, $minor); - chomp; - # older a.out - if (m/^\tlibrary: (\S+)\s(\d+)\s(\-?\d+)$/) { - ($name, $major, $minor) = ($1, $2, $3); - } elsif (m/^\t\-l(.*?)(\.\d+)?(\.\d+)?(?: \=\> .*)?$/) { - ($name, $major, $minor) = ($1, $2, $3); - # newer elf - } elsif (m/^lib(\S+)\s+(\d+)\s+(\d+)$/) { - ($name, $major, $minor) = ($1, $2, $3); - } elsif (m/^(.*)\/lib(\S+)\s+(\d+)\s+(\d+)$/) { - ($path, $name, $major, $minor) = ($1, $2, $3, $4); - } elsif (m/^lib(\S+)$/) { - $name = $1; - } elsif (m/^(.*)\/lib(\S+)$/) { - ($path, $name) = ($1, $2); - } else { - next; - } - if (exists $registered{$name}) { - $used{$name} = 1; - } else { - my $spec="$name.$major.$minor"; - if (defined $path && $path ne '/usr/local/lib') { - $spec="$path/$spec"; - } - print "lib-depends-check: no mention of $spec (".find_library($spec).")\n"; - $error = 1; - } -} -close($libs); - -while (my ($k, $v) = each %used) { - next if $v == 1; - print "lib-depends-check: unused library $k\n"; -} - -exit($error);