I ventured in building gcc 4.6.0 (trunk revision 170169) on powerpc-apple-darwin8 configured with: ../work/configure --prefix=/opt/gcc/gcc4.6w --target=powerpc-apple-darwin8 --host=powerpc-apple-darwin8 --build=powerpc-apple-darwin8 --enable-languages=c,c++,fortran,lto --with-gmp=/sw --with-libiconv-prefix=/sw --with-system-zlib --enable-checking=release --with-dwarf2 --disable-multilib --disable-libquadmath --disable-libquadmath-support and I got a high number of failures in libgomp.fortran: === libgomp Summary === # of expected passes 1793 # of unexpected failures 729 # of unsupported tests 2 FAIL: libgomp.fortran/allocatable1.f90 -O0 (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -O1 (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -O2 (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -O3 -fomit-frame-pointer (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -O3 -fomit-frame-pointer -funroll-loops (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -O3 -fomit-frame-pointer -funroll-all-loops -finline-functions (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -O3 -g (test for excess errors) FAIL: libgomp.fortran/allocatable1.f90 -Os (test for excess errors) ... Most (if not all) are of the following kind: /libgomp/testsuite/.. -shared-libgcc -fmessage-length=0 -fopenmp -B/opt/gcc/build/powerpc-apple-darwin8/./libgomp/../libquadmath/.libs/ -O0 -B/opt/gcc/build/powerpc-apple-darwin8/./libgomp/../libgfortran/.libs -L/opt/gcc/build/powerpc-apple-darwin8/./libgomp/.libs -lgomp -L/opt/gcc/build/powerpc-apple-darwin8/./libgomp/../libquadmath/.libs/ -L/opt/gcc/build/powerpc-apple-darwin8/./libgomp/../libgfortran/.libs -lgfortran -lm -o ./allocatable1.exe (timeout = 300) /usr/libexec/gcc/powerpc-apple-darwin8/4.0.1/ld: warning -L: directory name (/opt/gcc/build/powerpc-apple-darwin8/./libgomp/../libquadmath/.libs/) does not exist I have tested different variants around the options --disable-libquadmath --disable-libquadmath-support without change. Note that with these two options no libquadmath is build while I don't need them on powerpc-apple-darwin9 (so I see powerpc-apple-darwin9/libquadmath, but no powerpc-apple-darwin9/libquadmath/.libs and the libgomp tests pass without failures).
Created attachment 23356 [details] untested patch Do you know when it last worked? My candidate would be the patch - assuming that it is not a new issue. http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=167127 2010-11-24 Iain Sandoe <iains@gcc.gnu.org> * testsuite/libgomp.fortran/fortran.exp: Add paths for libquadmath. Untested patch attached.
This is preapproved with a proper ChangeLog entry if it works.
> Do you know when it last worked? Well it was my first attempt to build 4.6 on my poor G4 (almost ten year old, so slow with a crowded disk that I don't even have 4.5 installed in it;-). This build was motivated by pr45381 and I stumbled on this PR only by chance. > My candidate would be the patch - assuming that it is not a new issue. The patch in comment #1 fixes the failures and has been tested also on powerpc-apple-darwin9 and x86_64-apple-darwin10 without problem. Thanks for the quick fix.
thanks, IIRC, when the patch was originally applied it was not possible to test on Darwin 8 (libquadmath was broken for other reasons). --- This is not an objection to the proposed solution - but - for the record: I remain concerned that the libgomp test-suite is driven by xgcc (which does not apply the fortran spec) and, thus, is different from the notional idea of equivalence with the installed gfortran. [if the fortran spec is used, I think you will find that the fails are also resolved] e.g. Index: libgomp/testsuite/libgomp.fortran/fortran.exp =================================================================== --- libgomp/testsuite/libgomp.fortran/fortran.exp (revision 170210) +++ libgomp/testsuite/libgomp.fortran/fortran.exp (working copy) @@ -8,6 +8,7 @@ set lang_library_path "../libgfortran/.libs" set lang_link_flags "-lgfortran" set lang_test_file_found 0 set quadmath_library_path "../libquadmath/.libs" +set lang_spec_path "../libgfortran" # Initialize dg. @@ -44,6 +45,8 @@ if { $lang_test_file_found } { lappend ALWAYS_CFLAGS "ldflags=-L${blddir}/${quadmath_library_path}/" # Allow for spec subsitution. lappend ALWAYS_CFLAGS "additional_flags=-B${blddir}/${quadmath_library_path}/" + # use the libgfortran spec. + lappend ALWAYS_CFLAGS "additional_flags=-specs=${blddir}/${lang_spec_path}/libgfortran.spec" set ld_library_path "$always_ld_library_path:${blddir}/${lang_library_path}:${blddir}/${quadmath_library_path}" } else { set ld_library_path "$always_ld_library_path"
Author: burnus Date: Wed Feb 16 17:44:45 2011 New Revision: 170216 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=170216 Log: 2011-02-16 Tobias Burnus <burnus@net-b.de> PR libgomp/47758 * testsuite/libgomp.fortran/fortran.exp: Check for the existence of libquadmath.a before adding its libpath to ldflags. Modified: trunk/libgomp/ChangeLog trunk/libgomp/testsuite/libgomp.fortran/fortran.exp
Fixed.