diff options
author | Zhai Edwin <edwin.zhai@intel.com> | 2012-05-08 22:43:49 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-05-08 16:06:42 +0100 |
commit | 38467c458fdca97a5b0f2aa91de96f81330dc8de (patch) | |
tree | 205d2bbeed902a3fff0bf455e8387ff6b6988cee /meta | |
parent | c4a7a24cb5185d2449e75156e03a0c3649602ed3 (diff) | |
download | poky-38467c458fdca97a5b0f2aa91de96f81330dc8de.tar.gz |
pango: Fix modules load failure in multilib environment
Multi-libs of Pango need different modules, thus different config files and
utils. This patch separate config file and utils with different MLPREFIX to
avoid conflict.
[YOCTO #2356] got fixed.
(From OE-Core rev: 80c431989eef64d2c34a9cddb7fb95b7b9768706)
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/recipes-graphics/pango/pango-1.28.4/multilib-fix-clean.patch | 40 | ||||
-rw-r--r-- | meta/recipes-graphics/pango/pango.inc | 12 | ||||
-rw-r--r-- | meta/recipes-graphics/pango/pango_1.28.4.bb | 7 |
3 files changed, 54 insertions, 5 deletions
diff --git a/meta/recipes-graphics/pango/pango-1.28.4/multilib-fix-clean.patch b/meta/recipes-graphics/pango/pango-1.28.4/multilib-fix-clean.patch new file mode 100644 index 0000000000..addda5f90c --- /dev/null +++ b/meta/recipes-graphics/pango/pango-1.28.4/multilib-fix-clean.patch | |||
@@ -0,0 +1,40 @@ | |||
1 | Index: pango-1.28.4/configure.in | ||
2 | =================================================================== | ||
3 | --- pango-1.28.4.orig/configure.in 2011-04-05 04:29:16.000000000 +0800 | ||
4 | +++ pango-1.28.4/configure.in 2012-05-08 21:32:17.000000000 +0800 | ||
5 | @@ -205,6 +205,11 @@ | ||
6 | |||
7 | AC_SUBST(PANGO_DEBUG_FLAGS) | ||
8 | |||
9 | +AC_ARG_WITH(mlprefix, | ||
10 | + AC_HELP_STRING([--with-mlprefix=<ARG>], [multilib prefix]), | ||
11 | + mlprefix_str=$withval, mlprefix_str="") | ||
12 | +AC_DEFINE_UNQUOTED([MLPREFIX], ["$mlprefix_str"], [multilib prefix.]) | ||
13 | + | ||
14 | AC_ARG_ENABLE(rebuilds, | ||
15 | [AC_HELP_STRING([--disable-rebuilds], | ||
16 | [disable all source autogeneration rules])],, | ||
17 | Index: pango-1.28.4/pango/modules.c | ||
18 | =================================================================== | ||
19 | --- pango-1.28.4.orig/pango/modules.c 2010-09-22 03:37:01.000000000 +0800 | ||
20 | +++ pango-1.28.4/pango/modules.c 2012-05-08 21:21:02.000000000 +0800 | ||
21 | @@ -529,7 +529,8 @@ | ||
22 | |||
23 | if (!file_str) | ||
24 | file_str = g_build_filename (pango_get_sysconf_subdirectory (), | ||
25 | - "pango.modules", | ||
26 | +/* For multilib case, keep multiple config file for different libs */ | ||
27 | + MLPREFIX "pango.modules", | ||
28 | NULL); | ||
29 | |||
30 | files = pango_split_file_list (file_str); | ||
31 | @@ -640,7 +641,8 @@ | ||
32 | if (!no_module_warning) | ||
33 | { | ||
34 | gchar *filename = g_build_filename (pango_get_sysconf_subdirectory (), | ||
35 | - "pango.modules", | ||
36 | +/* For multilib case, keep multiple config file for different libs */ | ||
37 | + MLPREFIX "pango.modules", | ||
38 | NULL); | ||
39 | g_critical ("No modules found:\n" | ||
40 | "No builtin or dynamically loaded modules were found.\n" | ||
diff --git a/meta/recipes-graphics/pango/pango.inc b/meta/recipes-graphics/pango/pango.inc index e7681b66d6..fbf5027db8 100644 --- a/meta/recipes-graphics/pango/pango.inc +++ b/meta/recipes-graphics/pango/pango.inc | |||
@@ -37,7 +37,8 @@ FULL_OPTIMIZATION_arm = "-O2" | |||
37 | EXTRA_OECONF = "--disable-glibtest \ | 37 | EXTRA_OECONF = "--disable-glibtest \ |
38 | --disable-introspection \ | 38 | --disable-introspection \ |
39 | --enable-explicit-deps=no \ | 39 | --enable-explicit-deps=no \ |
40 | --disable-debug" | 40 | --disable-debug \ |
41 | --with-mlprefix=${MLPREFIX}" | ||
41 | 42 | ||
42 | LEAD_SONAME = "libpango-1.0*" | 43 | LEAD_SONAME = "libpango-1.0*" |
43 | LIBV = "1.6.0" | 44 | LIBV = "1.6.0" |
@@ -52,12 +53,19 @@ if ! [ -e $D${sysconfdir}/pango ] ; then | |||
52 | fi | 53 | fi |
53 | } | 54 | } |
54 | 55 | ||
56 | do_install_append () { | ||
57 | if [ "${MLPREFIX}" != "" ]; then | ||
58 | mv ${D}/${bindir}/pango-querymodules ${D}/${bindir}/${MLPREFIX}pango-querymodules | ||
59 | fi | ||
60 | } | ||
61 | |||
62 | |||
55 | python populate_packages_prepend () { | 63 | python populate_packages_prepend () { |
56 | prologue = d.getVar("postinst_prologue", True) | 64 | prologue = d.getVar("postinst_prologue", True) |
57 | 65 | ||
58 | modules_root = d.expand('${libdir}/pango/${LIBV}/modules') | 66 | modules_root = d.expand('${libdir}/pango/${LIBV}/modules') |
59 | 67 | ||
60 | do_split_packages(d, modules_root, '^pango-(.*)\.so$', 'pango-module-%s', 'Pango module %s', prologue + 'pango-querymodules > /etc/pango/pango.modules') | 68 | do_split_packages(d, modules_root, '^pango-(.*)\.so$', 'pango-module-%s', 'Pango module %s', prologue + '${bindir}/${MLPREFIX}pango-querymodules > /etc/pango/${MLPREFIX}pango.modules') |
61 | } | 69 | } |
62 | 70 | ||
63 | FILES_${PN} = "${sysconfdir}/pango/* ${bindir}/* ${libdir}/libpango*${SOLIBS}" | 71 | FILES_${PN} = "${sysconfdir}/pango/* ${bindir}/* ${libdir}/libpango*${SOLIBS}" |
diff --git a/meta/recipes-graphics/pango/pango_1.28.4.bb b/meta/recipes-graphics/pango/pango_1.28.4.bb index 8d71de0458..7055158192 100644 --- a/meta/recipes-graphics/pango/pango_1.28.4.bb +++ b/meta/recipes-graphics/pango/pango_1.28.4.bb | |||
@@ -2,10 +2,11 @@ require pango.inc | |||
2 | 2 | ||
3 | LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" | 3 | LIC_FILES_CHKSUM = "file://COPYING;md5=3bf50002aefd002f49e7bb854063f7e7" |
4 | 4 | ||
5 | PR = "r7" | 5 | PR = "r8" |
6 | 6 | ||
7 | SRC_URI += "file://no-tests.patch" | 7 | SRC_URI += "file://no-tests.patch \ |
8 | SRC_URI += "file://noconst.patch" | 8 | file://noconst.patch \ |
9 | file://multilib-fix-clean.patch" | ||
9 | 10 | ||
10 | SRC_URI[archive.md5sum] = "3f3989700f04e9117d30544a9078b3a0" | 11 | SRC_URI[archive.md5sum] = "3f3989700f04e9117d30544a9078b3a0" |
11 | SRC_URI[archive.sha256sum] = "7eb035bcc10dd01569a214d5e2bc3437de95d9ac1cfa9f50035a687c45f05a9f" | 12 | SRC_URI[archive.sha256sum] = "7eb035bcc10dd01569a214d5e2bc3437de95d9ac1cfa9f50035a687c45f05a9f" |