fix versioning of libgcc on darwin
Geoffrey Keating
gkeating@apple.com
Thu Jun 16 22:02:00 GMT 2005
I never noticed this, because I always had a libgcc in /usr/lib, but
I don't think the install scripts for libgcc on Darwin were actually
working right. They were previously creating
libgcc_s.1.0.dylib [with install name of $prefix/lib/libgcc_s.1.dylib]
libgcc_s.dylib -> libgcc_s.1.dylib
but never actually creating the 'libgcc_s.1.dylib' link. Apple didn't
notice it because we had some horrible shell-script stuff which remade
the links (in "build_gcc").
So, a change! They will now just create
libgcc_s.1.dylib [with install name of $prefix/lib/libgcc_s.1.dylib]
libgcc_s.dylib -> libgcc_s.1.dylib
which should work much better :-).
Bootstrapped & tested on powerpc-darwin8, plus 'make install', plus
building 'hello world' and checking that the right libgcc dylib got
used, both with 'gcc/xgcc -Bgcc/' and '$DESTDIR/usr/bin/gcc'.
--
- Geoffrey Keating <geoffk@apple.com>
===File ~/patches/gcc-darwin-libgccinstall.patch============
2005-06-16 Geoffrey Keating <geoffk@apple.com>
* config/t-slibgcc-darwin (SHLIB_SOVERSION): Rename from
SHLIB_MINOR.
(SHLIB_REVISION): Delete.
(SHLIB_VERSTRING): Update to compensate.
(SHLIB_SONAME): Just use one '.' in the name.
Index: config/t-slibgcc-darwin
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/t-slibgcc-darwin,v
retrieving revision 1.10
diff -u -p -u -p -r1.10 t-slibgcc-darwin
--- config/t-slibgcc-darwin 11 Apr 2005 23:30:44 -0000 1.10
+++ config/t-slibgcc-darwin 16 Jun 2005 22:00:28 -0000
@@ -1,11 +1,10 @@
# Build a shared libgcc library with the darwin linker.
-SHLIB_MINOR = 1
-SHLIB_REVISION = 0
-SHLIB_VERSTRING = -compatibility_version $(SHLIB_MINOR) -current_version $(SHLIB_MINOR).$(SHLIB_REVISION)
+SHLIB_SOVERSION = 1
+SHLIB_VERSTRING = -compatibility_version $(SHLIB_SOVERSION) -current_version $(SHLIB_SOVERSION).0
SHLIB_EXT = .dylib
SHLIB_SUFFIX = `if test @multilib_dir@ != . ; then echo _@multilib_dir@ ; fi`
SHLIB_SOLINK = @shlib_base_name@$(SHLIB_SUFFIX)$(SHLIB_EXT)
-SHLIB_SONAME = @shlib_base_name@$(SHLIB_SUFFIX).$(SHLIB_MINOR).$(SHLIB_REVISION)$(SHLIB_EXT)
+SHLIB_SONAME = @shlib_base_name@$(SHLIB_SUFFIX).$(SHLIB_SOVERSION)$(SHLIB_EXT)
SHLIB_MAP = @shlib_map_file@
SHLIB_OBJS = @shlib_objs@
SHLIB_DIR = @multilib_dir@
============================================================
More information about the Gcc-patches
mailing list