diff --git a/bin/mkpackage.pike b/bin/mkpackage.pike index 6ac2827279c51ffe2c320460b011283ddf048ffb..ae82b98737684a7ea8836b3d52720b848907374c 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"