Hi, I don't know FORTRAN, or whether this patch is actually sensible, so I'm posting here for feedback from someone more familiar with such things than me. Unless someone tells me that this is wrong, I'll apply in a few days.
First of all, modern SunStudio f77 is just a wrapper for f90, which explains why current master fails these test groups with: Undefined first referenced symbol in file __f90_slw_ch .libs/foof2.o (symbol belongs to implicit dependency /opt/solstudio12.2/lib/libfsu.so.1) __f90_sslw .libs/foof2.o (symbol belongs to implicit dependency /opt/solstudio12.2/lib/libfsu.so.1) __f90_eslw .libs/foof2.o (symbol belongs to implicit dependency /opt/solstudio12.2/lib/libfsu.so.1) ld: fatal: symbol referencing errors. No output written to .libs/libfoo2.so.0.0.0 There are two ways to work around this failure: 1. Add $(FLIBS) to all xx_la_LIBADD lines, which is unlikely to be remembered by anyone not using SunStudio because it works fine without everywhere else. Further, the final demo links continue to fail for a lack of a printf definition -- but that might well be another bug in the tests. Should we also be adding -lc to a mixed mode link? In the test Makefiles, or automatically with libtool? 2. Allow some undefined symbols in the libraries, which are resolved by the $(FLIBS) added to the final binaries in the tests. This seems like the simpler, and less error inducing solution to me. Comments? Cheers, Gary Index: tests/f77demo.at =================================================================== --- tests/f77demo.at.orig +++ tests/f77demo.at @@ -63,17 +63,13 @@ ACLOCAL_AMFLAGS = -I m4 lib_LTLIBRARIES = libfoo.la libmix.la libfoo2.la libfoo3.la libfoo_la_SOURCES = foof.f -libfoo_la_LDFLAGS = -no-undefined libfoo_la_LIBADD = libfoo2.la libfoo2_la_SOURCES = foof2.f -libfoo2_la_LDFLAGS = -no-undefined libfoo3_la_SOURCES = foof3.f -libfoo3_la_LDFLAGS = -no-undefined libmix_la_SOURCES = foof.f foof2.f fooc.c -libmix_la_LDFLAGS = -no-undefined noinst_HEADERS = foo.h Index: tests/fcdemo.at =================================================================== --- tests/fcdemo.at.orig +++ tests/fcdemo.at @@ -67,17 +67,13 @@ ACLOCAL_AMFLAGS = -I m4 lib_LTLIBRARIES = libfoo.la libmix.la libfoo2.la libfoo3.la libfoo_la_SOURCES = foof.f90 -libfoo_la_LDFLAGS = -no-undefined libfoo_la_LIBADD = libfoo2.la libfoo2_la_SOURCES = foof2.f90 -libfoo2_la_LDFLAGS = -no-undefined libfoo3_la_SOURCES = foof3.f90 -libfoo3_la_LDFLAGS = -no-undefined libmix_la_SOURCES = foof.f90 foof2.f90 fooc.c -libmix_la_LDFLAGS = -no-undefined noinst_HEADERS = foo.h
signature.asc
Description: Message signed with OpenPGP using GPGMail