From d793e5f29f11b8e3f10d9550498867abe69ed5fa Mon Sep 17 00:00:00 2001 From: Simon McVittie Date: Tue, 6 Mar 2012 13:48:22 +0000 Subject: [PATCH 3/4] Stop pretending our API/ABI matches telepathy-glib 0.x To provide parallel-installability, I've changed: - base of library name: libtelepathy-glib.so -> libtelepathy-glib-1.so - header directory: telepathy-1.0 -> telepathy-glib-1 - pkg-config package: telepathy-glib -> telepathy-glib-1 - GIR package: TelepathyGLib-0.12 -> TelepathyGLib-1 --- configure.ac | 10 ++++---- docs/reference/Makefile.am | 7 ++++- examples/client/Makefile.am | 2 +- examples/client/stream-tubes/Makefile.am | 2 +- examples/cm/call/Makefile.am | 2 +- examples/cm/channelspecific/Makefile.am | 2 +- examples/cm/contactlist/Makefile.am | 2 +- examples/cm/echo-message-parts/Makefile.am | 2 +- examples/cm/extended/Makefile.am | 2 +- examples/cm/no-protocols/Makefile.am | 2 +- examples/extensions/Makefile.am | 2 +- telepathy-glib/Makefile.am | 6 ++-- telepathy-glib/TelepathyGLib-0.12.metadata | 1 - telepathy-glib/TelepathyGLib-1.metadata | 1 + telepathy-glib/abi.am | 16 +++++++------- telepathy-glib/introspection.am | 24 ++++++++++---------- telepathy-glib/telepathy-glib-1-uninstalled.pc.in | 12 ++++++++++ telepathy-glib/telepathy-glib-1.pc.in | 12 ++++++++++ telepathy-glib/telepathy-glib-uninstalled.pc.in | 12 ---------- telepathy-glib/telepathy-glib.pc.in | 12 ---------- tests/Makefile.am | 2 +- tests/dbus/Makefile.am | 2 +- tests/lib/Makefile.am | 6 ++-- 23 files changed, 72 insertions(+), 69 deletions(-) delete mode 100644 telepathy-glib/TelepathyGLib-0.12.metadata create mode 100644 telepathy-glib/TelepathyGLib-1.metadata create mode 100644 telepathy-glib/telepathy-glib-1-uninstalled.pc.in create mode 100644 telepathy-glib/telepathy-glib-1.pc.in delete mode 100644 telepathy-glib/telepathy-glib-uninstalled.pc.in delete mode 100644 telepathy-glib/telepathy-glib.pc.in diff --git a/configure.ac b/configure.ac index 9e7335d..90afb7f 100644 --- a/configure.ac +++ b/configure.ac @@ -21,14 +21,14 @@ m4_define([tp_glib_nano_version], [1]) # If interfaces have been removed since last release, set age to 0 # # If interfaces have been added, release builds will fail unless you add a new -# file like telepathy-glib/versions/0.7.3.abi to add them to the official ABI. +# file like telepathy-glib/versions/1.1.0.abi to add them to the official ABI. # This also forces binaries built against devel versions to be rebuilt # (we don't guarantee that we won't add ABI then remove it again, if it was # never seen in a release). -m4_define([tp_glib_lt_current], [67]) +m4_define([tp_glib_lt_current], [0]) m4_define([tp_glib_lt_revision], [0]) -m4_define([tp_glib_lt_age], [67]) +m4_define([tp_glib_lt_age], [0]) # Some magic m4_define([tp_glib_base_version], @@ -329,8 +329,8 @@ AC_OUTPUT( Makefile \ examples/extensions/Makefile \ spec/Makefile \ telepathy-glib/Makefile \ - telepathy-glib/telepathy-glib.pc \ - telepathy-glib/telepathy-glib-uninstalled.pc \ + telepathy-glib/telepathy-glib-1.pc \ + telepathy-glib/telepathy-glib-1-uninstalled.pc \ tests/Makefile \ tests/lib/Makefile \ tests/dbus/Makefile \ diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am index 3de3a32..a6b1bab 100644 --- a/docs/reference/Makefile.am +++ b/docs/reference/Makefile.am @@ -110,8 +110,11 @@ expand_content_files= # e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS) # e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib) GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) @DBUS_CFLAGS@ @GLIB_CFLAGS@ -GTKDOC_LIBS=$(top_builddir)/telepathy-glib/libtelepathy-glib.la \ - @DBUS_LIBS@ @GLIB_LIBS@ +GTKDOC_LIBS = \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ + $(DBUS_LIBS) \ + $(GLIB_LIBS) \ + $(NULL) # This includes the standard gtk-doc make rules, copied by gtkdocize. include $(top_srcdir)/gtk-doc.make diff --git a/examples/client/Makefile.am b/examples/client/Makefile.am index 3481a0f..ebc200a 100644 --- a/examples/client/Makefile.am +++ b/examples/client/Makefile.am @@ -50,7 +50,7 @@ endif # Similarly, in an external project you'd put $(TP_GLIB_CFLAGS) at the end of # AM_CPPFLAGS. LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/client/stream-tubes/Makefile.am b/examples/client/stream-tubes/Makefile.am index 1f687f3..3bb7cb7 100644 --- a/examples/client/stream-tubes/Makefile.am +++ b/examples/client/stream-tubes/Makefile.am @@ -11,7 +11,7 @@ accepter_SOURCES = accepter.c LDADD = \ @DBUS_LIBS@ \ @GLIB_LIBS@ \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la AM_CFLAGS = \ $(ERROR_CFLAGS) \ diff --git a/examples/cm/call/Makefile.am b/examples/cm/call/Makefile.am index 3b7ad1f..462352a 100644 --- a/examples/cm/call/Makefile.am +++ b/examples/cm/call/Makefile.am @@ -54,7 +54,7 @@ clean-local: # pkg-config via autoconf) instead of the .la path, and put it last; we use # a different format here because we're part of the telepathy-glib source tree. LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/cm/channelspecific/Makefile.am b/examples/cm/channelspecific/Makefile.am index d0c5a6a..2d83b32 100644 --- a/examples/cm/channelspecific/Makefile.am +++ b/examples/cm/channelspecific/Makefile.am @@ -51,7 +51,7 @@ clean-local: # pkg-config via autoconf) instead of the .la path, and put it last; we use # a different format here because we're part of the telepathy-glib source tree. LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/cm/contactlist/Makefile.am b/examples/cm/contactlist/Makefile.am index b4933fc..5e7b5a2 100644 --- a/examples/cm/contactlist/Makefile.am +++ b/examples/cm/contactlist/Makefile.am @@ -47,7 +47,7 @@ clean-local: # pkg-config via autoconf) instead of the .la path, and put it last; we use # a different format here because we're part of the telepathy-glib source tree. LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/cm/echo-message-parts/Makefile.am b/examples/cm/echo-message-parts/Makefile.am index 609a185..fbcfddb 100644 --- a/examples/cm/echo-message-parts/Makefile.am +++ b/examples/cm/echo-message-parts/Makefile.am @@ -47,7 +47,7 @@ clean-local: # pkg-config via autoconf) instead of the .la path, and put it last; we use # a different format here because we're part of the telepathy-glib source tree. LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/cm/extended/Makefile.am b/examples/cm/extended/Makefile.am index 437e561..981da35 100644 --- a/examples/cm/extended/Makefile.am +++ b/examples/cm/extended/Makefile.am @@ -36,7 +36,7 @@ clean-local: # a different format here because we're part of the telepathy-glib source tree. LDADD = \ $(top_builddir)/examples/extensions/libexample-extensions.la \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/cm/no-protocols/Makefile.am b/examples/cm/no-protocols/Makefile.am index f12c374..8a4d67a 100644 --- a/examples/cm/no-protocols/Makefile.am +++ b/examples/cm/no-protocols/Makefile.am @@ -31,7 +31,7 @@ clean-local: # pkg-config via autoconf) instead of the .la path, and put it last; we use # a different format here because we're part of the telepathy-glib source tree. LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/examples/extensions/Makefile.am b/examples/extensions/Makefile.am index b562f9c..aee74ec 100644 --- a/examples/extensions/Makefile.am +++ b/examples/extensions/Makefile.am @@ -30,7 +30,7 @@ noinst_LTLIBRARIES = libexample-extensions.la libexample_extensions_la_LIBADD = \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la # The client-specific parts are built into a separate .o file, so the linker # can discard them when linking services. The service-specific parts are diff --git a/telepathy-glib/Makefile.am b/telepathy-glib/Makefile.am index 7d9ad9b..56f5513 100644 --- a/telepathy-glib/Makefile.am +++ b/telepathy-glib/Makefile.am @@ -1,10 +1,10 @@ include $(top_srcdir)/tools/flymake.mk -tpgincludedir=$(includedir)/telepathy-1.0/telepathy-glib +tpgincludedir=$(includedir)/telepathy-glib-1/telepathy-glib genincludedir=$(tpgincludedir)/_gen pkgconfigdir = ${libdir}/pkgconfig -pkgconfig_DATA = telepathy-glib.pc +pkgconfig_DATA = telepathy-glib-1.pc EXTRA_DIST = \ $(ABI_LISTS) \ @@ -18,7 +18,7 @@ EXTRA_DIST = \ # The static version is necessary because one of the tests wants to use # internal symbols (_tp_log) which are made invisible by GNU ld. -lib_LTLIBRARIES = libtelepathy-glib.la +lib_LTLIBRARIES = libtelepathy-glib-1.la noinst_LTLIBRARIES = libtelepathy-glib-internal.la \ libtelepathy-glib-reentrants.la diff --git a/telepathy-glib/TelepathyGLib-0.12.metadata b/telepathy-glib/TelepathyGLib-0.12.metadata deleted file mode 100644 index 6fd4a8d..0000000 --- a/telepathy-glib/TelepathyGLib-0.12.metadata +++ /dev/null @@ -1 +0,0 @@ -TelepathyGLib name="TelepathyGLib" diff --git a/telepathy-glib/TelepathyGLib-1.metadata b/telepathy-glib/TelepathyGLib-1.metadata new file mode 100644 index 0000000..6fd4a8d --- /dev/null +++ b/telepathy-glib/TelepathyGLib-1.metadata @@ -0,0 +1 @@ +TelepathyGLib name="TelepathyGLib" diff --git a/telepathy-glib/abi.am b/telepathy-glib/abi.am index c570b3c..3624c18 100644 --- a/telepathy-glib/abi.am +++ b/telepathy-glib/abi.am @@ -7,17 +7,17 @@ ABI_LISTS = \ # The quoting here is unnecessary but harmless, and has the useful side-effect # that vim quickfix mode (:make) doesn't interpret the libtool --mode=link # command as an error message in a bizarrely named file -libtelepathy_glib_la_LDFLAGS = \ +libtelepathy_glib_1_la_LDFLAGS = \ $(AM_LDFLAGS) \ -no-undefined \ -version-info "$(LT_CURRENT)":"$(LT_REVISION)":"$(LT_AGE)" -libtelepathy_glib_la_LIBADD = libtelepathy-glib-internal.la -nodist_libtelepathy_glib_la_SOURCES = -libtelepathy_glib_la_DEPENDENCIES = libtelepathy-glib-internal.la abi.am +libtelepathy_glib_1_la_LIBADD = libtelepathy-glib-internal.la +nodist_libtelepathy_glib_1_la_SOURCES = +libtelepathy_glib_1_la_DEPENDENCIES = libtelepathy-glib-internal.la abi.am if HAVE_LD_VERSION_SCRIPT -nodist_libtelepathy_glib_la_SOURCES += _gen/version-script.txt -libtelepathy_glib_la_DEPENDENCIES += _gen/version-script.txt _gen/abi.txt +nodist_libtelepathy_glib_1_la_SOURCES += _gen/version-script.txt +libtelepathy_glib_1_la_DEPENDENCIES += _gen/version-script.txt _gen/abi.txt if OFFICIAL_RELEASE # don't allow undocumented ABI @@ -51,12 +51,12 @@ _gen/abi.txt: libtelepathy-glib-internal.la abi.am grep "^tp" < _gen/abi.funcnames > _gen/abi.tpfuncnames $(AM_V_GEN)sort -u < _gen/abi.tpfuncnames > $@ -libtelepathy_glib_la_LDFLAGS += \ +libtelepathy_glib_1_la_LDFLAGS += \ $(VERSION_SCRIPT_ARG)=_gen/version-script.txt else # !HAVE_LD_VERSION_SCRIPT -libtelepathy_glib_la_LDFLAGS += -export-symbols-regex '^tp' +libtelepathy_glib_1_la_LDFLAGS += -export-symbols-regex '^tp' endif # !HAVE_LD_VERSION_SCRIPT diff --git a/telepathy-glib/introspection.am b/telepathy-glib/introspection.am index 8c4cfd0..dfbc7cc 100644 --- a/telepathy-glib/introspection.am +++ b/telepathy-glib/introspection.am @@ -1,18 +1,18 @@ # To be included by Makefile.am. introspection_extra_dist = \ - TelepathyGLib-0.12.metadata \ + TelepathyGLib-1.metadata \ $(NULL) if HAVE_INTROSPECTION include $(INTROSPECTION_MAKEFILE) -INTROSPECTION_GIRS = TelepathyGLib-0.12.gir +INTROSPECTION_GIRS = TelepathyGLib-1.gir -TelepathyGLib-0.12.gir: libtelepathy-glib.la +TelepathyGLib-1.gir: libtelepathy-glib-1.la # /!\ Order matters, see https://bugzilla.gnome.org/show_bug.cgi?id=660629 -TelepathyGLib_0_12_gir_FILES = \ +TelepathyGLib_1_gir_FILES = \ $(srcdir)/proxy.c _gen/proxy-introspectable.h \ $(srcdir)/account.c $(srcdir)/account.h \ $(srcdir)/account-channel-request.c $(srcdir)/account-channel-request.h \ @@ -76,12 +76,12 @@ TelepathyGLib_0_12_gir_FILES = \ _gen/telepathy-interfaces.h \ $(NULL) -TelepathyGLib_0_12_gir_NAMESPACE = TelepathyGLib -TelepathyGLib_0_12_gir_VERSION = 0.12 -TelepathyGLib_0_12_gir_LIBS = libtelepathy-glib.la -TelepathyGLib_0_12_gir_EXPORT_PACKAGES = telepathy-glib +TelepathyGLib_1_gir_NAMESPACE = TelepathyGLib +TelepathyGLib_1_gir_VERSION = 1 +TelepathyGLib_1_gir_LIBS = libtelepathy-glib-1.la +TelepathyGLib_1_gir_EXPORT_PACKAGES = telepathy-glib-1 -TelepathyGLib_0_12_gir_SCANNERFLAGS = \ +TelepathyGLib_1_gir_SCANNERFLAGS = \ --identifier-prefix=Tp \ -I$(top_builddir) \ -I$(top_srcdir) \ @@ -89,12 +89,12 @@ TelepathyGLib_0_12_gir_SCANNERFLAGS = \ --warn-all \ $(NULL) -TelepathyGLib_0_12_gir_INCLUDES = \ +TelepathyGLib_1_gir_INCLUDES = \ GLib-2.0 \ Gio-2.0 \ $(NULL) -TelepathyGLib_0_12_gir_PACKAGES = \ +TelepathyGLib_1_gir_PACKAGES = \ gio-2.0 \ dbus-glib-1 \ $(NULL) @@ -104,7 +104,7 @@ _gen/proxy-introspectable.h: proxy.h introspection.am $(AM_V_GEN)sed -e 's/gpointer self/TpProxy *self/' < $< > $@ girdir = $(datadir)/gir-1.0 -dist_gir_DATA = TelepathyGLib-0.12.gir +dist_gir_DATA = TelepathyGLib-1.gir typelibsdir = $(libdir)/girepository-1.0/ typelibs_DATA = $(dist_gir_DATA:.gir=.typelib) diff --git a/telepathy-glib/telepathy-glib-1-uninstalled.pc.in b/telepathy-glib/telepathy-glib-1-uninstalled.pc.in new file mode 100644 index 0000000..331405e --- /dev/null +++ b/telepathy-glib/telepathy-glib-1-uninstalled.pc.in @@ -0,0 +1,12 @@ +prefix= +exec_prefix= +abs_top_srcdir=@abs_top_srcdir@ +abs_top_builddir=@abs_top_builddir@ + +Name: Telepathy-GLib-1 (uninstalled copy) +Description: GLib utility library for the Telepathy framework +Version: @VERSION@ +Requires: pkg-config >= 0.21 +Requires.private: dbus-glib-1 >= 0.82, glib-2.0 >= 2.30, gobject-2.0 >= 2.30, gio-2.0 >= 2.30 +Libs: ${abs_top_builddir}/telepathy-glib/libtelepathy-glib-1.la +Cflags: -I${abs_top_srcdir} -I${abs_top_builddir} diff --git a/telepathy-glib/telepathy-glib-1.pc.in b/telepathy-glib/telepathy-glib-1.pc.in new file mode 100644 index 0000000..a115d90 --- /dev/null +++ b/telepathy-glib/telepathy-glib-1.pc.in @@ -0,0 +1,12 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: Telepathy-GLib-1 +Description: GLib utility library for the Telepathy framework +Version: @VERSION@ +Requires: pkg-config >= 0.21 +Requires.private: dbus-glib-1 >= 0.82, glib-2.0 >= 2.30, gobject-2.0 >= 2.30, gio-2.0 >= 2.30 +Libs: -L${libdir} -ltelepathy-glib-1 +Cflags: -I${includedir}/telepathy-glib-1 diff --git a/telepathy-glib/telepathy-glib-uninstalled.pc.in b/telepathy-glib/telepathy-glib-uninstalled.pc.in deleted file mode 100644 index 56b287f..0000000 --- a/telepathy-glib/telepathy-glib-uninstalled.pc.in +++ /dev/null @@ -1,12 +0,0 @@ -prefix= -exec_prefix= -abs_top_srcdir=@abs_top_srcdir@ -abs_top_builddir=@abs_top_builddir@ - -Name: Telepathy-GLib (uninstalled copy) -Description: GLib utility library for the Telepathy framework -Version: @VERSION@ -Requires: pkg-config >= 0.21 -Requires.private: dbus-glib-1 >= 0.82, glib-2.0 >= 2.30, gobject-2.0 >= 2.30, gio-2.0 >= 2.30 -Libs: ${abs_top_builddir}/telepathy-glib/libtelepathy-glib.la -Cflags: -I${abs_top_srcdir} -I${abs_top_builddir} diff --git a/telepathy-glib/telepathy-glib.pc.in b/telepathy-glib/telepathy-glib.pc.in deleted file mode 100644 index 1ac10f8..0000000 --- a/telepathy-glib/telepathy-glib.pc.in +++ /dev/null @@ -1,12 +0,0 @@ -prefix=@prefix@ -exec_prefix=@exec_prefix@ -libdir=@libdir@ -includedir=@includedir@ - -Name: Telepathy-GLib -Description: GLib utility library for the Telepathy framework -Version: @VERSION@ -Requires: pkg-config >= 0.21 -Requires.private: dbus-glib-1 >= 0.82, glib-2.0 >= 2.30, gobject-2.0 >= 2.30, gio-2.0 >= 2.30 -Libs: -L${libdir} -ltelepathy-glib -Cflags: -I${includedir}/telepathy-1.0 diff --git a/tests/Makefile.am b/tests/Makefile.am index 63abac5..d687111 100644 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -135,7 +135,7 @@ include $(top_srcdir)/tools/check-coding-style.mk check-local: check-coding-style LDADD = \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/tests/dbus/Makefile.am b/tests/dbus/Makefile.am index c377f1f..1aec2e2 100644 --- a/tests/dbus/Makefile.am +++ b/tests/dbus/Makefile.am @@ -80,7 +80,7 @@ tpglib-dbus-tests.list: LDADD = \ $(top_builddir)/tests/lib/libtp-glib-tests.la \ $(top_builddir)/telepathy-glib/libtelepathy-glib-reentrants.la \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la \ + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la \ $(GLIB_LIBS) \ $(DBUS_LIBS) \ $(NULL) diff --git a/tests/lib/Makefile.am b/tests/lib/Makefile.am index bd8b017..1126dc0 100644 --- a/tests/lib/Makefile.am +++ b/tests/lib/Makefile.am @@ -1,9 +1,9 @@ # It's necessary to distinguish between modules that link to -# libtelepathy-glib.la (normally a shared library, containing a copy of +# libtelepathy-glib-1.la (normally a shared library, containing a copy of # libtelepathy-glib-internal.la) and libtelepathy-glib-internal.la (a static # convenience library). Under -Bsymbolic, you can't safely link both. # -# You can either link to libtp-glib-tests.la and libtelepathy-glib.la, +# You can either link to libtp-glib-tests.la and libtelepathy-glib-1.la, # or to libtp-glib-tests-internal.la and libtelepathy-glib-internal.la. # Do not mix the versions. # @@ -91,4 +91,4 @@ libtp_glib_tests_internal_la_LIBADD = \ libtp_glib_tests_la_LIBADD = \ $(DBUS_LIBS) \ $(GLIB_LIBS) \ - $(top_builddir)/telepathy-glib/libtelepathy-glib.la + $(top_builddir)/telepathy-glib/libtelepathy-glib-1.la -- 1.7.9.1