aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/classes/libc-package.bbclass7
-rw-r--r--meta/recipes-core/eglibc/eglibc-locale.inc22
-rw-r--r--meta/recipes-core/glibc/glibc-locale_2.10.1.bb23
3 files changed, 36 insertions, 16 deletions
diff --git a/meta/classes/libc-package.bbclass b/meta/classes/libc-package.bbclass
index 4bc58c8e57..ff92afb179 100644
--- a/meta/classes/libc-package.bbclass
+++ b/meta/classes/libc-package.bbclass
@@ -80,21 +80,22 @@ rm -rf ${TMP_LOCALE}
TMP_LOCALE="/tmp/locale${libdir}/locale"
+LOCALETREESRC ?= "{PKGD}"
do_prep_locale_tree() {
treedir=${WORKDIR}/locale-tree
rm -rf $treedir
mkdir -p $treedir/${base_bindir} $treedir/${base_libdir} $treedir/${datadir} $treedir/${libdir}/locale
- tar -cf - -C ${PKGD}${datadir} -ps i18n | tar -xf - -C $treedir/${datadir}
+ tar -cf - -C ${LOCALETREESRC}${datadir} -ps i18n | tar -xf - -C $treedir/${datadir}
# unzip to avoid parsing errors
for i in $treedir/${datadir}/i18n/charmaps/*gz; do
gunzip $i
done
- tar -cf - -C ${PKGD}${base_libdir} -ps . | tar -xf - -C $treedir/${base_libdir}
+ tar -cf - -C ${LOCALETREESRC}${base_libdir} -ps . | tar -xf - -C $treedir/${base_libdir}
if [ -f ${STAGING_DIR_NATIVE}${prefix_native}/lib/libgcc_s.* ]; then
tar -cf - -C ${STAGING_DIR_NATIVE}/${prefix_native}/${base_libdir} -ps libgcc_s.* | tar -xf - -C $treedir/${base_libdir}
fi
- install -m 0755 ${PKGD}${bindir}/localedef $treedir/${base_bindir}
+ install -m 0755 ${LOCALETREESRC}${bindir}/localedef $treedir/${base_bindir}
}
do_collect_bins_from_locale_tree() {
diff --git a/meta/recipes-core/eglibc/eglibc-locale.inc b/meta/recipes-core/eglibc/eglibc-locale.inc
index 7c4b1d501d..c84f03292b 100644
--- a/meta/recipes-core/eglibc/eglibc-locale.inc
+++ b/meta/recipes-core/eglibc/eglibc-locale.inc
@@ -26,29 +26,37 @@ BINARY_LOCALE_ARCHES ?= "arm.* i[3-6]86 x86_64 powerpc mips"
# set "0" for qemu emulation of native localedef for locale generation
LOCALE_GENERATION_WITH_CROSS-LOCALEDEF = "1"
-PR = "r1"
+PR = "r2"
PKGSUFFIX = ""
PKGSUFFIX_virtclass-nativesdk = "-nativesdk"
-PACKAGES = "localedef${PKGSUFFIX}"
+PROVIDES = "virtual/libc-locale${PKGSUFFIX}"
+
+PACKAGES = "localedef${PKGSUFFIX} ${PN}-dbg"
PACKAGES_DYNAMIC = "locale-base-* \
eglibc-gconv-* eglibc-charmap-* eglibc-localedata-* eglibc-binary-localedata-* \
glibc-gconv-*${PKGSUFFIX} glibc-charmap-* glibc-localedata-* glibc-binary-localedata-*"
-PROVIDES = "virtual/libc-locale${PKGSUFFIX}"
+DESCRIPTION_localedef = "eglibc: compile locale definition files"
FILES_eglibc-gconv = "${libdir}/gconv/*"
+FILES_${PN}-dbg += "${libdir}/gconv/.debug/*"
FILES_localedef${PKGSUFFIX} = "${bindir}/localedef"
+LOCALETREESRC = "${STAGING_INCDIR}/eglibc-locale-internal-${MULTIMACH_TARGET_SYS}"
+
do_install () {
- cp -fpPR ${STAGING_INCDIR}/eglibc-locale-internal-${MULTIMACH_TARGET_SYS}/* ${D}
- cp -fpPR ${D}/SUPPORTED ${WORKDIR}
+ mkdir -p ${D}${bindir} ${D}${datadir} ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
+ cp -fpPR ${LOCALETREESRC}/${libdir}/locale ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
+ cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
+ cp -fpPR ${LOCALETREESRC}/SUPPORTED ${WORKDIR}
}
-DESCRIPTION_localedef = "eglibc: compile locale definition files"
-
inherit libc-package
do_install[depends] += "virtual/libc${PKGSUFFIX}:do_populate_sysroot"
diff --git a/meta/recipes-core/glibc/glibc-locale_2.10.1.bb b/meta/recipes-core/glibc/glibc-locale_2.10.1.bb
index 60825397a5..1ddc40e228 100644
--- a/meta/recipes-core/glibc/glibc-locale_2.10.1.bb
+++ b/meta/recipes-core/glibc/glibc-locale_2.10.1.bb
@@ -1,4 +1,4 @@
-#INHIBIT_DEFAULT_DEPS = "1"
+INHIBIT_DEFAULT_DEPS = "1"
LICENSE = "LGPL"
BPN = "glibc"
@@ -31,22 +31,33 @@ PR = "r1"
PKGSUFFIX = ""
PKGSUFFIX_virtclass-nativesdk = "-nativesdk"
-PROVIDES = "virtual/libc-locale"
+PROVIDES = "virtual/libc-locale${PKGSUFFIX}"
-PACKAGES = "localedef${PKGSUFFIX}"
+PACKAGES = "localedef${PKGSUFFIX} ${PN}-dbg"
PACKAGES_DYNAMIC = "locale-base-* \
glibc-gconv-*${PKGSUFFIX} glibc-charmap-* glibc-localedata-* glibc-binary-localedata-*"
-FILES_localedef${PKGSUFFIX} = "${bindir}/localedef"
DESCRIPTION_localedef = "glibc: compile locale definition files"
+FILES_${PN}-dbg += "${libdir}/gconv/.debug/*"
+FILES_localedef${PKGSUFFIX} = "${bindir}/localedef"
+
+LOCALETREESRC = "${STAGING_INCDIR}/glibc-locale-internal-${MULTIMACH_TARGET_SYS}"
+
do_install () {
- cp -fpPR ${STAGING_INCDIR}/glibc-locale-internal-${MULTIMACH_TARGET_SYS}/* ${D}
- cp -fpPR ${D}/SUPPORTED ${WORKDIR}
+ mkdir -p ${D}${bindir} ${D}${datadir} ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${bindir}/* ${D}${bindir}
+ cp -fpPR ${LOCALETREESRC}/${libdir}/locale ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${libdir}/gconv ${D}${libdir}
+ cp -fpPR ${LOCALETREESRC}/${datadir}/i18n ${D}${datadir}
+ cp -fpPR ${LOCALETREESRC}/${datadir}/locale ${D}${datadir}
+ cp -fpPR ${LOCALETREESRC}/SUPPORTED ${WORKDIR}
}
+inherit libc-package
+
do_install[depends] += "virtual/libc${PKGSUFFIX}:do_populate_sysroot"
BBCLASSEXTEND = "nativesdk"