"N=s" => \&ExcludePackage,
"no-package=s" => \&ExcludePackage,
+ "remaining-packages" => \$dh{EXCLUDE_LOGGED},
+
"dbg-package=s" => \&AddDebugPackage,
"s" => \&AddPackage,
# at the command line to act on a specific package, and if
# nothing is specified, the excludes will cause the set of
# packages DH_INTERNAL_OPTIONS specifies to be acted on.
- foreach my $package (getpackages()) {
- if (! grep { $_ eq $package } @{$dh{DOPACKAGES}}) {
- $exclude_package{$package}=1;
+ if (defined $dh{DOPACKAGES}) {
+ foreach my $package (getpackages()) {
+ if (! grep { $_ eq $package } @{$dh{DOPACKAGES}}) {
+ $exclude_package{$package}=1;
+ }
}
}
delete $dh{DOPACKAGES};
my $package;
my %packages_seen;
foreach $package (@{$dh{DOPACKAGES}}) {
+ if (defined($dh{EXCLUDE_LOGGED}) &&
+ grep { $_ eq basename($0) } load_log($package)) {
+ $exclude_package{$package}=1;
+ }
if (! $exclude_package{$package}) {
if (! exists $packages_seen{$package}) {
$packages_seen{$package}=1;