[gtk+/wip/alexl/versioned-types-gtk3: 254/254] Hack to work with versioned types
- From: Alexander Larsson <alexl src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/alexl/versioned-types-gtk3: 254/254] Hack to work with versioned types
- Date: Mon, 15 Feb 2016 08:06:05 +0000 (UTC)
commit 4d3176da50a2bf05c164058b8be73781a72e2a32
Author: Alexander Larsson <alexl redhat com>
Date: Fri Jan 29 18:36:21 2016 +0100
Hack to work with versioned types
configure.ac | 5 +++++
gdk/Makefile.am | 1 +
gdk/gdkenumtypes.c.template | 2 +-
gtk/Makefile.am | 1 +
gtk/gtkcontainer.c | 2 +-
gtk/gtkmodules.c | 2 ++
gtk/gtktypebuiltins.c.template | 2 +-
gtk/gtkwidget.c | 2 +-
8 files changed, 13 insertions(+), 4 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 4da1588..3f103bd 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1866,6 +1866,11 @@ if test "x${enable_Bsymbolic}" = "xyes" ; then
fi
AC_SUBST(GTK_LINK_FLAGS)
+GTK_VERSION_FLAGS="-Wl,--version-script=\$(top_srcdir)/gtk3.versions"
+AC_SUBST(GTK_VERSION_FLAGS)
+
+AC_DEFINE(G_DEFINE_TYPE_DEFAULT_VERSION, GTK3, [Gtype default version])
+
AC_CONFIG_FILES([
README
INSTALL
diff --git a/gdk/Makefile.am b/gdk/Makefile.am
index 84942ce..17bd925 100644
--- a/gdk/Makefile.am
+++ b/gdk/Makefile.am
@@ -47,6 +47,7 @@ AM_CPPFLAGS = \
# we use the general approach here
LDADD = \
$(GTK_LINK_FLAGS) \
+ $(GTK_VERSION_FLAGS) \
-version-info $(LT_VERSION_INFO) \
-export-dynamic \
-rpath $(libdir) \
diff --git a/gdk/gdkenumtypes.c.template b/gdk/gdkenumtypes.c.template
index dcafd8d..099e416 100644
--- a/gdk/gdkenumtypes.c.template
+++ b/gdk/gdkenumtypes.c.template
@@ -24,7 +24,7 @@ GType
/*** BEGIN value-tail ***/
{ 0, NULL, NULL }
};
- etype = g_ type@_register_static (g_intern_static_string ("@EnumName@"), values);
+ etype = g_ type@_register_static (g_intern_static_string (G_TYPE_GET_VERSIONED_NAME(@EnumName@)),
values);
}
return etype;
}
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index 7069071..42f0010 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -77,6 +77,7 @@ deps = \
# we use the general approach here
libtool_opts = \
$(GTK_LINK_FLAGS) \
+ $(GTK_VERSION_FLAGS) \
-version-info $(LT_VERSION_INFO) \
-export-dynamic $(no_undefined) \
-rpath $(libdir)
diff --git a/gtk/gtkcontainer.c b/gtk/gtkcontainer.c
index 69ffbd7..268ca5b 100644
--- a/gtk/gtkcontainer.c
+++ b/gtk/gtkcontainer.c
@@ -447,7 +447,7 @@ gtk_container_get_type (void)
};
container_type =
- g_type_register_static (GTK_TYPE_WIDGET, I_("GtkContainer"),
+ g_type_register_static (GTK_TYPE_WIDGET, I_(G_TYPE_GET_VERSIONED_NAME(GtkContainer)),
&container_info, G_TYPE_FLAG_ABSTRACT);
GtkContainer_private_offset =
diff --git a/gtk/gtkmodules.c b/gtk/gtkmodules.c
index 8f1aea7..75bec3a 100644
--- a/gtk/gtkmodules.c
+++ b/gtk/gtkmodules.c
@@ -589,6 +589,8 @@ _gtk_module_has_mixed_deps (GModule *module_to_check)
gpointer func;
gboolean result;
+ return FALSE;
+
if (!module_to_check)
module = g_module_open (NULL, 0);
else
diff --git a/gtk/gtktypebuiltins.c.template b/gtk/gtktypebuiltins.c.template
index fbd21db..ff3d808 100644
--- a/gtk/gtktypebuiltins.c.template
+++ b/gtk/gtktypebuiltins.c.template
@@ -25,7 +25,7 @@ GType
/*** BEGIN value-tail ***/
{ 0, NULL, NULL }
};
- etype = g_ type@_register_static (g_intern_static_string ("@EnumName@"), values);
+ etype = g_ type@_register_static (g_intern_static_string (G_TYPE_GET_VERSIONED_NAME(@EnumName@)),
values);
}
return etype;
}
diff --git a/gtk/gtkwidget.c b/gtk/gtkwidget.c
index 08bd939..3241a5d 100644
--- a/gtk/gtkwidget.c
+++ b/gtk/gtkwidget.c
@@ -896,7 +896,7 @@ gtk_widget_get_type (void)
NULL /* interface data */
};
- widget_type = g_type_register_static (G_TYPE_INITIALLY_UNOWNED, "GtkWidget",
+ widget_type = g_type_register_static (G_TYPE_INITIALLY_UNOWNED, G_TYPE_GET_VERSIONED_NAME(GtkWidget),
&widget_info, G_TYPE_FLAG_ABSTRACT);
g_type_add_class_private (widget_type, sizeof (GtkWidgetClassPrivate));
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]