]> gcc.gnu.org Git - gcc.git/commitdiff
libgfortran: Fix libgfortran.so versioning on Solaris with subdirs
authorRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 6 May 2024 07:31:11 +0000 (09:31 +0200)
committerRainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
Mon, 6 May 2024 07:31:11 +0000 (09:31 +0200)
The move of libgfortran objects to subdirectories completely broke the
creation of libgfortran.so on Solaris.  Since the gfortran.ver-sun rule
doesn't support that structure, no libtool objects are found, thus no
symbols exported from libgfortran.so, causing every link to fail.

This patch fixes this by allowing for the new structure.

Tested on i386-pc-solaris2.11 and sparc-sun-solaris2.11.

2024-05-05  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>

libgfortran:
* Makefile.am [LIBGFOR_USE_SYMVER_SUN] (gfortran.ver-sun): Handle
objects in subdirs.
* Makefile.in: Regenerate.

libgfortran/Makefile.am
libgfortran/Makefile.in

index 8bef1729219327d452064d639b20d250daa84500..9e1d12f7546db1fc3e904abcafe5824b69a6b684 100644 (file)
@@ -29,7 +29,7 @@ gfortran.ver-sun : gfortran.ver \
                $(libgfortran_la_OBJECTS) $(libgfortran_la_LIBADD)
        perl $(top_srcdir)/../contrib/make_sunver.pl \
          gfortran.ver \
-         $(libgfortran_la_OBJECTS:%.lo=.libs/%.o) \
+         $(subst /,/.libs/,$(libgfortran_la_OBJECTS:.lo=.o)) \
         `echo $(libgfortran_la_LIBADD) | \
            sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
         > $@ || (rm -f $@ ; exit 1)
index f4fe0ebc43e64d0c150a73880aebbd9699b02e3b..ab10a476eaebd3404c4ab28f22853b04c921f196 100644 (file)
@@ -4576,7 +4576,7 @@ uninstall-am: uninstall-cafexeclibLTLIBRARIES uninstall-gfor_cHEADERS \
 @LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@         $(libgfortran_la_OBJECTS) $(libgfortran_la_LIBADD)
 @LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@ perl $(top_srcdir)/../contrib/make_sunver.pl \
 @LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@   gfortran.ver \
-@LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@   $(libgfortran_la_OBJECTS:%.lo=.libs/%.o) \
+@LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@   $(subst /,/.libs/,$(libgfortran_la_OBJECTS:.lo=.o)) \
 @LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@  `echo $(libgfortran_la_LIBADD) | \
 @LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@     sed 's,/\([^/.]*\)\.la,/.libs/\1.a,g'` \
 @LIBGFOR_USE_SYMVER_SUN_TRUE@@LIBGFOR_USE_SYMVER_TRUE@  > $@ || (rm -f $@ ; exit 1)
This page took 0.068803 seconds and 5 git commands to generate.