Skip to content
Snippets Groups Projects
  • Rainer Orth's avatar
    35b05a02
    build: Derive object names in make_sunver.pl · 35b05a02
    Rainer Orth authored
    The recent move of libgfortran object files to subdirs and the resulting
    breakage of libgfortran.so symbol exports demonstrated how fragile
    deriving object and archive names from their libtool counterparts in the
    Makefiles is.  Therefore, this patch moves that step into
    make_sunver.pl, considerably simplifying the Makefile rules to create
    the version scripts.
    
    Bootstrapped without regressions on i386-pc-solaris2.11 and
    sparc-sun-solaris2.11, verifying that the version scripts are identical
    except for the input filenames.
    
    2024-05-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
    
    	contrib:
    	* make_sunver.pl: Use File::Basename;
    	Skip -lLIB args.
    	Convert libtool object/archive names to underlying
    	objects/archives.
    
    	libatomic:
    	* Makefile.am [LIBAT_BUILD_VERSIONED_SHLIB_SUN]
    	(libatomic.map-sun): Pass $(libatomic_la_OBJECTS),
    	$(libatomic_la_LIBADD) to make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libffi:
    	* Makefile.am [LIBFFI_BUILD_VERSIONED_SHLIB_SUN] (libffi.map-sun):
    	Pass $(libffi_la_OBJECTS), $(libffi_la_LIBADD) to make_sunver.pl
    	unmodified.
    	* Makefile.in: Regenerate.
    
    	libgfortran:
    	* Makefile.am [LIBGFOR_USE_SYMVER_SUN} (gfortran.ver-sun): Pass
    	$(libgfortran_la_OBJECTS), $(libgfortran_la_LIBADD) to
    	make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libgomp:
    	* Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]
    	(libgomp.ver-sun): Pass $(libgomp_la_OBJECTS),
    	$(libgomp_la_LIBADD) to make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libitm:
    	* Makefile.am [LIBITM_BUILD_VERSIONED_SHLIB_SUN] (libitm.map-sun):
    	Pass $(libitm_la_OBJECTS), $(libitm_la_LIBADD) to make_sunver.pl
    	unmodified.
    	* Makefile.in: Regenerate.
    
    	libquadmath:
    	* Makefile.am [LIBQUAD_USE_SYMVER_SUN] (quadmath.map-sun): Pass
    	$(libquadmath_la_OBJECTS), $(libquadmath_la_LIBADD) to
    	make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libssp:
    	* Makefile.am [LIBSSP_USE_SYMVER_SUN] (ssp.map-sun): Pass
    	$(libssp_la_OBJECTS), $(libssp_la_LIBADD) to make_sunver.pl
    	unmodified.
    	* Makefile.in: Regenerate.
    
    	libstdc++-v3:
    	* src/Makefile.am [ENABLE_SYMVERS_SUN]
    	(libstdc++-symbols.ver-sun): Pass $(libstdc___la_OBJECTS),
    	$(libstdc___la_LIBADD) to make_sunver.pl unmodified.
    	* src/Makefile.in: Regenerate.
    35b05a02
    History
    build: Derive object names in make_sunver.pl
    Rainer Orth authored
    The recent move of libgfortran object files to subdirs and the resulting
    breakage of libgfortran.so symbol exports demonstrated how fragile
    deriving object and archive names from their libtool counterparts in the
    Makefiles is.  Therefore, this patch moves that step into
    make_sunver.pl, considerably simplifying the Makefile rules to create
    the version scripts.
    
    Bootstrapped without regressions on i386-pc-solaris2.11 and
    sparc-sun-solaris2.11, verifying that the version scripts are identical
    except for the input filenames.
    
    2024-05-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
    
    	contrib:
    	* make_sunver.pl: Use File::Basename;
    	Skip -lLIB args.
    	Convert libtool object/archive names to underlying
    	objects/archives.
    
    	libatomic:
    	* Makefile.am [LIBAT_BUILD_VERSIONED_SHLIB_SUN]
    	(libatomic.map-sun): Pass $(libatomic_la_OBJECTS),
    	$(libatomic_la_LIBADD) to make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libffi:
    	* Makefile.am [LIBFFI_BUILD_VERSIONED_SHLIB_SUN] (libffi.map-sun):
    	Pass $(libffi_la_OBJECTS), $(libffi_la_LIBADD) to make_sunver.pl
    	unmodified.
    	* Makefile.in: Regenerate.
    
    	libgfortran:
    	* Makefile.am [LIBGFOR_USE_SYMVER_SUN} (gfortran.ver-sun): Pass
    	$(libgfortran_la_OBJECTS), $(libgfortran_la_LIBADD) to
    	make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libgomp:
    	* Makefile.am [LIBGOMP_BUILD_VERSIONED_SHLIB_SUN]
    	(libgomp.ver-sun): Pass $(libgomp_la_OBJECTS),
    	$(libgomp_la_LIBADD) to make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libitm:
    	* Makefile.am [LIBITM_BUILD_VERSIONED_SHLIB_SUN] (libitm.map-sun):
    	Pass $(libitm_la_OBJECTS), $(libitm_la_LIBADD) to make_sunver.pl
    	unmodified.
    	* Makefile.in: Regenerate.
    
    	libquadmath:
    	* Makefile.am [LIBQUAD_USE_SYMVER_SUN] (quadmath.map-sun): Pass
    	$(libquadmath_la_OBJECTS), $(libquadmath_la_LIBADD) to
    	make_sunver.pl unmodified.
    	* Makefile.in: Regenerate.
    
    	libssp:
    	* Makefile.am [LIBSSP_USE_SYMVER_SUN] (ssp.map-sun): Pass
    	$(libssp_la_OBJECTS), $(libssp_la_LIBADD) to make_sunver.pl
    	unmodified.
    	* Makefile.in: Regenerate.
    
    	libstdc++-v3:
    	* src/Makefile.am [ENABLE_SYMVERS_SUN]
    	(libstdc++-symbols.ver-sun): Pass $(libstdc___la_OBJECTS),
    	$(libstdc___la_LIBADD) to make_sunver.pl unmodified.
    	* src/Makefile.in: Regenerate.