Files
devkit/sabayon-entropypreservedlibs
T

35 lines
942 B
Perl
Executable File

#!/usr/bin/perl
# Author: mudler@sabayonlinux.org, skullbocks@sabayonlinux.org
use strict;
use DBI;
use feature 'say';
my $arch = $ENV{ARCH} // "amd64";
my $dbh = DBI->connect(
"dbi:SQLite:dbname=/var/lib/entropy/client/database/$arch/equo.db",
"", "", { RaiseError => 1 },
) or die $DBI::errstr;
my $to_build = {};
my $sth = $dbh->prepare(
"SELECT DISTINCT baseinfo.category, baseinfo.name, baseinfo.version FROM baseinfo JOIN needed_libs ON baseinfo.idpackage = needed_libs.idpackage JOIN preserved_libs ON needed_libs.soname = preserved_libs.library"
);
$sth->execute();
my $row;
while ( $row = $sth->fetchrow_arrayref() ) {
$to_build->{"@$row[0]/@$row[1]-@$row[2]"}++;
}
$sth->finish();
my $to_install = join( " ", keys %{$to_build} );
if ( $to_install ne "" ) {
say "Those packages seems to request libs no longer available: $to_install";
}
else {
say "No packages request outdated libs";
}
$dbh->disconnect();