summaryrefslogtreecommitdiff
path: root/classes/package.bbclass
diff options
context:
space:
mode:
Diffstat (limited to 'classes/package.bbclass')
-rw-r--r--classes/package.bbclass15
1 files changed, 13 insertions, 2 deletions
diff --git a/classes/package.bbclass b/classes/package.bbclass
index 0d6a7734af..03999a54ef 100644
--- a/classes/package.bbclass
+++ b/classes/package.bbclass
@@ -1,4 +1,15 @@
def legitimize_package_name(s):
+ import re
+
+ def fixutf(m):
+ cp = m.group(1)
+ if cp:
+ return ('\u%s' % cp).decode('unicode_escape').encode('utf-8')
+
+ # Handle unicode codepoints encoded as <U0123>, as in glibc locale files.
+ s = re.sub('<U([0-9A-Fa-f]{1,4})>', fixutf, s)
+
+ # Remaining package name validity fixes
return s.lower().replace('_', '-').replace('@', '+').replace(',', '+').replace('/', '-')
STAGING_PKGMAPS_DIR ?= "${STAGING_DIR}/pkgmaps"
@@ -725,7 +736,7 @@ python package_do_split_locales() {
bb.data.setVar('RDEPENDS_%s' % mainpkg, ' '.join(rdep), d)
}
-PACKAGEFUNCS ?= " do_install package_do_split_locales \
+PACKAGEFUNCS ?= " package_do_split_locales \
populate_packages package_do_shlibs \
package_do_pkgconfig read_shlibdeps"
python package_do_package () {
@@ -738,4 +749,4 @@ do_package[dirs] = "${D}"
do_package[deptask] = "do_package"
populate_packages[dirs] = "${D}"
EXPORT_FUNCTIONS do_package do_shlibs do_split_locales mapping_rename_hook
-addtask package before do_build after do_populate_staging
+addtask package before do_build after do_install