summaryrefslogtreecommitdiff
path: root/solenv
diff options
context:
space:
mode:
authorLuboš Luňák <l.lunak@suse.cz>2012-04-07 17:07:06 +0200
committerLuboš Luňák <l.lunak@suse.cz>2012-04-07 17:12:12 +0200
commit15953ab15b082638de8e8795abad5213be49bd08 (patch)
tree515d6fac8ca37f153cc7245e456bd56f7c3552f0 /solenv
parentaefbfc7101bb9b4ef20968d45306ab97573f6597 (diff)
make linkoo not create backups by default
The 'linked' files are not used by anything, and they just waste space. If somebody wants them for debugging or whatever reason, use --backup.
Diffstat (limited to 'solenv')
-rwxr-xr-xsolenv/bin/linkoo17
1 files changed, 12 insertions, 5 deletions
diff --git a/solenv/bin/linkoo b/solenv/bin/linkoo
index 86ac2476e954..8381cccd9a87 100755
--- a/solenv/bin/linkoo
+++ b/solenv/bin/linkoo
@@ -62,6 +62,7 @@ if ($ENV{'OS'} eq 'MACOSX') {
}
my $dry_run = 0;
+my $backup = 0;
my $usage = 0;
my $LANG;
my $TARGET;
@@ -77,6 +78,8 @@ for my $a (@ARGV) {
$dry_run = 1;
} elsif (($a eq '--help') || ($a eq '-h')) {
$usage = 1;
+ } elsif ($a eq '--backup') {
+ $backup = 1;
# ordered arguments
} elsif (!defined $OOO_INSTALL) {
@@ -94,7 +97,7 @@ if (!defined $OOO_BUILD && defined $ENV{SRC_ROOT}) {
}
if ($usage || !defined $OOO_INSTALL || !defined $OOO_BUILD) {
- printf "Usage: linkoo </path/to/ooo/install> [</path/to/ooo/build/tree>] [--dry-run]\n";
+ printf "Usage: linkoo </path/to/ooo/install> [</path/to/ooo/build/tree>] [--dry-run] [--backup]\n";
exit (1);
}
@@ -212,12 +215,16 @@ sub do_link($$$$@)
print "skipping symbolic link $dest/$dest_name -> $link\n";
}
} else {
- check_create_linked ($dest);
if (!$dry_run) {
# move / write the link
- rename ("$dest/$dest_name", "$dest/linked/$dest_name") ||
- defined $dont_check_link || die "Failed rename of $dest/$dest_name: $!";
-
+ if ($backup) {
+ check_create_linked ($dest);
+ rename ("$dest/$dest_name", "$dest/linked/$dest_name") ||
+ defined $dont_check_link || die "Failed rename of $dest/$dest_name: $!";
+ } else {
+ unlink ("$dest/$dest_name") ||
+ defined $dont_check_link || die "Failed remove of $dest/$dest_name: $!";
+ }
symlink ("$src/$src_name", "$dest/$dest_name") || die "Failed to symlink $src/$src_name: $!";
print " $dest_name";
} else {