aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorxocel <xocel@iquidus.org>2012-10-09 03:00:34 +1300
committerxocel <xocel@iquidus.org>2012-10-09 03:00:34 +1300
commite52b8797991520cf011ce650cad98fb5e6a161b7 (patch)
tree6f5f0933a2e6d5e1e88149886726287407588f77
parent997c0c134f4af389626eb02c88baec390cba269c (diff)
downloadsbotools2-e52b8797991520cf011ce650cad98fb5e6a161b7.tar.xz
updated sboremove
-rwxr-xr-xsboremove12
1 files changed, 11 insertions, 1 deletions
diff --git a/sboremove b/sboremove
index fc9cadc..fd6865a 100755
--- a/sboremove
+++ b/sboremove
@@ -52,6 +52,10 @@ show_usage and exit 0 if $help;
show_version and exit 0 if $vers;
show_usage and exit 0 unless exists $ARGV[0];
+my $test = get_sbo_location $ARGV[0];
+die "Unable to locate $sbo_name in the SlackBuilds.org tree.\n" unless
+ defined $test;
+
my $remove_queue;
push(@$remove_queue, $ARGV[0]);
my %ignore;
@@ -63,7 +67,6 @@ unless ($no_reqs) {
$remove_queue = get_build_queue($ARGV[0]);
my $installed = get_installed_sbos;
my $inst_names = get_inst_names $installed;
- #print files...
for my $pkg (@$inst_names) {
unless ($pkg ~~ @$remove_queue) {
my $location = get_sbo_location($pkg);
@@ -73,6 +76,13 @@ unless ($no_reqs) {
if ($req ~~ @$remove_queue) {
$ignore{$req}="required by $pkg";
push(@excluded, $req);
+ my $depqueue = get_build_queue($req);
+ for my $i (@$depqueue) {
+ unless($ignore{$i}) {
+ $ignore{$i}="required by $req";
+ push(@excluded, $i);
+ }
+ }
}
}
}