Patchwork glib-2.0: move more logic to the .inc

login
register
mail settings
Submitter Ross Burton
Date Nov. 8, 2013, 4:06 p.m.
Message ID <1383926799-23212-1-git-send-email-ross.burton@intel.com>
Download mbox | patch
Permalink /patch/61335/
State Accepted
Commit db5d1274c5f9c00dafc36bfef775a1f4c449b005
Headers show

Comments

Ross Burton - Nov. 8, 2013, 4:06 p.m.
The .bb was getting larger with configuration being arbitarily split between .bb
and .inc.  To help adding a glib_git recipe, strip the .bb down to SRC_URI.

Also don't remove $libdir/gio as it should be owned by glib.

Signed-off-by: Ross Burton <ross.burton@intel.com>
---
 meta/recipes-core/glib-2.0/glib-2.0_2.38.1.bb |   47 -------------------------
 meta/recipes-core/glib-2.0/glib.inc           |   47 ++++++++++++++++++++++---
 2 files changed, 43 insertions(+), 51 deletions(-)

Patch

diff --git a/meta/recipes-core/glib-2.0/glib-2.0_2.38.1.bb b/meta/recipes-core/glib-2.0/glib-2.0_2.38.1.bb
index 3e874d7..a5db302 100644
--- a/meta/recipes-core/glib-2.0/glib-2.0_2.38.1.bb
+++ b/meta/recipes-core/glib-2.0/glib-2.0_2.38.1.bb
@@ -2,10 +2,6 @@  require glib.inc
 
 PE = "1"
 
-DEPENDS += "libffi zlib"
-DEPENDS_class-native += "libffi-native"
-DEPENDS_class-nativesdk += "nativesdk-libffi nativesdk-zlib ${BPN}-native"
-
 SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}"
 
 SRC_URI = "${GNOME_MIRROR}/glib/${SHRT_VER}/glib-${PV}.tar.xz \
@@ -21,46 +17,3 @@  SRC_URI_append_class-native = " file://glib-gettextize-dir.patch"
 
 SRC_URI[md5sum] = "f3f6789151c1810f2fe23fe9ebb8b828"
 SRC_URI[sha256sum] = "01906c62ac666d2ab3183cc07261b2536fab7b211c6129ab66b119c2af56d159"
