Re: [Flex-help] flex-2.5.37 testsuite clean up on Solaris
flex is a tool for generating scanners
Brought to you by:
wlestes
From: Will E. <wes...@gm...> - 2012-10-25 09:40:33
|
You need GNU texinfo to build the docs. And what version of bison are you using? (I actually need to pull the latest bison version and rebuild flex to clean up some issues.) On Wednesday, 24 October 2012, 11:49 pm -0400, Dennis Clarke <dc...@bl...> wrote: > > > For the record, the shell script autogen.sh in the top level of the flex > > source distribution is what I use to rebuild flex from the ground up. > > It > > likely has options that you will want to use yourself. > > Looks like just autoreconf --verbose --install and that seems to work great .. however I have fallen into the fourth level of dependecy hell as my new Makefile.am files work great and there are now only two failures in the pile .. however I now also get this crud : > > $ gmake check > gmake check-recursive > gmake[1]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > Making check in lib > gmake[2]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/lib' > gmake[2]: Nothing to be done for `check'. > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/lib' > Making check in . > gmake[2]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > Making check in doc > gmake[2]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/doc' > restore=: && backupdir=".am$$" && \ > am__cwd=`pwd` && CDPATH="${ZSH_VERSION+.}:" && cd . && \ > rm -rf $backupdir && mkdir $backupdir && \ > if (/bin/bash /usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/missing --run makeinfo --version) >/dev/null 2>&1; then \ > for f in flex.info flex.info-[0-9] flex.info-[0-9][0-9] flex.i[0-9] flex.i[0-9][0-9]; do \ > if test -f $f; then mv $f $backupdir; restore=mv; else :; fi; \ > done; \ > else :; fi && \ > cd "$am__cwd"; \ > if /bin/bash /usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/missing --run makeinfo -I . \ > -o flex.info flex.texi; \ > then \ > rc=0; \ > CDPATH="${ZSH_VERSION+.}:" && cd .; \ > else \ > rc=$?; \ > CDPATH="${ZSH_VERSION+.}:" && cd . && \ > $restore $backupdir/* `echo "./flex.info" | sed 's|[^/]*$||'`; \ > fi; \ > rm -rf $backupdir; exit $rc > /usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/missing: line 52: makeinfo: command not found > WARNING: `makeinfo' is missing on your system. You should only need it if > you modified a `.texi' or `.texinfo' file, or any other file > indirectly affecting the aspect of the manual. The spurious > call might also be the consequence of using a buggy `make' (AIX, > DU, IRIX). You might want to install the `Texinfo' package or > the `GNU make' package. Grab either from any GNU archive site. > TEXINPUTS=".:$TEXINPUTS" \ > MAKEINFO='/bin/bash /usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/missing --run makeinfo -I .' \ > texi2dvi --pdf --batch --clean flex.texi > /bin/bash: texi2dvi: command not found > gmake[2]: *** [flex.pdf] Error 127 > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/doc' > gmake[1]: *** [check-recursive] Error 1 > gmake[1]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > gmake: *** [check] Error 2 > $ > > > > So I go looking for makeinfo and then end up building a full TeX install from TeXlive just to get past this. Also ... i had to get texinfo-4.13a and also looking for texi2dvi : > > > $ gmake check > gmake check-recursive > gmake[1]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > Making check in lib > gmake[2]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/lib' > gmake[2]: Nothing to be done for `check'. > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/lib' > Making check in . > gmake[2]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > Making check in doc > gmake[2]: Entering directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/doc' > TEXINPUTS=".:$TEXINPUTS" \ > MAKEINFO='/bin/bash /usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/missing --run makeinfo -I .' \ > texi2dvi --pdf --batch --clean flex.texi > You don't have a working TeX binary (tex) installed anywhere in > your PATH, and texi2dvi cannot proceed without one. If you want to use > this script, you'll need to install TeX (if you don't have it) or change > your PATH or TEX environment variable (if you do). See the --help > output for more details. > > For information about obtaining TeX, please see http://www.tug.org. If > you happen to be using Debian, you can get it with this command: > apt-get install tetex-bin > gmake[2]: *** [flex.pdf] Error 1 > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1/doc' > gmake[1]: *** [check-recursive] Error 1 > gmake[1]: Leaving directory `/usr/local/build/flex-2.5.37_SunOS5.10_sparcv9-pass1' > gmake: *** [check] Error 2 > $ > > seriously ? > > So i have a pile of modified Makefile.am files that I feel like handing over to you as I have done this test now on RHEL6 with these mods and all works great except for a code problem in two of the tests. > > see attached flex-2.5.37_tests_Makefile.am-modified.star.bz2 ( POSIX tar file ) > > On RHEL6 I see these results : > > echo Results: ; \ > echo Tests succeeded: `echo -n "$NOK"|wc -c`; \ > echo Tests FAILED: `echo -n "$NFAIL"|wc -c` ; \ > test "$NFAIL" = "" > Executing test test-concatenated-options > Test test-concatenated-options succeeded. > Executing test test-c++-yywrap > Test test-c++-yywrap succeeded. > Executing test test-extended > Test test-extended succeeded. > Executing test test-ccl > Test test-ccl succeeded. > Executing test test-quotes > Test test-quotes succeeded. > Executing test test-rescan-r > Test test-rescan-r succeeded. > Executing test test-rescan-nr > Test test-rescan-nr succeeded. > Executing test test-basic-nr > Test test-basic-nr succeeded. > Executing test test-basic-r > Test test-basic-r succeeded. > Executing test test-bison-yylloc > Test test-bison-yylloc FAILED. See test-bison-yylloc/OUTPUT for details. > Executing test test-bison-yylval > Test test-bison-yylval FAILED. See test-bison-yylval/OUTPUT for details. > Executing test test-bison-nr > Test test-bison-nr succeeded. > Executing test test-multiple-scanners-nr > Test test-multiple-scanners-nr succeeded. > Executing test test-multiple-scanners-r > Test test-multiple-scanners-r succeeded. > Executing test test-header-nr > Test test-header-nr succeeded. > Executing test test-header-r > Test test-header-r succeeded. > Executing test test-reject > Test test-reject succeeded. > Executing test test-c++-multiple-scanners > Test test-c++-multiple-scanners succeeded. > Executing test test-c++-basic > Test test-c++-basic succeeded. > Executing test test-posixly-correct > Test test-posixly-correct succeeded. > Executing test test-posix > Test test-posix succeeded. > Executing test test-mem-r > Test test-mem-r succeeded. > Executing test test-mem-nr > Test test-mem-nr succeeded. > Executing test test-debug-nr > Test test-debug-nr succeeded. > Executing test test-debug-r > Test test-debug-r succeeded. > Executing test test-lineno-r > Test test-lineno-r succeeded. > Executing test test-lineno-nr > Test test-lineno-nr succeeded. > Executing test test-linedir-r > Test test-linedir-r succeeded. > Executing test test-array-nr > Test test-array-nr succeeded. > Executing test test-array-r > Test test-array-r succeeded. > Executing test test-c-cpp-nr > Test test-c-cpp-nr succeeded. > Executing test test-c-cpp-r > Test test-c-cpp-r succeeded. > Executing test test-include-by-buffer > Test test-include-by-buffer succeeded. > Executing test test-include-by-push > Test test-include-by-push succeeded. > Executing test test-include-by-reentrant > Test test-include-by-reentrant succeeded. > Executing test test-prefix-nr > Test test-prefix-nr succeeded. > Executing test test-prefix-r > Test test-prefix-r succeeded. > Executing test test-pthread > Test test-pthread succeeded. > Executing test test-string-nr > Test test-string-nr succeeded. > Executing test test-string-r > Test test-string-r succeeded. > Executing test test-yyextra > Test test-yyextra succeeded. > Executing test test-alloc-extra > Test test-alloc-extra succeeded. > Executing test test-noansi-nr > Test test-noansi-nr succeeded. > Executing test test-noansi-r > Test test-noansi-r succeeded. > Executing test test-top > Test test-top succeeded. > Executing test test-table-opts > Test test-table-opts succeeded. > Results: > Tests succeeded: 44 > Tests FAILED: 2 > gmake[4]: *** [check-local] Error 1 > gmake[4]: Leaving directory `/usr/local/build/flex-2.5.37-pass2/tests' > gmake[3]: *** [check-am] Error 2 > gmake[3]: Leaving directory `/usr/local/build/flex-2.5.37-pass2/tests' > gmake[2]: *** [check-recursive] Error 1 > gmake[2]: Leaving directory `/usr/local/build/flex-2.5.37-pass2/tests' > gmake[1]: *** [check-recursive] Error 1 > gmake[1]: Leaving directory `/usr/local/build/flex-2.5.37-pass2' > gmake: *** [check] Error 2 > sedna.adbs.ca $ pwd > /usr/local/build/flex-2.5.37-pass2 > > what failed ? > > sedna.adbs.ca $ cat tests/test-bison-yylloc/OUTPUT > gmake[5]: Entering directory `/usr/local/build/flex-2.5.37-pass2/tests/test-bison-yylloc' > ../../flex scanner.l > /usr/local/bin/bison --defines --output=parser.c --name-prefix="test" parser.y > gcc -c -o scanner.o -I. -I../.. -I../.. -I. -I/usr/local/include -mtune=opteron -march=opteron -m64 -g -malign-double -m128bit-long-double -mpc80 -fexceptions -fpic -fvisibility=default -Wl,-rpath=/usr/local/lib -Wl,-q -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 scanner.c > gcc -c -o parser.o -I. -I../.. -I../.. -I. -I/usr/local/include -mtune=opteron -march=opteron -m64 -g -malign-double -m128bit-long-double -mpc80 -fexceptions -fpic -fvisibility=default -Wl,-rpath=/usr/local/lib -Wl,-q -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 parser.c > parser.c: In function 'testparse': > parser.c:1566: warning: passing argument 1 of 'testerror' discards qualifiers from pointer target type > parser.y:38: note: expected 'char *' but argument is of type 'const char *' > gcc -c -o main.o -I. -I../.. -I../.. -I. -I/usr/local/include -mtune=opteron -march=opteron -m64 -g -malign-double -m128bit-long-double -mpc80 -fexceptions -fpic -fvisibility=default -Wl,-rpath=/usr/local/lib -Wl,-q -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 main.c > main.c:27: error: conflicting types for 'testparse' > parser.h:98: note: previous declaration of 'testparse' was here > gmake[5]: *** [main.o] Error 1 > gmake[5]: Leaving directory `/usr/local/build/flex-2.5.37-pass2/tests/test-bison-yylloc' > sedna.adbs.ca $ > sedna.adbs.ca $ > sedna.adbs.ca $ cat tests/test-bison-yylval/OUTPUT > gmake[5]: Entering directory `/usr/local/build/flex-2.5.37-pass2/tests/test-bison-yylval' > /usr/local/bin/bison --defines --output=parser.c --name-prefix="test" parser.y > gcc -c -o parser.o -I. -I../.. -I../.. -I. -I/usr/local/include -mtune=opteron -march=opteron -m64 -g -malign-double -m128bit-long-double -mpc80 -fexceptions -fpic -fvisibility=default -Wl,-rpath=/usr/local/lib -Wl,-q -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 parser.c > parser.c: In function 'testparse': > parser.c:1514: warning: passing argument 1 of 'testerror' discards qualifiers from pointer target type > parser.y:38: note: expected 'char *' but argument is of type 'const char *' > ../../flex scanner.l > gcc -c -o scanner.o -I. -I../.. -I../.. -I. -I/usr/local/include -mtune=opteron -march=opteron -m64 -g -malign-double -m128bit-long-double -mpc80 -fexceptions -fpic -fvisibility=default -Wl,-rpath=/usr/local/lib -Wl,-q -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 scanner.c > gcc -c -o main.o -I. -I../.. -I../.. -I. -I/usr/local/include -mtune=opteron -march=opteron -m64 -g -malign-double -m128bit-long-double -mpc80 -fexceptions -fpic -fvisibility=default -Wl,-rpath=/usr/local/lib -Wl,-q -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE=1 main.c > main.c:27: error: conflicting types for 'testparse' > parser.h:85: note: previous declaration of 'testparse' was here > gmake[5]: *** [main.o] Error 1 > gmake[5]: Leaving directory `/usr/local/build/flex-2.5.37-pass2/tests/test-bison-yylval' > sedna.adbs.ca $ > sedna.adbs.ca $ > > On Solaris I fall into dependency hell. gee ... what a surprise :-\ > > Dennis > > -- Will Estes (wl...@us...) Flex Project Maintainer http://flex.sourceforge.net/ |