Bug 4530

Summary: gconv data needs virtual providers
Product: [Build System, Metadata & Runtime] OE-Core Reporter: Ross Burton <ross.burton>
Component: coreAssignee: Unassigned <unassigned>
Status: NEW --- QA Contact:
Severity: enhancement    
Priority: Medium CC: bernhard.guillon, meta.mr.watcher, meta.watcher, randy.macleod, richard.purdie, tim.orling, wen.yan.tan
Version: 1.4   
Target Milestone: 5.99   
Hardware: All   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: No (bug/feature does not impact docs)

Description Ross Burton 2013-05-22 13:40:46 UTC
libc-package.bbclass packages the gconv locale conversion functions into $BPN-gconv-$encoding, but if a package[1] or image[2] needs a specific encoding available it means specifying the libc being used (e.g. eglibc-gconv-iso8859-1).  There should be virtual packages provided by everything that packages these functions, so the dependency can be on for example virtual/gconf-iso-8859-1.

[1] e.g. guile requires iso-8859-1
[2] "my image is using utf-8 locales"
Comment 1 Ross Burton 2014-04-08 16:14:52 UTC
I guess step one is determining what the names are for uclibc images.
Comment 2 Stephen K Jolley 2017-07-20 15:28:03 UTC
Still vaild
Comment 3 Richard Purdie 2022-05-26 15:26:32 UTC
Fixing this would clean up a lot of recipes in core. We'd want a runtime provides namespace and could then likely use RRECOMMENDS. Moving to 4.99 to highlight it would be good cleanup
Comment 4 mr-nice 2023-10-04 20:27:08 UTC
Hi all,
can you please provide more information about this bug? I grepd the core layer and at least found glibc-charmap-iso-8859-1 for some dependency chains. In special interest for me would be recipes which would benefit from this cleanup.

Greets,
mr-nice
Comment 5 Richard Purdie 2023-10-04 20:50:52 UTC
poky/meta$ grep libc-glibc.*gconv -R
recipes-multimedia/gstreamer/gstreamer1.0_1.22.5.bb:RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-5"
recipes-support/apr/apr-util_1.6.3.bb:RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-iso8859-1 glibc-gconv-iso8859-2 glibc-gconv-utf-7"
recipes-devtools/valgrind/valgrind_3.21.0.bb:RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-utils glibc-gconv-utf-32"
recipes-devtools/mtools/mtools_4.0.43.bb:RDEPENDS:${PN}:libc-glibc = "glibc-gconv-ibm850"
recipes-connectivity/bluez5/bluez5.inc:RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-utf-16"
recipes-core/libxml/libxml2_2.11.5.bb:RDEPENDS:${PN}-ptest:append:libc-glibc = " glibc-gconv-ebcdic-us \

which shows a few recipes with glibc specific overrides and gconv dependencies in OE-Core
Comment 6 mr-nice 2023-10-04 21:10:42 UTC
Hey RP,
thanks for taking the time to clarify the scope of the bug! I will take a closer look at it.
Greets,
mr-nice
Comment 7 Wen Yan Tan 2024-05-07 06:54:04 UTC
Hi all,

Is this still valid? Can you please provide more information about the objective? For those affected recipes in meta, we want to use virtual providers as well as using RRECOMMENDS?