Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 218936 - games-action/nighthawk-2.2 uses incompatible ./configure
Summary: games-action/nighthawk-2.2 uses incompatible ./configure
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Games (show other bugs)
Hardware: All Linux
: High normal
Assignee: Gentoo Games
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-04-22 19:55 UTC by Martin Väth
Modified: 2008-04-25 18:02 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Väth 2008-04-22 19:55:27 UTC
The ./configure script of nighthawk is so terribly non-standard that it will
even fail if /bin/sh is a symlink to dash:
  ./configure: 3627: Syntax error: Bad fd number

I suggest to replace #!/bin/sh by #!/bin/bash in ./configure.

Probably, it would be better to run autoreconf/autoconf, but I tried this
with all automake/autoconf combinations and all failed for various reasons...
Comment 1 SpanKY gentoo-dev 2008-04-25 08:01:12 UTC
not sure why you think it's "terribly non-standard" when it is quite completely standard.  please refrain from making such comments unless you actually understand POSIX shell coding.

the one warning you display is merely a variable not being fully replaced by autotools.
Comment 2 Martin Väth 2008-04-25 17:48:16 UTC
(In reply to comment #1)
> please refrain from making such comments unless you actually
> understand POSIX shell coding.

Yeah, it is better to insult the poster than to look up the standard or
even fix the code. (BTW: I did not say it is non-POSIX but non-standard -
autotools is supposed to work even with non-POSIX shells).
But of course it is non-POSIX either. Here is the citation from the
specification:

: 2.7.6 Duplicating an Output File Descriptor
: The redirection operator:
: [n]>&word
: ... If word evaluates to one or more digits ...
: ... If word evaluates to '-' ...
: If word evaluates to something else, the behavior is unspecified.

So by POSIX standard: "unspecified behavior".

> the one warning

If it would just be a _warning_, I would not have cared. But it is an *error*:
emerging nighthawk *fails* when /bin/sh is a symlink to dash.

Just with some (maybe all) bash versions, it installs by accident
because bash seems to make the (very strange) interpretation that "1>&word"
is the same as the bashism ">&word".

> you display is merely a variable not being fully replaced by autotools.

I do not care *why* the script is broken. Fact is that the broken script is
used and does not install. (BTW: if the nighthawk build system is so fully
standard then why was this variable not replaced? Actually, this is what I
meant by *terribly* non-standard: all attempts to "eautoreconf" fail with
some variables not being replaced correctly or even worse problems)
Comment 3 Martin Väth 2008-04-25 18:02:53 UTC
I am really sorry: I got an out-of-date portage snapshot in which the problem
was not fixed (that's why I was so upset).

Once more: I am really sorry.