GNU bug report logs - #15258
Fortran tests in configure script seem questionable

Previous Next

Package: automake;

Reported by: Dennis Clarke <dclarke <at> blastwave.org>

Date: Tue, 3 Sep 2013 14:37:02 UTC

Severity: minor

Tags: moreinfo

To reply to this bug, email your comments to 15258 AT debbugs.gnu.org.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-automake <at> gnu.org:
bug#15258; Package automake. (Tue, 03 Sep 2013 14:37:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Dennis Clarke <dclarke <at> blastwave.org>:
New bug report received and forwarded. Copy sent to bug-automake <at> gnu.org. (Tue, 03 Sep 2013 14:37:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Dennis Clarke <dclarke <at> blastwave.org>
To: bug-automake <at> gnu.org
Subject: Fortran tests in configure script seem questionable
Date: Tue, 03 Sep 2013 10:36:02 -0400
[Message part 1 (text/plain, inline)]
 
I am going to try to build automake-13.4 on Solaris with the Oracle Solaris 12.3
dev tools and within configure I see that Fortran tests fail : 


node002$ ./configure 
checking whether /usr/local/bin/gmake supports nested variables... yes
checking build system type... sparc-sun-solaris2.10
checking host system type... sparc-sun-solaris2.10
checking for a BSD-compatible install... lib/install-sh -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... lib/install-sh -c -d
checking for gawk... gawk
checking whether /usr/local/bin/gmake sets $(MAKE)... yes
checking whether ln -s works... yes
checking for perl... /usr/local/bin/perl
checking whether /usr/local/bin/perl supports ithreads... no
checking for tex... tex
checking for yacc... yacc
checking for lex... lex
checking whether autoconf is installed... yes
checking whether autoconf works... yes
checking whether autoconf is recent enough... yes
checking whether ln works... yes
checking for grep that handles long lines and -e... /usr/xpg4/bin/grep
checking for egrep... /usr/xpg4/bin/grep -E
checking for fgrep... /usr/xpg4/bin/grep -F
configure: will now look for a sturdy POSIX shell, for our testsuite
checking for sh... /usr/xpg4/bin/sh
checking for sh5... no
checking for dash... no
checking for ash... no
checking for bash... /usr/local/bin/bash
checking for zsh... /usr/bin/zsh
checking for ksh... /usr/bin/ksh
checking for pdksh... no
checking whether /usr/local/bin/bash supports $(cmd)... yes
checking whether /usr/local/bin/bash supports $((expr))... yes
checking whether /usr/local/bin/bash supports ${#var}... yes
checking whether /usr/local/bin/bash supports ${var#glob} and ${var%glob}... yes
checking whether /usr/local/bin/bash preserves exit traps with "set -e"... yes
checking whether /usr/local/bin/bash can define exit traps in a shell function... yes
checking whether /usr/local/bin/bash corrupts stderr with "set -x"... no
checking whether /usr/local/bin/bash can return early from "dot-sourced" files... yes
checking whether /usr/local/bin/bash supports alias named like shell builtins... yes
checking whether /usr/local/bin/bash supports "test -e"... yes
configure: shell /usr/local/bin/bash is good enough, stop looking
configure: will use /usr/local/bin/bash as the testsuite shell
configure: will now look for generic compilers
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... no
checking whether /opt/solarisstudio12.3/bin/cc accepts -g... yes
checking for /opt/solarisstudio12.3/bin/cc option to accept ISO C89... none needed
checking whether the C++ compiler works... yes
checking for C++ compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C++ compiler... no
checking whether /opt/solarisstudio12.3/bin/CC accepts -g... yes
checking for xlf95... no
checking for f95... f95
checking whether the Fortran compiler works... no
configure: WARNING: Fortran compiler cannot create executables
configure: tests requiring the Fortran compiler will be skipped
checking for xlf... no
checking for f77... f77
checking whether the Fortran 77 compiler works... no
configure: WARNING: Fortran 77 compiler cannot create executables
configure: tests requiring the Fortran 77 compiler will be skipped
configure: will now look for GNU compilers
checking for gcc... no
checking for g++... no
checking for gpp... no
checking for gfortran... no
checking for g77... no
checking for gfortran... no
checking for gcj... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating t/wrap/aclocal-1.13
config.status: creating t/wrap/automake-1.13
node002$ 

This is highly suspect given that I have a full Fortran 77, 90 and 95
compiler in the Oracle software : 


node002$ wget http://www.personal.psu.edu/faculty/j/h/jhm/f90/examples/array2.f

node002$ ls -l 
total 5
-rw-r--r-- 1 dclarke adbs 2832 Dec 19 1996 array2.f
node002$ 
node002$ f90 -\# -m64 -o array2 array2.f 
### f90: Note: NLSPATH = /opt/solarisstudio12.3/prod/bin/../lib/locale/%L/LC_MESSAGES/%N.cat:/opt/solarisstudio12.3/prod/bin/../../lib/locale/%L/LC_MESSAGES/%N.cat
### command line files and options (expanded):
### -# -m64 -o array2 array2.f
/opt/solarisstudio12.3/prod/bin/f90comp -m3 -ev -dq -xall -xivdep=loop -H "/opt/solarisstudio12.3/prod/bin/f90 -m64 " -I/opt/solarisstudio12.3/prod/include/f95/v9 -p/opt/solarisstudio12.3/prod/lib/modules/v9 -xarch=v9 -y-xarch=v9 -xmemalign=8f -iorounding=processor-defined -xhasc=yes -xcache=generic -y-xcache=generic -y-xassume_control=optimize -xassume_control=optimize -y-xdbggen=no%stabs+dwarf2 -y-xdbggen=incl -y-fbe -y/opt/solarisstudio12.3/prod/bin/fbe -y-xcode=abs44 -y-ftrap=division,invalid,overflow -y-xmemalign=8f -y-verbose -y-comdat -y-xarch=sparc -y-m64 -y-comdat -y-xthreadvar=no%dynamic -y-xannotate=yes -y-o -yarray2.o -y-s array2.f
### f90: Note: LD_LIBRARY_PATH = (null)
### f90: Note: LD_LIBRARY_PATH_64 = (null)
### f90: Note: LD_RUN_PATH = /usr/local/lib
### f90: Note: LD_OPTIONS = -64 -R/usr/local/lib/$ISALIST:/usr/local/lib -L/usr/local/lib/$ISALIST:/usr/local/lib
ln -s /opt/solarisstudio12.3/prod/lib /tmp/lib_link.1378217103.8276.01
/usr/ccs/bin/ld -zld32=-S/tmp/lib_link.1378217103.8276.01/libldstab_ws.so -zld64=-S/tmp/lib_link.1378217103.8276.01/v9/libldstab_ws.so -zld32=-S/tmp/lib_link.1378217103.8276.01/libld_annotate.so -zld64=-S/tmp/lib_link.1378217103.8276.01/v9/libld_annotate.so /opt/solarisstudio12.3/prod/lib/v9/crti.o /opt/solarisstudio12.3/prod/lib/v9/crt1.o /opt/solarisstudio12.3/prod/lib/v9/wordalignI8.o /opt/solarisstudio12.3/prod/lib/v9/values-xi.o array2.o -o array2 -Y "P,/opt/solarisstudio12.3/lib/sparc/64:/opt/solarisstudio12.3/lib/v9:/opt/solarisstudio12.3/prod/lib/sparc/64:/opt/solarisstudio12.3/prod/lib/v9:/usr/ccs/lib/sparcv9:/lib/64:/usr/lib/64" -Qy "-R/usr/local/lib:/opt/solarisstudio12.3/lib/sparc/64:/opt/solarisstudio12.3/lib/v9" -t -lifai -lsunimath -lfai -lfai2 -lfsumai -lfprodai -lfminlai -lfmaxlai -lfminvai -lfmaxvai -lfui -lfsu -lsunmath -lmtsk -lm -lc /opt/solarisstudio12.3/prod/lib/v9/crtn.o
node002$ 
node002$ file array2
array2: ELF 64-bit MSB executable SPARCV9 Version 1, dynamically linked, not stripped
node002$ 
node002$ ./array2
 RESULTS FOR FULL C ARRAY
 AVERAGE OF ALL ELEMENTS IN C = 7.500
 MINIMUM OF ALL ELEMENTS IN C = 2.000
 MAXIMUM OF ALL ELEMENTS IN C = 13.000
 C = 
 0.20E+01 0.30E+01 0.40E+01 0.60E+01 0.70E+01 0.80E+01 0.90E+01 0.11E+02
 0.12E+02 0.13E+02


 RESULTS FOR ELEMENTS 2 THROUGH 9 OF C
 AVERAGE OF SELECTED ELEMENTS IN C = 7.500
 MINIMUM OF SELECTED ELEMENTS IN C = 3.000
 MAXIMUM OF SELECTED ELEMENTS IN C = 12.000
 C = 
 3.00E+00 4.00E+00 6.00E+00 7.00E+00 8.00E+00 9.00E+00 1.10E+01 1.20E+01
 
 RESULTS OF LOG(A)
 C = 
 0.00E+00 6.93E-01 1.10E+00 0.00E+00 1.61E+00 1.79E+00 1.95E+00 2.08E+00
 2.20E+00 2.30E+00
node002$ 

Also f95 : 

node002$ f95 -m64 -o array2 array2.f 
node002$ ls -lapb array2
-rwxr-xr-x 1 dclarke adbs 18016 Sep 3 14:06 array2
node002$ ./array2 
 RESULTS FOR FULL C ARRAY
 AVERAGE OF ALL ELEMENTS IN C = 7.500
 MINIMUM OF ALL ELEMENTS IN C = 2.000
 MAXIMUM OF ALL ELEMENTS IN C = 13.000
 C = 
 0.20E+01 0.30E+01 0.40E+01 0.60E+01 0.70E+01 0.80E+01 0.90E+01 0.11E+02
 0.12E+02 0.13E+02


 RESULTS FOR ELEMENTS 2 THROUGH 9 OF C
 AVERAGE OF SELECTED ELEMENTS IN C = 7.500
 MINIMUM OF SELECTED ELEMENTS IN C = 3.000
 MAXIMUM OF SELECTED ELEMENTS IN C = 12.000
 C = 
 3.00E+00 4.00E+00 6.00E+00 7.00E+00 8.00E+00 9.00E+00 1.10E+01 1.20E+01
 
 RESULTS OF LOG(A)
 C = 
 0.00E+00 6.93E-01 1.10E+00 0.00E+00 1.61E+00 1.79E+00 1.95E+00 2.08E+00
 2.20E+00 2.30E+00


So perhaps the configure script is looking for GNU Fortran only? 

The Fortran compilers provided, as well as everything else, are installed 
in the bizarre location /opt/solarisstudio12.3/bin. For many many years
the "defacto" standard location for the vendor compilers in Solaris was
at /opt/SUNWspro and then someone at Sun or Oracle made the brilliant
move to change the path and thus break twenty years of scripts. Perhaps
that is the issue here.

Dennis
[Message part 2 (text/html, inline)]

Information forwarded to bug-automake <at> gnu.org:
bug#15258; Package automake. (Thu, 26 Dec 2013 20:16:01 GMT) Full text and rfc822 format available.

Message #8 received at 15258 <at> debbugs.gnu.org (full text, mbox):

From: Stefano Lattarini <stefano.lattarini <at> gmail.com>
To: Dennis Clarke <dclarke <at> blastwave.org>
Cc: 15258 <at> debbugs.gnu.org
Subject: Re: bug#15258: Fortran tests in configure script seem questionable
Date: Thu, 26 Dec 2013 21:14:46 +0100
tags 15258 + moreinfo
severity 15258 minro
thanks

Hi Dennis, sorry for the delay.

On 09/03/2013 04:36 PM, Dennis Clarke wrote:
>  
> I am going to try to build automake-13.4 on Solaris with the Oracle Solaris 12.3
> dev tools and within configure I see that Fortran tests fail : 
> 
> 
> node002$ ./configure 
> checking whether /usr/local/bin/gmake supports nested variables... yes
> checking build system type... sparc-sun-solaris2.10
> checking host system type... sparc-sun-solaris2.10
> checking for a BSD-compatible install... lib/install-sh -c
> checking whether build environment is sane... yes
> checking for a thread-safe mkdir -p... lib/install-sh -c -d
> checking for gawk... gawk
> checking whether /usr/local/bin/gmake sets $(MAKE)... yes
> checking whether ln -s works... yes
> checking for perl... /usr/local/bin/perl
> checking whether /usr/local/bin/perl supports ithreads... no
> checking for tex... tex
> checking for yacc... yacc
> checking for lex... lex
> checking whether autoconf is installed... yes
> checking whether autoconf works... yes
> checking whether autoconf is recent enough... yes
> checking whether ln works... yes
> checking for grep that handles long lines and -e... /usr/xpg4/bin/grep
> checking for egrep... /usr/xpg4/bin/grep -E
> checking for fgrep... /usr/xpg4/bin/grep -F
> configure: will now look for a sturdy POSIX shell, for our testsuite
> checking for sh... /usr/xpg4/bin/sh
> checking for sh5... no
> checking for dash... no
> checking for ash... no
> checking for bash... /usr/local/bin/bash
> checking for zsh... /usr/bin/zsh
> checking for ksh... /usr/bin/ksh
> checking for pdksh... no
> checking whether /usr/local/bin/bash supports $(cmd)... yes
> checking whether /usr/local/bin/bash supports $((expr))... yes
> checking whether /usr/local/bin/bash supports ${#var}... yes
> checking whether /usr/local/bin/bash supports ${var#glob} and ${var%glob}... yes
> checking whether /usr/local/bin/bash preserves exit traps with "set -e"... yes
> checking whether /usr/local/bin/bash can define exit traps in a shell function... yes
> checking whether /usr/local/bin/bash corrupts stderr with "set -x"... no
> checking whether /usr/local/bin/bash can return early from "dot-sourced" files... yes
> checking whether /usr/local/bin/bash supports alias named like shell builtins... yes
> checking whether /usr/local/bin/bash supports "test -e"... yes
> configure: shell /usr/local/bin/bash is good enough, stop looking
> configure: will use /usr/local/bin/bash as the testsuite shell
> configure: will now look for generic compilers
> checking whether the C compiler works... yes
> checking for C compiler default output file name... a.out
> checking for suffix of executables... 
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C compiler... no
> checking whether /opt/solarisstudio12.3/bin/cc accepts -g... yes
> checking for /opt/solarisstudio12.3/bin/cc option to accept ISO C89... none needed
> checking whether the C++ compiler works... yes
> checking for C++ compiler default output file name... a.out
> checking for suffix of executables... 
> checking whether we are cross compiling... no
> checking for suffix of object files... o
> checking whether we are using the GNU C++ compiler... no
> checking whether /opt/solarisstudio12.3/bin/CC accepts -g... yes
> checking for xlf95... no
> checking for f95... f95
> checking whether the Fortran compiler works... no
> configure: WARNING: Fortran compiler cannot create executables
> configure: tests requiring the Fortran compiler will be skipped
> checking for xlf... no
> checking for f77... f77
> checking whether the Fortran 77 compiler works... no
> configure: WARNING: Fortran 77 compiler cannot create executables
> configure: tests requiring the Fortran 77 compiler will be skipped
> configure: will now look for GNU compilers
> checking for gcc... no
> checking for g++... no
> checking for gpp... no
> checking for gfortran... no
> checking for g77... no
> checking for gfortran... no
> checking for gcj... no
> checking that generated files are newer than configure... done
> configure: creating ./config.status
> config.status: creating Makefile
> config.status: creating t/wrap/aclocal-1.13
> config.status: creating t/wrap/automake-1.13
> node002$ 
> 
> This is highly suspect given that I have a full Fortran 77, 90 and 95
> compiler in the Oracle software : 
>
> [SNIP]
>
To actually try to understand where the problem might be, I'd need the
content of the generated config.log file.  Could you please send it over?

> So perhaps the configure script is looking for GNU Fortran only? 
>
No, on the contrary, the script is tweaked to prefer non-GNU compilers
where available, to enhance testsuite coverage.

> The Fortran compilers provided, as well as everything else, are installed 
> in the bizarre location /opt/solarisstudio12.3/bin. For many many years
> the "defacto" standard location for the vendor compilers in Solaris was
> at /opt/SUNWspro and then someone at Sun or Oracle made the brilliant
> move to change the path and thus break twenty years of scripts. Perhaps
> that is the issue here.
>

Thanks,
  Stefano




Added tag(s) moreinfo. Request was from Stefano Lattarini <stefano.lattarini <at> gmail.com> to control <at> debbugs.gnu.org. (Thu, 26 Dec 2013 20:16:02 GMT) Full text and rfc822 format available.

Severity set to 'minor' from 'normal' Request was from Stefano Lattarini <stefano.lattarini <at> gmail.com> to control <at> debbugs.gnu.org. (Thu, 26 Dec 2013 20:23:02 GMT) Full text and rfc822 format available.

This bug report was last modified 11 years and 176 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.