* Noah Misch wrote on Wed, Mar 15, 2006 at 05:10:58PM CET: > On Wed, Mar 15, 2006 at 06:06:30AM +0100, Ralf Wildenhues wrote: > > x86_64-unknown-linux-gnu > > with Pathscale compiler has two failures: > > 110: GNU Fortran 77 > > 111: GNU Fortran > > because the compiler tricks configure into thinking it's the GNU > > compiler, but actually has a different flag for free-form. > > Probably safest to fix the test rather than the macro? > > The testsuite.log fragment would be instructive, but that sounds right. Of course. Sorry about that. And yes, that free-form reason only applies to the second test. The first fails, because `pathf90 --version' outputs on stderr, not stdout. I am really unsure about a proper fix in both cases: Pathscale seems to go to great lengths to imitate GCC. If you want the Intel analogy: Autoconf does not use `-no_gcc' to detect the Intel C/C++ compiler either. And anyway an arms race is not very helpful. We could `2>&1' in the one test, and accept `-freeform' in the other. Thoughts? Cheers, Ralf | # -*- compilation -*- | 110. fortran.at:52: testing ... | ../../autoconf-2.59c/tests/fortran.at:52: autoconf --force -W obsolete | ../../autoconf-2.59c/tests/fortran.at:52: /bin/sh -n configure | ../../autoconf-2.59c/tests/fortran.at:52: autoheader | ../../autoconf-2.59c/tests/fortran.at:52: top_srcdir=$abs_top_srcdir ./configure -C | --- /dev/null 2006-03-02 03:11:23.215382864 -0500 | +++ /tmp/build/tests/testsuite.dir/at-stderr 2006-03-06 08:39:29.000000000 -0500 | @@ -0,0 +1 @@ | +configure: error: incorrectly recognized a GNU Fortran 77 compiler | stdout: | configure: creating cache config.cache | checking for Fortran 77 compiler default output file name... a.out | checking whether the Fortran 77 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 Fortran 77 compiler... yes | checking whether pathf90 accepts -g... yes | ../../autoconf-2.59c/tests/fortran.at:52: exit code was 1, expected 0 | config.log: *snip* | > ## ----------- ## | > ## Core tests. ## | > ## ----------- ## | > | > configure:1504: creating cache config.cache | > configure:1723: checking for Fortran 77 compiler version | > configure:1725: pathf90 --version >&5 | > PathScale EKOPath(TM) Compiler Suite: Version 2.3 | > Built on: 2005-11-10 18:26:15 -0800 | > Thread model: posix | > GNU gcc version 3.3.1 (PathScale 2.3 driver) | > | > Copyright 2000, 2001 Silicon Graphics, Inc. All Rights Reserved. | > Copyright 2002, 2003, 2004, 2005 PathScale, Inc. All Rights Reserved. | > See complete copyright, patent and legal notices in the | > /opt/pathscale/share/doc/pathscale-compilers-2.3/LEGAL.pdf file. | > configure:1728: $? = 0 | > configure:1730: pathf90 -v >&5 | > PathScale EKOPath(TM) Compiler Suite: Version 2.3 | > Built on: 2005-11-10 18:26:15 -0800 | > Thread model: posix | > GNU gcc version 3.3.1 (PathScale 2.3 driver) | > configure:1733: $? = 0 | > configure:1735: pathf90 -V >&5 | > pathf90 WARNING: -V is ignored | > pathf90: no input files | > For general help: pathf90 --help | > To search help: pathf90 -help:<string> | > configure:1738: $? = 1 | > configure:1752: checking for Fortran 77 compiler default output file name | > configure:1774: pathf90 conftest.f >&5 | > configure:1777: $? = 0 | > configure:1815: result: a.out | > configure:1820: checking whether the Fortran 77 compiler works | > configure:1826: ./a.out | > configure:1829: $? = 0 | > configure:1846: result: yes | > configure:1853: checking whether we are cross compiling | > configure:1855: result: no | > configure:1858: checking for suffix of executables | > configure:1860: pathf90 -o conftest conftest.f >&5 | > configure:1863: $? = 0 | > configure:1888: result: | > configure:1894: checking for suffix of object files | > configure:1905: pathf90 -c conftest.f >&5 | > configure:1908: $? = 0 | > configure:1931: result: o | > configure:1939: checking whether we are using the GNU Fortran 77 compiler | > configure:1953: pathf90 -c conftest.F >&5 | > configure:1959: $? = 0 | > configure:1963: test -z | > || test ! -s conftest.err | > configure:1966: $? = 0 | > configure:1969: test -s conftest.o | > configure:1972: $? = 0 | > configure:1986: result: yes | > configure:1992: checking whether pathf90 accepts -g | > configure:2004: pathf90 -c -g conftest.f >&5 | > configure:2010: $? = 0 | > configure:2014: test -z | > || test ! -s conftest.err | > configure:2017: $? = 0 | > configure:2020: test -s conftest.o | > configure:2023: $? = 0 | > configure:2036: result: yes | > configure:2063: pathf90 --version | grep GNU >&2 | > PathScale EKOPath(TM) Compiler Suite: Version 2.3 | > Built on: 2005-11-10 18:26:15 -0800 | > Thread model: posix | > GNU gcc version 3.3.1 (PathScale 2.3 driver) | > | > Copyright 2000, 2001 Silicon Graphics, Inc. All Rights Reserved. | > Copyright 2002, 2003, 2004, 2005 PathScale, Inc. All Rights Reserved. | > See complete copyright, patent and legal notices in the | > /opt/pathscale/share/doc/pathscale-compilers-2.3/LEGAL.pdf file. | > configure:2066: $? = 1 | > configure:2082: error: incorrectly recognized a GNU Fortran 77 compiler *snip* | > configure: exit 1 | 110. fortran.at:52: 110. GNU Fortran 77 (fortran.at:52): FAILED (fortran.at:52) | # -*- compilation -*- | 111. fortran.at:77: testing ... | ../../autoconf-2.59c/tests/fortran.at:77: autoconf --force -W obsolete | ../../autoconf-2.59c/tests/fortran.at:77: /bin/sh -n configure | ../../autoconf-2.59c/tests/fortran.at:77: autoheader | ../../autoconf-2.59c/tests/fortran.at:77: top_srcdir=$abs_top_srcdir ./configure -C | --- /dev/null 2006-03-02 03:11:23.215382864 -0500 | +++ /tmp/build/tests/testsuite.dir/at-stderr 2006-03-06 08:39:33.000000000 -0500 | @@ -0,0 +1 @@ | +configure: error: failed to recognize GNU Fortran's -ffree-form option. | stdout: | configure: creating cache config.cache | checking for Fortran compiler default output file name... a.out | checking whether the Fortran 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 Fortran compiler... yes | checking whether pathf95 accepts -g... yes | checking for Fortran flag to compile .f files... none | checking for Fortran flag needed to allow free-form source... -freeform | ../../autoconf-2.59c/tests/fortran.at:77: exit code was 1, expected 0 | config.log: *snip* | > ## ----------- ## | > ## Core tests. ## | > ## ----------- ## | > | > configure:1505: creating cache config.cache | > configure:1724: checking for Fortran compiler version | > configure:1726: pathf95 --version >&5 | > PathScale EKOPath(TM) Compiler Suite: Version 2.3 | > Built on: 2005-11-10 18:26:15 -0800 | > Thread model: posix | > GNU gcc version 3.3.1 (PathScale 2.3 driver) | > | > Copyright 2000, 2001 Silicon Graphics, Inc. All Rights Reserved. | > Copyright 2002, 2003, 2004, 2005 PathScale, Inc. All Rights Reserved. | > See complete copyright, patent and legal notices in the | > /opt/pathscale/share/doc/pathscale-compilers-2.3/LEGAL.pdf file. | > configure:1729: $? = 0 | > configure:1731: pathf95 -v >&5 | > PathScale EKOPath(TM) Compiler Suite: Version 2.3 | > Built on: 2005-11-10 18:26:15 -0800 | > Thread model: posix | > GNU gcc version 3.3.1 (PathScale 2.3 driver) | > configure:1734: $? = 0 | > configure:1736: pathf95 -V >&5 | > pathf95 WARNING: -V is ignored | > pathf95: no input files | > For general help: pathf95 --help | > To search help: pathf95 -help:<string> | > configure:1739: $? = 1 | > configure:1753: checking for Fortran compiler default output file name | > configure:1775: pathf95 conftest.f >&5 | > configure:1778: $? = 0 | > configure:1816: result: a.out | > configure:1821: checking whether the Fortran compiler works | > configure:1827: ./a.out | > configure:1830: $? = 0 | > configure:1847: result: yes | > configure:1854: checking whether we are cross compiling | > configure:1856: result: no | > configure:1859: checking for suffix of executables | > configure:1861: pathf95 -o conftest conftest.f >&5 | > configure:1864: $? = 0 | > configure:1889: result: | > configure:1895: checking for suffix of object files | > configure:1906: pathf95 -c conftest.f >&5 | > configure:1909: $? = 0 | > configure:1932: result: o | > configure:1940: checking whether we are using the GNU Fortran compiler | > configure:1954: pathf95 -c conftest.F >&5 | > configure:1960: $? = 0 | > configure:1964: test -z | > || test ! -s conftest.err | > configure:1967: $? = 0 | > configure:1970: test -s conftest.o | > configure:1973: $? = 0 | > configure:1987: result: yes | > configure:1993: checking whether pathf95 accepts -g | > configure:2005: pathf95 -c -g conftest.f >&5 | > configure:2011: $? = 0 | > configure:2015: test -z | > || test ! -s conftest.err | > configure:2018: $? = 0 | > configure:2021: test -s conftest.o | > configure:2024: $? = 0 | > configure:2037: result: yes | > configure:2067: checking for Fortran flag to compile .f files | > configure:2084: pathf95 -c -g -O2 conftest.f >&5 | > configure:2090: $? = 0 | > configure:2094: test -z | > || test ! -s conftest.err | > configure:2097: $? = 0 | > configure:2100: test -s conftest.o | > configure:2103: $? = 0 | > configure:2119: result: none | > configure:2148: checking for Fortran flag needed to allow free-form source | > configure:2168: pathf95 -c -g -O2 conftest.f >&5 | > | > program freeform | > ^ | > pathf95-400 pathf95: ERROR MAIN__, File = conftest.f, Line = 2, Column = 3 | > The characters found in the label field are not valid. | > ^ | > pathf95-211 pathf95: ERROR MAIN__, File = conftest.f, Line = 2, Column = 6 | > Continuation is not allowed for this statement. | > | > print *, 'Hello ', & | > ^ | > pathf95-197 pathf95: ERROR MAIN__, File = conftest.f, Line = 4, Column = 27 | > Unexpected syntax: "operand" was expected but found "&". | > | > 'world.' | > ^ | > pathf95-100 pathf95: ERROR MAIN__, File = conftest.f, Line = 5, Column = 12 | > This statement must begin with a label, a keyword, or an identifier. | > | > pathf95: PathScale(TM) Fortran Version 2.3 (f14) Mon Mar 6, 2006 08:40:56 | > pathf95: 6 source lines | > pathf95: 4 Error(s), 0 Warning(s), 0 Other message(s), 0 ANSI(s) | > pathf95: "explain pathf95-message number" gives more information about each message | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -ffree-form conftest.f >&5 | > pathf95 ERROR parsing -ffree-form: unknown flag | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -FR conftest.f >&5 | > pathf95 ERROR parsing -F: unknown flag | > pathf95 ERROR parsing -FR: no argument given for option | > pathf95 ERROR parsing -FR: unknown flag | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -free conftest.f >&5 | > pathf95 ERROR parsing -free: unknown flag | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -qfree conftest.f >&5 | > pathf95 ERROR parsing -qfree: unknown flag | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -Mfree conftest.f >&5 | > pathf95 ERROR parsing -Mfree: unknown flag | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -Mfreeform conftest.f >&5 | > pathf95 ERROR parsing -Mfreeform: unknown flag | > configure:2174: $? = 2 | > configure: failed program was: | > | | > | program freeform | > | ! FIXME: how to best confuse non-freeform compilers? | > | print *, 'Hello ', & | > | 'world.' | > | end | > configure:2168: pathf95 -c -g -O2 -freeform conftest.f >&5 | > configure:2174: $? = 0 | > configure:2178: test -z | > || test ! -s conftest.err | > configure:2181: $? = 0 | > configure:2184: test -s conftest.o | > configure:2187: $? = 0 | > configure:2203: result: -freeform | > configure:2222: error: failed to recognize GNU Fortran's -ffree-form option. *snip* | 111. fortran.at:77: 111. GNU Fortran (fortran.at:77): FAILED (fortran.at:77) _______________________________________________ Autoconf mailing list Autoconf@xxxxxxx http://lists.gnu.org/mailman/listinfo/autoconf