bug-coreutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#17774: AIX and lbracket ([) program - will not install on AIX using


From: Paul Eggert
Subject: bug#17774: AIX and lbracket ([) program - will not install on AIX using installp
Date: Fri, 31 Dec 2021 12:53:52 -0800
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1

On 6/14/14 10:28, Paul Eggert wrote:

That part of POSIX has been standardized since POSIX.2 (IEEE Std 1003.2-1992), and the wording hasn't changed since then if I recall correctly, so AIX has had this conformance bug for decades and nobody has cared....

I just ran into a related problem when building bleeding-edge coreutils on AIX 7.1, and so I thought I'd document it here. On AIX 7.1, 'make check' fails with:

FAIL: tests/misc/help-version.sh

because 'make' never built a '[' program. And AIX 'make' doesn't build a '[' program because it mishandles '[' in 'make' macros, which means that with Makefiles like this:

  EXEEXT =
  bin_PROGRAMS = ... src/[$(EXEEXT) ...
  PROGRAMS = $(bin_PROGRAMS) ...
  all-am: ... $(PROGRAMS) ...

'make all-am' does not "see" the 'src/[' and so doesn't build it.

Because of this bug, 'make install' obviously will not work correctly, as there's no '[' command to install.

A simple workaround is to use GNU Make, which doesn't have this bug.

This bug in AIX 'make' is so obscure that I'm not going to bother documenting it in the Autoconf manual under its portability guidelines for 'make'. Anyway, nowadays "just use GNU Make" is a good recipe for just about every package other than GNU Make itself.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]