From cb2ac18a8686741abe41e86cf1d671cdaaacd1ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Wed, 5 Apr 2000 15:39:11 +0200
Subject: [PATCH] The generated package should now survive being called with an
 absolute path.

Rev: bin/mkpackage.pike:1.4
---
 bin/mkpackage.pike | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/bin/mkpackage.pike b/bin/mkpackage.pike
index 6ac2827279..ae82b98737 100644
--- a/bin/mkpackage.pike
+++ b/bin/mkpackage.pike
@@ -49,9 +49,9 @@ class Package
      "echo 'Package version unknown.'\n"
      "exit",
      ({ "-a", "--add-component" }):
-     "shift; ORIGINAL_WD=\"`pwd`\"\n"
+     "shift\n"
      "(cd `dirname \"$1\"` &&\n"
-     " tar rf \"$ORIGINAL_WD/$TARFILE\" `basename \"$1\"`)\n"
+     " tar rf \"$TARFILE\" `basename \"$1\"`)\n"
      "exit",
      ({ "-l", "--list" }):
      "echo \"$CONTENTS\"\n"
@@ -77,6 +77,14 @@ class Package
 		    "TARFILE=\"$1\"; shift; ARGS=''\n"
 		    "CONTENTS=`tar tf \"$TARFILE\" | sed -ne '/^"+
 		    replace(basename(install_filename), ".", "\\.")+"/,$p'`\n"
+		    // Convert $TARFILE to an absolute path
+		    "case \"$TARFILE\" in\n"
+		    "    /*)\n"
+		    "    ;;\n"
+		    "    *)\n"
+		    "      TARFILE=\"`pwd`/$TARFILE\"\n"
+		    "    ;;\n"
+		    "esac\n"
 		    // Check all arguments for possible options.
 		    "while [ $# != 0 ]\n"
 		    "do\n"
@@ -93,7 +101,7 @@ class Package
 		    // Commence installation.
 		    "mkdir "+unpack_directory+"\n"
 		    "(cd "+unpack_directory+"\n"
-		    " tar xf ../\"$TARFILE\" $CONTENTS\n"
+		    " tar xf \"$TARFILE\" $CONTENTS\n"
 		    " ./"+basename(pike_filename)+" "
 	                     "--script \"`pwd`\"/"+
 		                            basename(install_filename)+")\n"
-- 
GitLab