* Chris Hoogendyk wrote on Fri, Jan 30, 2009 at 01:57:27PM CET: > Ralf Wildenhues wrote: >> * Chris Hoogendyk wrote on Thu, Jan 29, 2009 at 10:14:08PM CET: >> >>> This was run on a Sun T5220 using gccfss with gmake under Solaris 10.
>>> Is there anything else I can do for you? >> >> Yes: please post the output of >> cd tests >> gmake check VERBOSE=yes TESTS="check10.test mmodely.test spy.test" > > pasted below. Thanks. The check10.test failure was a bug in the test suite, since fixed (after the 1.10.2 release). The spy.test failure is weird (but harmless): > /usr/local/src/gnu-automake/automake-1.10.2/tests:/usr/local/gcc/bin:/opt/coolstack/bin:/usr/local/sbin:/usr/local/bin:/usr/sfw/sbin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/ccs/bin:/usr/ucb > === Running test ./spy.test > + pwd /usr/local/src/gnu-automake/automake-1.10.2/tests/testSubDir > + set -e + cat + touch b c + sleep 2 + : + gmake gmake: `a' is up to > date. > + cat a + test = + sleep 2 + touch b + gmake echo rule1 >> a > + cat a + test rule1 = rule1 + : + sleep 2 + touch c + gmake gmake: `a' > is up to date. > + cat a + test = rule2 FAIL: spy.test Which gmake version do you have, and is your build tree on some networked file system or other that has slow updates? The remaining failure is mmodely.test: > /usr/local/src/gnu-automake/automake-1.10.2/tests:/usr/local/gcc/bin:/opt/coolstack/bin:/usr/local/sbin:/usr/local/bin:/usr/sfw/sbin:/usr/sfw/bin:/usr/sbin:/usr/bin:/usr/ccs/bin:/usr/ucb > mmodely: running gcc --version > sparc-sun-solaris2.10-gcc (GCC) 4.2.0 (gccfss) > Copyright (C) 2007 Free Software Foundation, Inc. > This is free software; see the source for copying conditions. There is NO > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. > > === Running test ./mmodely.test > + pwd /usr/local/src/gnu-automake/automake-1.10.2/tests/testSubDir > + set -e + cat + cat + cat int joe (int arg) > { > return arg * 2; > } > + cat int joe (int arg); > int main (int argc, char **argv) > { > exit (joe (argc)); > } > + sleep 2 + : + : + aclocal-1.10 -Werror + autoconf + automake-1.10 > --foreign -Werror -Wall -a configure.in: installing `./ylwrap' > + ./configure checking for a BSD-compatible install... ./install-sh -c > checking whether build environment is sane... yes > checking for a thread-safe mkdir -p... ./install-sh -c -d > checking for gawk... no > checking for mawk... no > checking for nawk... nawk > checking whether gmake sets $(MAKE)... yes > checking whether to enable maintainer-specific portions of Makefiles... no > checking for gcc... gcc > checking for C compiler default output file name... a.out > checking whether the C compiler works... yes > checking whether we are cross compiling... no > checking for suffix of executables... checking for suffix of object > files... o > checking whether we are using the GNU C compiler... yes > checking whether gcc accepts -g... yes > checking for gcc option to accept ISO C89... none needed > checking for style of include used by gmake... GNU > checking dependency style of gcc... gcc3 > checking for flex... flex > checking lex output file root... lex.yy > checking lex library... -lfl > checking whether yytext is a pointer... yes > checking for bison... bison -y > configure: creating ./config.status > config.status: creating Makefile > config.status: executing depfiles commands > + gmake test -f zardoz.c || /bin/bash ./ylwrap zardoz.y y.tab.c zardoz.c > y.tab.h zardoz.h y.output zardoz.output -- false gcc > -DPACKAGE_NAME=\"mmodely\" -DPACKAGE_TARNAME=\"mmodely\" > -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"mmodely\ 1.0\" > -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"mmodely\" -DVERSION=\"1.0\" > -DYYTEXT_POINTER=1 -I. -I/usr/local/gcc/include > -I/opt/coolstack/include -I/usr/local/include -I/usr/sfw/include > -I/usr/include -g -fast -xtarget=ultraT2 -L/opt/coolstack/lib > -R/opt/coolstack/lib -L/usr/local/gcc/lib -R/usr/local/gcc/lib > -L/usr/local/lib -R/usr/local/lib -L/usr/sfw/lib -R/usr/sfw/lib > -L/usr/lib -R/usr/lib -L /usr/ccs/lib -R/usr/ccs/lib -L/usr/ucblib > -R/usr/ucblib -MT zardoz.o -MD -MP -MF .deps/zardoz.Tpo -c -o zardoz.o > zardoz.c > zardoz.c: In function 'main': > zardoz.c:4: warning: incompatible implicit declaration of built-in function > 'exit' > mv -f .deps/zardoz.Tpo .deps/zardoz.Po > test -f joe.c || /bin/bash ./ylwrap joe.l lex.yy.c joe.c -- false gcc > -DPACKAGE_NAME=\"mmodely\" -DPACKAGE_TARNAME=\"mmodely\" > -DPACKAGE_VERSION=\"1.0\" -DPACKAGE_STRING=\"mmodely\ 1.0\" > -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"mmodely\" -DVERSION=\"1.0\" > -DYYTEXT_POINTER=1 -I. -I/usr/local/gcc/include > -I/opt/coolstack/include -I/usr/local/include -I/usr/sfw/include > -I/usr/include -g -fast -xtarget=ultraT2 -L/opt/coolstack/lib > -R/opt/coolstack/lib -L/usr/local/gcc/lib -R/usr/local/gcc/lib > -L/usr/local/lib -R/usr/local/lib -L/usr/sfw/lib -R/usr/sfw/lib > -L/usr/lib -R/usr/lib -L /usr/ccs/lib -R/usr/ccs/lib -L/usr/ucblib > -R/usr/ucblib -MT joe.o -MD -MP -MF .deps/joe.Tpo -c -o joe.o joe.c > mv -f .deps/joe.Tpo .deps/joe.Po > gcc -g -fast -xtarget=ultraT2 -L/opt/coolstack/lib -R/opt/coolstack/lib > -L/usr/local/gcc/lib -R/usr/local/gcc/lib -L/usr/local/lib > -R/usr/local/lib -L/usr/sfw/lib -R/usr/sfw/lib -L/usr/lib -R/usr/lib -L > /usr/ccs/lib -R/usr/ccs/lib -L/usr/ucblib -R/usr/ucblib > -L/opt/coolstack/lib -R/opt/coolstack/lib -L/usr/local/gcc/lib > -R/usr/local/gcc/lib -L/usr/local/lib -R/usr/local/lib -L/usr/sfw/lib > -R/usr/sfw/lib -L/usr/lib -R/usr/lib -L/usr/ccs/lib -R/usr/ccs/lib > -L/usr/ucblib -R/usr/ucblib -o zardoz zardoz.o joe.o -lfl Undefined > first referenced > symbol in file > yylex /usr/sfw/lib/libfl.so > ld: fatal: Symbol referencing errors. No output written to zardoz > collect2: ld returned 1 exit status > gmake: *** [zardoz] Error 1 > FAIL: mmodely.test The Solaris linker links in libfl.so (although it needs no symbol from it) then fails due to the unresolved symbol yylex in the library (passing -Wl,-z,nodefs would prevent this failure). I'm fixing the test like this (both branches), and adding you to THANKS. Cheers, Ralf Fix mmodely.test to work on Solaris 10. * tests/mmodely.test: Define yylex, to satisfy needed symbol in libfl. Return from main instead of using exit, undeclared. * THANKS: Update. Report by Chris Hoogendyk. diff --git a/tests/mmodely.test b/tests/mmodely.test index fd11ac2..2173523 100755 --- a/tests/mmodely.test +++ b/tests/mmodely.test @@ -1,5 +1,5 @@ #! /bin/sh -# Copyright (C) 2004, 2006, 2007 Free Software Foundation, Inc. +# Copyright (C) 2004, 2006, 2007, 2009 Free Software Foundation, Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -39,18 +39,26 @@ zardoz_SOURCES = zardoz.y joe.l LDADD = @LEXLIB@ END -# The point of this test is that it is not dependant on a working lex or yacc. +# The point of this test is that it is not dependent on a working lex or yacc. cat > joe.c <<EOF int joe (int arg) { return arg * 2; } EOF +# On systems which link in libraries non-lazily and whose linkers +# complain about unresolved symbols by default, such as Solaris, an +# yylex function needs to be defined to avoid an error due to an +# unresolved symbol. cat > zardoz.c <<EOF int joe (int arg); +int yylex (void) +{ + return 0; +} int main (int argc, char **argv) { - exit (joe (argc)); + return joe (argc); } EOF