This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Why did libffi change it's soname?
- From: Matthias Klose <doko at cs dot tu-berlin dot de>
- To: gcc at gcc dot gnu dot org, java at gcc dot gnu dot org
- Cc: Andreas Tobler <a dot tobler at schweiz dot ch>, Paolo Bonzini <bonzini at gnu dot org>, libffi-discuss at sources dot redhat dot com
- Date: Sun, 13 Jun 2004 17:21:36 +0200
- Subject: Why did libffi change it's soname?
According to the Changelog, this was done implicitely by the patch
2004-03-11 Andreas Tobler <a.tobler@schweiz.ch>
Paolo Bonzini <bonzini@gnu.org>
* Makefile.am [...]
(AC_INIT): Fill with version info and bug address.
There is no other change mentioned which would rectify a change of the
soname of the library. Was this done intentionally? When exactly did
the ABI change? Before or after the gcc-3.4 branch was created? If
before, are the libffi's created by gcc-3.3 and -3.4 compatible? For
which architectures?
Currently libffi is the only library using 'libtool --release' to
determine the soname of the shared library. Appended is patch to use
'libtool --version-info', as it's done for other libraries. Assuming
that gcc-3.3, gcc-3.4 and gcc-3.4 do all have different ABI's (at
least on some targets), I set the major version to 4 for the HEAD, so
that a possible version 3 is reserved for the 3.4 branch.
Matthias
2004-06-13 Matthias Klose <doko@debian.org>
* libtool-version: New.
* Makefile.am (libffi_la_LDFLAGS): Use -version-info for soname.
* Makefile.in: Regenerate.
diff -urN libffi.old/Makefile.am libffi/Makefile.am
--- libffi.old/Makefile.am 2004-03-19 23:34:16.000000000 +0100
+++ libffi/Makefile.am 2004-06-13 16:48:22.000000000 +0200
@@ -145,7 +145,7 @@
AM_CFLAGS = -Wall -g -fexceptions
-libffi_la_LDFLAGS = -release $(VERSION)
+libffi_la_LDFLAGS = -version-info `grep -v '^\#' $(srcdir)/libtool-version`
INCLUDES = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
diff -urN libffi.old/libtool-version libffi/libtool-version
--- libffi.old/libtool-version 1970-01-01 01:00:00.000000000 +0100
+++ libffi/libtool-version 2004-06-13 16:52:51.000000000 +0200
@@ -0,0 +1,6 @@
+# This file is used to maintain libtool version info for libffi. See
+# the libtool manual to understand the meaning of the fields. This is
+# a separate file so that version updates don't involve re-running
+# automake.
+# CURRENT:REVISION:AGE
+4:0:0