Menu

#31 Wrapper Scripts are overly complex and don't support symlink

closed-fixed
general (26)
5
2011-01-10
2010-04-23
Peter Bray
No

Version: pkgbuild-1.3.101

Environment: Solaris 10 Update 6 using graft (simalar to stow or depot) and perl-5.10.0

Sample Error:
% whence -avs pkgbuild
pkgbuild is /pkgs/64-bit/bin/pkgbuild -> /pkgs/64-bit/release/pkgbuild-1.3.101/bin/pkgbuild
% pkgbuild
Can't open perl script "/pkgs/64-bit/bin/../lib/pkgbuild-1.3.101/pkgbuild.pl": No such file or directory

Reason: The wrapper scripts assume that they are the actual
installation file and that they can determine their installation
location by use $0, but don't check if $0 is a symlink.

Commentary: The wrappers pkgtool.in and spectool.in use some autotools
variables but pkgbuild.in does not. None of the scripts need to save
origwd as its never used, nor do they protect whitespace (which they
probably should, even though I know no-one who actually uses it). The
scripts should be written using autotools variables, for both
correctness and simplicity. A patch for this has been provided.

Remaining Errors (not investigated):

% pkgbuild
Name "main::lines" used only once: possible typo at /pkgs/64-bit/release/pkgbuild-1.3.101/lib/pkgbuild-1.3.101/pkgbuild.pl line 1821, <MACROS> line 146.
pkgbuild: no spec files given for build

Discussion

  • Peter Bray

    Peter Bray - 2010-04-23

    Patch to Simplify Wrapper Scripts

     
  • Laszlo (Laca) Peter

    • status: open --> closed-fixed
     
  • Laszlo (Laca) Peter

    patch applied, thanks.

    will be in the coming release.

     

Log in to post a comment.