pkgsrc-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
pkg/39795: install-sh fails at pax with IRIX /bin/sh
>Number: 39795
>Category: pkg
>Synopsis: install-sh fails at pax with IRIX /bin/sh
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Fri Oct 24 14:55:00 +0000 2008
>Originator: Tim Larson
>Release:
>Organization:
>Environment:
IRIX franklin 6.5 6.5.22f 10070056 IP32
>Description:
Bootstrap fails on pax install.
=> Unwrapping files-to-be-installed.
===> Installing for pax-20080110
/usr/pkgsrc/bootstrap/work/bin/install-sh -c -o root -g sys -m 755 -d
/usr/pkg/bin
/usr/pkgsrc/bootstrap/work/bin/install-sh -c -o root -g sys -m 755 -d
/usr/pkg/man/man1
/usr/pkgsrc/bootstrap/work/bin/install-sh -c -o root -g sys -m 755 -d
/usr/pkg/man/cat1
/usr/pkgsrc/bootstrap/work/bin/install-sh -c -o root -g sys pax
/usr/pkg/bin/$(echo pax | sed 's,x,x,')
install: destination is not a directory
*** Error code 1
When run manually, the command executes just fine. But my shell is bash, and
the script runs as /bin/sh. Changing to /bin/sh and running manually gives
this error as well. In /bin/sh, the values of $msrc and $src (in the
install-sh script) are:
msrc:pax /usr/pkg/bin/$(echo pax | sed
src:sed
The correct values are "pax" and "/usr/pkg/bin/pax".
>How-To-Repeat:
Run bootstrap on an IRIX system.
>Fix:
(Suggestions only, not known-working resolutions.)
I recommend that all scripts necessary for the bootstrap process be created
from running sed on a script.in file rather than merely copied into place, so
that the first line can be changed to whatever bootstrap's $shprog has been set
to. The install-sh is already like this, so it just needs the extra
replacement done. Using the specified $shprog would allow us to work around
known shell deficiencies of an OS simply by using a working shell instead.
BUT, since IRIX-supplied shells sh and ksh are the same (and broken), IRIX
should have $need_ksh set to yes. Bootstrapping ksh should happen earlier.
Then $shprog can be set to this shell, and other scripts regenerated (see
above) to use the new value.
ALSO, maybe the pax Makefile.in can be modified so that it does not have
command substitution. If this were done, most likely parsing of the command
line would be successful.
Home |
Main Index |
Thread Index |
Old Index