-
-BBCLASSEXTEND = "native nativesdk"
-
-RDEPENDS_${PN}-ptest += "\
-            gnome-desktop-testing \
-            tzdata \
-            tzdata-americas \
-            tzdata-asia \
-            tzdata-europe \
-            tzdata-posix \
-            python-pygobject \
-            python-dbus \
-           "
-
-RDEPENDS_${PN}-ptest_append_libc-glibc = "\
-            eglibc-gconv-utf-16 \
-            eglibc-charmap-utf-8 \
-            eglibc-gconv-cp1255 \
-            eglibc-charmap-cp1255 \
-            eglibc-gconv-utf-32 \
-            eglibc-gconv-utf-7 \
-            eglibc-charmap-invariant \
-            eglibc-localedata-translit-cjk-variants \
-           "
-EXTRA_OECONF_append_class-target_libc-uclibc = " --with-libiconv=gnu"
-
-do_configure_prepend() {
-	sed -i -e '1s,#!.*,#!${USRBINPATH}/env python,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
-}
-
-do_install_append() {
-  # remove some unpackaged files
-  rm -f ${D}${datadir}/glib-2.0/codegen/*.pyc
-  rm -f ${D}${datadir}/glib-2.0/codegen/*.pyo
-  # and empty dirs
-  rm -rf ${D}${libdir}/gio
-
-  # Some distros have both /bin/perl and /usr/bin/perl, but we set perl location
-  # for target as /usr/bin/perl, so fix it to /usr/bin/perl.
-  if [ -f ${D}${bindir}/glib-mkenums ]; then
-    sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/glib-mkenums
-  fi
-}
diff --git a/meta/recipes-core/glib-2.0/glib.inc b/meta/recipes-core/glib-2.0/glib.inc
index ad0671a..0698c29 100644
--- a/meta/recipes-core/glib-2.0/glib.inc
+++ b/meta/recipes-core/glib-2.0/glib.inc
@@ -13,9 +13,11 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7 \
 BUGTRACKER = "http://bugzilla.gnome.org"
 SECTION = "libs"
 
-DEPENDS = "glib-2.0-native virtual/libiconv"
-DEPENDS_class-native = "pkgconfig-native gettext-native"
-DEPENDS_class-nativesdk = "nativesdk-libtool"
+BBCLASSEXTEND = "native nativesdk"
+
+DEPENDS = "glib-2.0-native virtual/libiconv libffi zlib"
+DEPENDS_class-native = "pkgconfig-native gettext-native libffi-native"
+DEPENDS_class-nativesdk = "nativesdk-libtool nativesdk-libffi nativesdk-zlib ${BPN}-native"
 PACKAGES =+ "${PN}-utils ${PN}-bash-completion ${PN}-codegen"
 
 LEAD_SONAME = "libglib-2.0.*"
@@ -30,8 +32,13 @@  CORECONF = "--disable-dtrace --disable-fam --disable-libelf --disable-systemtap
 PTEST_CONF = "${@base_contains('DISTRO_FEATURES', 'ptest', '--enable-installed-tests', '--disable-installed-tests', d)}"
 EXTRA_OECONF = "--enable-included-printf=no ${CORECONF} ${PTEST_CONF}"
 EXTRA_OECONF_class-native = "${CORECONF} --disable-selinux"
+EXTRA_OECONF_append_class-target_libc-uclibc = " --with-libiconv=gnu"
+
+do_configure_prepend() {
+	sed -i -e '1s,#!.*,#!${USRBINPATH}/env python,' ${S}/gio/gdbus-2.0/codegen/gdbus-codegen.in
+}
 
-FILES_${PN} = "${libdir}/lib*${SOLIBS} ${datadir}/glib-2.0/schemas \
+FILES_${PN} = "${libdir}/lib*${SOLIBS} ${libdir}/gio ${datadir}/glib-2.0/schemas \
                ${datadir}/glib-2.0/gettext/mkinstalldirs ${datadir}/glib-2.0/gettext/po/Makefile.in.in"
 FILES_${PN}-dev += "${libdir}/glib-2.0/include \
                     ${libdir}/gio/modules/lib*${SOLIBSDEV} \
@@ -50,4 +57,36 @@  USE_NLS = "yes"
 
 do_install_append () {
 	sed ${D}${bindir}/gtester-report -i -e '1s|^#!.*|#!/usr/bin/env python|'
+
+	# Remove some unpackaged files
+	rm -f ${D}${datadir}/glib-2.0/codegen/*.pyc
+	rm -f ${D}${datadir}/glib-2.0/codegen/*.pyo
+
+	# Some distros have both /bin/perl and /usr/bin/perl, but we set perl location
+	# for target as /usr/bin/perl, so fix it to /usr/bin/perl.
+	if [ -f ${D}${bindir}/glib-mkenums ]; then
+		sed -i -e '1s,#!.*perl,#! ${USRBINPATH}/env perl,' ${D}${bindir}/glib-mkenums
+	fi
 }
+
+RDEPENDS_${PN}-ptest += "\
+            gnome-desktop-testing \
+            tzdata \
+            tzdata-americas \
+            tzdata-asia \
+            tzdata-europe \
+            tzdata-posix \
+            python-pygobject \
+            python-dbus \
+           "
+
+RDEPENDS_${PN}-ptest_append_libc-glibc = "\
+            eglibc-gconv-utf-16 \
+            eglibc-charmap-utf-8 \
+            eglibc-gconv-cp1255 \
+            eglibc-charmap-cp1255 \
+            eglibc-gconv-utf-32 \
+            eglibc-gconv-utf-7 \
+            eglibc-charmap-invariant \
+            eglibc-localedata-translit-cjk-variants \
+           "