Hello John, * Trudeau, John F wrote on Fri, Aug 15, 2008 at 01:23:53AM CEST: > The bash version that was used in the original report was: > > /home/trudeajo$ /bin/bash --version > GNU bash, version 2.05b.0(1)-release (powerpc-ibm-aix5.1) > Copyright (C) 2002 Free Software Foundation, Inc.
> After bootstrapping the latest bash (3.2.39). I reran automake build > and got only 1 failure. > > Transcript and log attached. Thanks. The heart of the test failure is issues like this one: | ../install-sh -c -m 644 'sub/libbase.a' '/mtg/arc/automake-1.10.1/tests/testSubDir/sub1/ -prefix/foo/libbase.a' | ranlib '/mtg/arc/automake-1.10.1/tests/testSubDir/sub1/ -prefix/foo/libbase.a' | ar: Is a directory | ar: 0707-113 The fopen system call failed on file /mtg/arc/automake-1.10.1/tests/testSubDir/sub1/. | ranlib: 0654-601 Execution of ar failed | ar: illegal option -- e | ranlib: 0654-601 Execution of ar failed | Usage: ranlib [-t] [-X {32|64|32_64}] [--] file ... | make[1]: *** [install-fooexecLIBRARIES] Error 2 | make[1]: Leaving directory `/mtg/arc/automake-1.10.1/tests/testSubDir/ ' AIX ranlib is simply a Korn shell script with lack of quoting (and a trivial one, too, BTW). Oh well. If you happen to have a support contract with IBM, would you be so nice and file an error report with them about this? This patch would fix it: --- /bin/ranlib 2007-07-31 01:21:53.000000000 +0000 +++ /bin/ranlib 2008-09-07 07:08:52.000000000 +0000 @@ -83,7 +83,7 @@ # for OPT in "$@" do - $AR_CMD -X $OBJ_FLAG $1 + $AR_CMD -X $OBJ_FLAG "$1" if [ $? -ne 0 ] ; then dspmsg ranlib.cat 2 "ranlib: 0654-601 Execution of ar failed\n" RET_CODE=`expr $RET_CODE + 1` Anyway, I installed the patch below to work around the issue, and put you in THANKS. FWIW, a note to the patch: the subshell for the execution of ranlib is really needed: in the loop, we test for existence of file $p, which is the relative path to the _uninstalled_ library. So if we'd use `cd' in the current shell, then the second round of the for loop would be testing for the library in the _installed_ path. Not a huge issue, but I really would like such code to be consistently exercising its arguments. Cheers, Ralf AIX ranlib dislikes spaces in the argument. * lib/am/libs.am (install-%DIR%LIBRARIES): Fix instsh.test failure on AIX due to ranlib and whitespace in the directory. * THANKS: Update. Report by John F Trudeau. diff --git a/lib/am/libs.am b/lib/am/libs.am index 6cd0988..450a105 100644 --- a/lib/am/libs.am +++ b/lib/am/libs.am @@ -66,8 +66,10 @@ endif !%?BASE% if test -f $$p; then \ %BASE?$(am__strip_dir):f=$$p;% \ ## Must ranlib after installing because mod time changes. - echo " $(RANLIB) '$(DESTDIR)$(%NDIR%dir)/$$f'"; \ - $(RANLIB) "$(DESTDIR)$(%NDIR%dir)/$$f" || exit $$?; \ +## cd to target directory because AIX ranlib messes up with whitespace +## in the argument. + echo " ( cd '$(DESTDIR)$(%NDIR%dir)' && $(RANLIB) $$f )"; \ + ( cd "$(DESTDIR)$(%NDIR%dir)" && $(RANLIB) $$f ) || exit $$?; \ else :; fi; \ done endif %?INSTALL%