Opened 10 years ago

Closed 9 years ago

#93 closed defect (worksforme)

autoconf213 fails

Reported by: Dave Yeo Owned by:
Priority: major Milestone:
Component: rpm Version:
Severity: Keywords:
Cc: dave.r.yeo@…

Description

Attempting to rebuild configure in the mozilla directory (FF24ESR branch) fails apparently from a bad shell. At the beginging of the script it writes a temporary file to /tmp/acout### but the file is written to root.
Another problem is that sh can not find the autoconf213 script without its full pathname even though it is on the PATH.

[K:\git.mozilla.2]sh autoconf213
sh: Can't open autoconf213

[K:\git.mozilla.2]which sh
k:/usr/bin/sh.exe
[K:\git.mozilla.2]sh /usr/bin/autoconf213
awk: fatal: cannot open file `/tmp/acout.114' for reading (No such file or directory)

Ash fails similarly, using ksh or [k]sh succeeds.

Change History (7)

comment:1 Changed 10 years ago by Dave Yeo

This error is caused by having %TMP% set in the environment. Now using sh.exe as a shell results in an error about not finding /bin/sh from configure.
I'll leave this open for now as sh.exe should be able to run a configure script created by autoconf213.

comment:2 Changed 10 years ago by dmik

Most likely this is because you didn't set CONFIG_SHELL as I recommend in the related Mozilla ticket https://github.com/bitwiseworks/mozilla-os2/issues/82. Anyway, the exact error message (and surrounding output) is highly welcome.

comment:3 Changed 10 years ago by Dave Yeo

CONFIG_SHELL was set to ash.exe, the only one you mentioned that was not set was EXEC_SHELL. Output was

[K:\git.mozilla.2]sh /usr/bin/autoconf213
awk: fatal: cannot open file `/tmp/acout.1576' for reading (No such file or directory)

With acout.1576 (number is random) being created in the root of K: Try it by setting TMP=/tmp.

comment:4 Changed 10 years ago by dmik

Dave, what do you mean by ash and by ksh?

comment:5 Changed 10 years ago by Dave Yeo

Ash.exe, I have various from the first that bird compiled for building Mozilla to the one that RPM installed. In this case it is the one that RPM installed and did not delete when ash.exe was changed to sh.exe.
ksh is from http://hobbes.nmsu.edu/download/pub/os2/util/shell/pdksh-5.2.14-bin-4.zip, originally ported for Perl and one of the better OS/2 friendly shells though being EMX doesn't understand symlinks and too old to understand BEGINLIBPATH etc,

comment:6 Changed 10 years ago by dmik

Our RPM ash is the latest Knut's build of ash renamed to SH.EXE (with a symlink to SH) — so it's a binary only RPM. Can you make sure that this one (with no other shells on PATH) gets used when you do autoconf? Anyway, this is the only SH I use here for years for all projects and it works.

comment:7 Changed 9 years ago by Dave Yeo

Resolution: worksforme
Status: newclosed

I'll close this issue as sh is working as intended by the porters

Note: See TracTickets for help on using tickets.