]> err.no Git - dpkg/commitdiff
Add -k|--symlink option.
authorAdam Heath <doogie@debian.org>
Sun, 24 Dec 2000 12:34:20 +0000 (12:34 +0000)
committerAdam Heath <doogie@debian.org>
Sun, 24 Dec 2000 12:34:20 +0000 (12:34 +0000)
ChangeLog
debian/changelog
scripts/dpkg-name.1
scripts/dpkg-name.sh

index 6645a0f03e4a74b8289d4939016f91212b50dca5..7d06c39b7afaf567a879fa09e3dd7081334dcb6d 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+Sun Dec 24 06:31:55 CST 2000 Adam Heath <doogie@debian.org>
+
+  * scripts/dpkg-name.sh: Add -k|--symlink option.
+
 Sun Dec 24 05:58:48 CST 2000 Adam Heath <doogie@debian.org>
 
   * dselect/main.cc: Made the accelerator keys in dselect's main
index f9bd9c111a1705d10bcb69a9fb27b36ff1ccce7b..03acb693d583e5d82348c71959c60ffa3201021d 100644 (file)
@@ -1,5 +1,6 @@
 dpkg (1.8.0) unstable; urgency=low
 
+  * Add -k|--symlink option to dpkg-name.  Closes: #35040
   * Made the accelerator keys in dselect's main menu separate options, so
     that they can be translated separately.  Closes: #50955.
   * Added depends on sysvinit (>= 2.72), so that we can make sure that
index 3742cde9820c47f7b547bf3b90d126ac2d9b0844..68449972c97f02c5dde63e5e07e880a12e76cf6f 100644 (file)
@@ -11,7 +11,7 @@ dpkg\-name \- rename Debian packages to full package names
 .B dpkg\-name 
 [\-a|\-\-no\-architecture] [\-o|\-\-overwrite] [\-s|\-\-subdir [dir]]
 [\-c|\-\-create\-dir] [\-h|\-\-help] [\-v|\-\-version]
-[\-l|\-\-license] [\-[--] [files]
+[\-l|\-\-license] [\-k|\-\-symlink] [\-[--] [files]
 .SH DESCRIPTION
 .PP
 This manual page documents the
@@ -47,6 +47,9 @@ This can be used when building new packages.
 .TP
 .B "\-a, \-\-no\-architecture"
 The destination filename will not have the architecture information. 
+.TP
+.B "\-k, \-\-symlink"
+Create a symlink, instead of moving.
 .TP 
 .B "\-o, \-\-overwrite"
 Existing files will be overwritten if they have the same name as the
index 67c4894b5d210ae71ca5eda72b9283b0644adff2..c67289f6ee8cd99613db90c487820232fee1e89d 100755 (executable)
@@ -37,6 +37,7 @@ usage () {
   according to the ``underscores convention''.
   -a|--no-architecture  No architecture part in filename
   -o|--overwrite        Overwrite if file exists
+  -k|--symlink          Don't create a new file, but a symlink
   -s|--subdir [dir]     Move file into subdir (Use with care)
   -c|--create-dir       Create target dir if not there (Use with care)
   -h|--help|-v|--version|-l|--license  Show help/version/license"
@@ -137,13 +138,19 @@ move () {
                        fi
                fi
                newname=`echo $dir/$name`;
+               if [ x$symlink = x1 ];
+               then
+                       command="ln -s --"
+               else
+                       command="mv --"
+               fi
                if [ $newname -ef "$1" ]; # same device and inode numbers
                then
                        stderr "skipping \`"$1"'";
                elif [ -f $newname -a -z "$overwrite" ];
                then
                        stderr "can't move \`"$1"' to existing file";
-               elif `mv -- "$1" $newname`;
+               elif `$command "$1" $newname`;
                then
                        echo "moved \``basename "$1"`' to \`$newname'";
                else
@@ -173,6 +180,7 @@ do
                --create-dir|-c) createdir=1;;
                --subdir|-s) subdirset=1;;
                --overwrite|-o) overwrite=1 ;;
+               --symlink|-k) symlink=1 ;;
                --no-architecture|-a) noarchitecture=1 ;;
                --) shift; 
                        for arg