Accepting request 425006 from GNOME:Next
Scripted push of project GNOME:Next OBS-URL: https://build.opensuse.org/request/show/425006 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gobject-introspection?expand=0&rev=156
This commit is contained in:
parent
80c4db18a4
commit
a832a3e0b3
@ -1,133 +0,0 @@
|
||||
From ed8a690dbe738b3096f8d43bdbc627eb3f951523 Mon Sep 17 00:00:00 2001
|
||||
From: Dominique Leuenberger <dimstar@opensuse.org>
|
||||
Date: Tue, 6 Dec 2011 16:23:59 +0100
|
||||
Subject: [PATCH] Bug 665672: g-ir-dep-scanner: Scan dependencies of a typelib
|
||||
and give information.
|
||||
|
||||
This allows distributions to create automatic dependency tracking coming
|
||||
from .typelib files.
|
||||
|
||||
The dependencies identified at this time are:
|
||||
typelib - based dependencies
|
||||
shared library - dependencies
|
||||
---
|
||||
Makefile-tools.am | 10 +++++-
|
||||
tools/g-ir-dep-tool.c | 78 +++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 87 insertions(+), 1 deletions(-)
|
||||
create mode 100644 tools/g-ir-dep-tool.c
|
||||
|
||||
diff --git a/Makefile-tools.am b/Makefile-tools.am
|
||||
index f84de99..6bc4da4 100644
|
||||
--- a/Makefile-tools.am
|
||||
+++ b/Makefile-tools.am
|
||||
@@ -1,5 +1,6 @@
|
||||
bin_PROGRAMS += g-ir-compiler g-ir-generate
|
||||
bin_SCRIPTS += g-ir-scanner g-ir-annotation-tool
|
||||
+bin_PROGRAMS += g-ir-dep-tool
|
||||
|
||||
if BUILD_DOCTOOL
|
||||
bin_SCRIPTS += g-ir-doc-tool
|
||||
@@ -38,8 +39,15 @@ g_ir_generate_LDADD = \
|
||||
libgirepository-1.0.la \
|
||||
$(GIREPO_LIBS)
|
||||
|
||||
+g_ir_dep_tool_SOURCES = tools/g-ir-dep-tool.c
|
||||
+g_ir_dep_tool_CFLAGS = $(GIO_CFLAGS) -I$(top_srcdir)/girepository
|
||||
+g_ir_dep_tool_LDADD = \
|
||||
+ libgirepository-internals.la \
|
||||
+ libgirepository-1.0.la \
|
||||
+ $(GIREPO_LIBS)
|
||||
+
|
||||
GCOVSOURCES = \
|
||||
$(g_ir_compiler_SOURCES) \
|
||||
$(g_ir_generate_SOURCES)
|
||||
|
||||
-CLEANFILES += g-ir-scanner g-ir-annotation-tool g-ir-doc-tool
|
||||
+CLEANFILES += g-ir-scanner g-ir-annotation-tool g-ir-doc-tool g-ir-dep-tool
|
||||
diff --git a/tools/g-ir-dep-tool.c b/tools/g-ir-dep-tool.c
|
||||
new file mode 100644
|
||||
index 0000000..800779b
|
||||
--- /dev/null
|
||||
+++ b/tools/g-ir-dep-tool.c
|
||||
@@ -0,0 +1,78 @@
|
||||
+
|
||||
+/* -*- Mode: C; c-file-style: "gnu"; -*- */
|
||||
+/* GObject introspection: typelib dependency scanner
|
||||
+ *
|
||||
+ * Copyright (C) 2011 Dominique Leuenberger
|
||||
+ *
|
||||
+ * This library is free software; you can redistribute it and/or
|
||||
+ * modify it under the terms of the GNU Lesser General Public
|
||||
+ * License as published by the Free Software Foundation; either
|
||||
+ * version 2 of the License, or (at your option) any later version.
|
||||
+ *
|
||||
+ * This library is distributed in the hope that it will be useful,
|
||||
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
+ * Lesser General Public License for more details.
|
||||
+ *
|
||||
+ * You should have received a copy of the GNU Lesser General Public
|
||||
+ * License along with this library; if not, write to the
|
||||
+ * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
+ * Boston, MA 02111-1307, USA.
|
||||
+ */
|
||||
+
|
||||
+#include <glib.h>
|
||||
+#include <girepository.h>
|
||||
+
|
||||
+int main(int argc, char *argv[]) {
|
||||
+ GError *err = NULL;
|
||||
+ GITypelib *typelib;
|
||||
+ gchar **deps;
|
||||
+ const gchar *shlibs;
|
||||
+ int i;
|
||||
+ const char *namespace = argv[1];
|
||||
+ const char *version = argv[2];
|
||||
+
|
||||
+ g_type_init();
|
||||
+
|
||||
+ if (argc < 2 || argc > 3) {
|
||||
+ g_print ("Usage: %s <typelib> [<version>]\n\n", argv[0]);
|
||||
+ g_print (" typelib: The namespace of the typelib to inspect\n");
|
||||
+ g_print (" version: The version of the typelib to inspect\n");
|
||||
+ return 1;
|
||||
+ }
|
||||
+
|
||||
+ /* Try to load the typelib specified as parameter */
|
||||
+ typelib = g_irepository_require (NULL, namespace, version, 0, &err);
|
||||
+
|
||||
+ if (!typelib) {
|
||||
+ g_printerr ("ERROR: Failed to load typelib '%s'\n", namespace);
|
||||
+ return 2;
|
||||
+ }
|
||||
+
|
||||
+ /* Finding all the typelib based Requires */
|
||||
+ deps = g_irepository_get_dependencies (NULL, namespace);
|
||||
+ if (deps) {
|
||||
+ for (i=0; deps[i]; i++) {
|
||||
+ g_print ("typelib: %s\n", deps[i]);
|
||||
+ }
|
||||
+ g_strfreev (deps);
|
||||
+ }
|
||||
+
|
||||
+ /* Finding the shared library we depend on (if any) */
|
||||
+ shlibs = g_irepository_get_shared_library (NULL, namespace);
|
||||
+
|
||||
+ if (shlibs != NULL && shlibs[0] != '\0')
|
||||
+ {
|
||||
+ /* libs is a comma-separated list of libraries */
|
||||
+ gchar **libs = g_strsplit (shlibs, ",", 0);
|
||||
+
|
||||
+ for (i = 0; libs[i]; i++)
|
||||
+ {
|
||||
+ g_print ("shlib: %s\n", libs[i]);
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
+ g_typelib_free (typelib);
|
||||
+
|
||||
+ return 0;
|
||||
+}
|
||||
--
|
||||
1.7.7.3
|
||||
|
@ -147,7 +147,7 @@ function typelib_requires {
|
||||
split_name_version $(basename $1 | sed 's,.typelib$,,')
|
||||
oldIFS=$IFS
|
||||
IFS=$'\n'
|
||||
for req in $(g-ir-dep-tool $symbol $version); do
|
||||
for req in $(g-ir-inspect --print-shlibs --print-typelibs $symbol --version $version); do
|
||||
case $req in
|
||||
typelib:*)
|
||||
module=${req#typelib: }
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:fa275aaccdbfc91ec0bc9a6fd0562051acdba731e7d584b64a277fec60e75877
|
||||
size 1371308
|
3
gobject-introspection-1.49.1.tar.xz
Normal file
3
gobject-introspection-1.49.1.tar.xz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:f7ec96fd7c21c6e6d5dc5388f2468fbeacba3356b7289a5f1dd93579589cdfa5
|
||||
size 1414160
|
@ -1,3 +1,15 @@
|
||||
-------------------------------------------------------------------
|
||||
Wed Aug 3 21:14:35 UTC 2016 - zaitor@opensuse.org
|
||||
|
||||
- Update to version 1.49.1:
|
||||
+ gir: Update annotations from GLib 2.49.4.
|
||||
+ Various MSVC build fixes.
|
||||
+ g-ir-inspect: Inspect GI typelibs.
|
||||
- Drop g-ir-dep-tool.patch: Fix upstream in a different way.
|
||||
- Rebase gi-find-deps.sh to to conform to upstreams commits.
|
||||
- Following the above: drop libtool BuildRequires and stop passing
|
||||
autoreconf pre configure, no longer needed.
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Mon Apr 18 13:47:39 UTC 2016 - dimstar@opensuse.org
|
||||
|
||||
|
@ -17,7 +17,7 @@
|
||||
|
||||
|
||||
Name: gobject-introspection
|
||||
Version: 1.48.0
|
||||
Version: 1.49.1
|
||||
Release: 0
|
||||
# FIXME: Find a way to identify if we need python3-gobject or python-gobject from gi-find-deps.sh.
|
||||
# FIXME: when bgo#629930 gets fixed, move the appropriate pkg-config files to the main package and rename the devel package to libgirepository-devel
|
||||
@ -25,22 +25,18 @@ Summary: GObject Introspection Tools
|
||||
License: LGPL-2.1+ and GPL-2.0+
|
||||
Group: Development/Libraries/GNOME
|
||||
Url: http://live.gnome.org/GObjectIntrospection
|
||||
Source0: http://download.gnome.org/sources/gobject-introspection/1.48/%{name}-%{version}.tar.xz
|
||||
Source0: http://download.gnome.org/sources/gobject-introspection/1.49/%{name}-%{version}.tar.xz
|
||||
# gi-find-deps.sh is a rpm helper for Provides and Requires. Script creates typelib()-style Provides/Requires.
|
||||
Source1: gi-find-deps.sh
|
||||
Source2: gobjectintrospection.attr
|
||||
Source3: gobject-introspection-typelib.template
|
||||
Source98: baselibs.conf
|
||||
Source99: %{name}-rpmlintrc
|
||||
# PATCH-FIX-UPSTREAM g-ir-dep-tool.patch bgo#665672 dimstar@opensuse.org -- Add g-ir-dep-tool to get further automatic dependencies.
|
||||
Patch0: g-ir-dep-tool.patch
|
||||
BuildRequires: bison
|
||||
BuildRequires: fdupes
|
||||
BuildRequires: flex
|
||||
BuildRequires: gtk-doc
|
||||
BuildRequires: libffi-devel
|
||||
# needed for patch0
|
||||
BuildRequires: libtool
|
||||
BuildRequires: python-Mako
|
||||
BuildRequires: python-devel >= 2.7
|
||||
BuildRequires: python-xml
|
||||
@ -97,11 +93,8 @@ a uniform, machine readable format.
|
||||
|
||||
%prep
|
||||
%setup -q
|
||||
%patch0 -p1
|
||||
|
||||
%build
|
||||
# needed for patch0
|
||||
autoreconf -fi
|
||||
%configure \
|
||||
--enable-gtk-doc \
|
||||
--disable-static \
|
||||
@ -130,9 +123,9 @@ rm -rf %{buildroot}
|
||||
%doc AUTHORS CONTRIBUTORS COPYING COPYING.GPL NEWS README TODO
|
||||
%{_bindir}/g-ir-annotation-tool
|
||||
%{_bindir}/g-ir-compiler
|
||||
%{_bindir}/g-ir-dep-tool
|
||||
%{_bindir}/g-ir-doc-tool
|
||||
%{_bindir}/g-ir-generate
|
||||
%{_bindir}/g-ir-inspect
|
||||
%{_bindir}/g-ir-scanner
|
||||
%doc %{_mandir}/man1/g-ir-compiler.1*
|
||||
%doc %{_mandir}/man1/g-ir-generate.1*
|
||||
|
Loading…
Reference in New Issue
Block a user