[gobject-introspection] Move libffi to pkgconfig Requires.private

Kalev Lember kalev at fedoraproject.org
Fri Apr 27 16:59:21 UTC 2012


commit 289e3645695b5f15f00a0fb98cfc49fa5caa0442
Author: Kalev Lember <kalevlember at gmail.com>
Date:   Fri Apr 27 19:49:22 2012 +0300

    Move libffi to pkgconfig Requires.private
    
    Currently most of the apps that link with libgirepository are also
    linked with libffi, without actually using any symbols from there.
    Moving libffi to Requires.private avoids needlessly linking with libffi
    and should reduce the impact when the libffi soname bump lands in
    rawhide.
    
    Backported from upstream commit a847eb8.

 gi-pkgconfig-requires-private.patch |   34 ++++++++++++++++++++++++++++++++++
 gobject-introspection.spec          |   10 +++++++++-
 2 files changed, 43 insertions(+), 1 deletions(-)
---
diff --git a/gi-pkgconfig-requires-private.patch b/gi-pkgconfig-requires-private.patch
new file mode 100644
index 0000000..cc0ba93
--- /dev/null
+++ b/gi-pkgconfig-requires-private.patch
@@ -0,0 +1,34 @@
+diff --git a/gobject-introspection-1.0.pc.in b/gobject-introspection-1.0.pc.in
+index 32e7877..9613fec 100644
+--- a/gobject-introspection-1.0.pc.in
++++ b/gobject-introspection-1.0.pc.in
+@@ -14,8 +14,10 @@ girdir=${datadir}/gir-1.0
+ typelibdir=${libdir}/girepository-1.0
+ 
+ Cflags: -I${includedir}/gobject-introspection-1.0 @FFI_PC_CFLAGS@
+-Requires: glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0 @FFI_PC_PACKAGES@
+-Libs: -L${libdir} -lgirepository-1.0 @FFI_PC_LIBS@
++Requires: glib-2.0 gobject-2.0 gmodule-2.0 gthread-2.0
++Requires.private: @FFI_PC_PACKAGES@
++Libs: -L${libdir} -lgirepository-1.0
++Libs.private: @FFI_PC_LIBS@
+ 
+ Name: gobject-introspection
+ Description: GObject Introspection
+diff --git a/gobject-introspection-no-export-1.0.pc.in b/gobject-introspection-no-export-1.0.pc.in
+index 110cb75..a6d6cc6 100644
+--- a/gobject-introspection-no-export-1.0.pc.in
++++ b/gobject-introspection-no-export-1.0.pc.in
+@@ -13,8 +13,10 @@ girdir=${datadir}/gir-1.0
+ typelibdir=${libdir}/girepository-1.0
+ 
+ Cflags: -I${includedir}/gobject-introspection-1.0 @FFI_PC_CFLAGS@
+-Requires: glib-2.0 gobject-2.0 gmodule-no-export-2.0 gthread-2.0 @FFI_PC_PACKAGES@
+-Libs: -L${libdir} -lgirepository-1.0 @FFI_PC_LIBS@
++Requires: glib-2.0 gobject-2.0 gmodule-no-export-2.0 gthread-2.0
++Requires.private: @FFI_PC_PACKAGES@
++Libs: -L${libdir} -lgirepository-1.0
++Libs.private: @FFI_PC_LIBS@
+ 
+ Name: gobject-introspection
+ Description: GObject Introspection
diff --git a/gobject-introspection.spec b/gobject-introspection.spec
index 2ae868c..296fe40 100644
--- a/gobject-introspection.spec
+++ b/gobject-introspection.spec
@@ -3,7 +3,7 @@
 
 Name:           gobject-introspection
 Version:        1.32.1
-Release:        1%{?dist}
+Release:        2%{?dist}
 Summary:        Introspection system for GObject-based libraries
 
 Group:      Development/Libraries
@@ -11,6 +11,9 @@ License:        GPLv2+, LGPLv2+, MIT
 URL:            http://live.gnome.org/GObjectIntrospection
 #VCS:           git:git://git.gnome.org/gobject-introspection
 Source0:        http://download.gnome.org/sources/gobject-introspection/1.32/%{name}-%{version}.tar.xz
+# Move libffi to pkgconfig Requires.private, in order to
+# reduce the impact when libffi soname bump lands in rawhide.
+Patch0:         gi-pkgconfig-requires-private.patch
 
 Obsoletes:      gir-repository
 
@@ -54,6 +57,7 @@ Libraries and headers for gobject-introspection
 
 %prep
 %setup -q
+%patch0 -p1 -b .pc_requires_private
 
 %build
 (if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
@@ -94,6 +98,10 @@ find $RPM_BUILD_ROOT -type f -name "*.a" -exec rm -f {} ';'
 %{_datadir}/gtk-doc/html/gi/*
 
 %changelog
+* Fri Apr 27 2012 Kalev Lember <kalevlember at gmail.com> - 1.32.1-2
+- Move libffi to pkgconfig Requires.private, in order to
+  reduce the impact when libffi soname bump lands in rawhide.
+
 * Fri Apr 20 2012 Kalev Lember <kalevlember at gmail.com> - 1.32.1-1
 - Update to 1.32.1
 


More information about the scm-commits mailing list