This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]