[OE-core] [PATCH] glibc: merge libc-common.bbclass into glibc.bb

Khem Raj raj.khem at gmail.com
Fri Jan 31 18:26:32 UTC 2020


On 1/29/20 1:13 PM, Ross Burton wrote:
> There's only one user of libc-common now that we don't ship both glibc and
> eglibc, so copy the contents directly into the recipe.
> 
> [ YOCTO #12135 ]
> 

seems a good cleanup too.

> Signed-off-by: Ross Burton <ross.burton at intel.com>
> ---
>   meta/classes/libc-common.bbclass          | 37 ---------------------
>   meta/recipes-core/glibc/glibc-package.inc | 40 +++++++++++++++++++++--
>   2 files changed, 38 insertions(+), 39 deletions(-)
>   delete mode 100644 meta/classes/libc-common.bbclass
> 
> diff --git a/meta/classes/libc-common.bbclass b/meta/classes/libc-common.bbclass
> deleted file mode 100644
> index 0e351b67464..00000000000
> --- a/meta/classes/libc-common.bbclass
> +++ /dev/null
> @@ -1,37 +0,0 @@
> -do_install() {
> -	oe_runmake install_root=${D} install
> -	install -Dm 0644 ${WORKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/ld.so.conf
> -	install -d ${D}${localedir}
> -	make -f ${WORKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED"
> -	# get rid of some broken files...
> -	for i in ${GLIBC_BROKEN_LOCALES}; do
> -		sed -i "/$i/d" ${WORKDIR}/SUPPORTED
> -	done
> -	rm -f ${D}${sysconfdir}/rpc
> -	rm -rf ${D}${datadir}/zoneinfo
> -	rm -rf ${D}${libexecdir}/getconf
> -}
> -
> -def get_libc_fpu_setting(bb, d):
> -    if d.getVar('TARGET_FPU') in [ 'soft', 'ppc-efd' ]:
> -        return "--without-fp"
> -    return ""
> -
> -python populate_packages_prepend () {
> -    if d.getVar('DEBIAN_NAMES'):
> -        pkgs = d.getVar('PACKAGES').split()
> -        bpn = d.getVar('BPN')
> -        prefix = d.getVar('MLPREFIX') or ""
> -        # Set the base package...
> -        d.setVar('PKG_' + prefix + bpn, prefix + 'libc6')
> -        libcprefix = prefix + bpn + '-'
> -        for p in pkgs:
> -            # And all the subpackages.
> -            if p.startswith(libcprefix):
> -                renamed = p.replace(bpn, 'libc6', 1)
> -                d.setVar('PKG_' + p, renamed)
> -        # For backward compatibility with old -dbg package
> -        d.appendVar('RPROVIDES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
> -        d.appendVar('RCONFLICTS_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
> -        d.appendVar('RREPLACES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
> -}
> diff --git a/meta/recipes-core/glibc/glibc-package.inc b/meta/recipes-core/glibc/glibc-package.inc
> index ede9e9b9096..8d3d76bb416 100644
> --- a/meta/recipes-core/glibc/glibc-package.inc
> +++ b/meta/recipes-core/glibc/glibc-package.inc
> @@ -65,9 +65,21 @@ DESCRIPTION_${PN}-utils = "Miscellaneous utilities including getconf, iconv, loc
>   DESCRIPTION_libsotruss = "Library to support sotruss which traces calls through PLTs"
>   DESCRIPTION_tzcode = "tzcode, timezone zoneinfo utils -- zic, zdump, tzselect"
>   
> -inherit libc-common multilib_header
> +inherit multilib_header
> +
> +do_install() {
> +	oe_runmake install_root=${D} install
> +	install -Dm 0644 ${WORKDIR}/etc/ld.so.conf ${D}/${sysconfdir}/ld.so.conf
> +	install -d ${D}${localedir}
> +	make -f ${WORKDIR}/generate-supported.mk IN="${S}/localedata/SUPPORTED" OUT="${WORKDIR}/SUPPORTED"
> +	# get rid of some broken files...
> +	for i in ${GLIBC_BROKEN_LOCALES}; do
> +		sed -i "/$i/d" ${WORKDIR}/SUPPORTED
> +	done
> +	rm -f ${D}${sysconfdir}/rpc
> +	rm -rf ${D}${datadir}/zoneinfo
> +	rm -rf ${D}${libexecdir}/getconf
>   
> -do_install_append () {
>   	rm -f ${D}${sysconfdir}/localtime
>   
>   	# remove empty glibc dir
> @@ -108,6 +120,11 @@ do_install_append () {
>   	fi
>   }
>   
> +def get_libc_fpu_setting(bb, d):
> +    if d.getVar('TARGET_FPU') in [ 'soft', 'ppc-efd' ]:
> +        return "--without-fp"
> +    return ""
> +
>   do_install_append_class-target() {
>   	if ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'true', 'false', d)}; then
>   		install -d ${D}${sysconfdir}/tmpfiles.d
> @@ -233,6 +250,25 @@ stash_locale_package_cleanup() {
>   	stash_locale_cleanup ${PKGD}
>   }
>   
> +python populate_packages_prepend () {
> +    if d.getVar('DEBIAN_NAMES'):
> +        pkgs = d.getVar('PACKAGES').split()
> +        bpn = d.getVar('BPN')
> +        prefix = d.getVar('MLPREFIX') or ""
> +        # Set the base package...
> +        d.setVar('PKG_' + prefix + bpn, prefix + 'libc6')
> +        libcprefix = prefix + bpn + '-'
> +        for p in pkgs:
> +            # And all the subpackages.
> +            if p.startswith(libcprefix):
> +                renamed = p.replace(bpn, 'libc6', 1)
> +                d.setVar('PKG_' + p, renamed)
> +        # For backward compatibility with old -dbg package
> +        d.appendVar('RPROVIDES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
> +        d.appendVar('RCONFLICTS_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
> +        d.appendVar('RREPLACES_' + libcprefix + 'dbg', ' ' + prefix + 'libc-dbg')
> +}
> +
>   pkg_postinst_nscd () {
>   	if [ -z "$D" ]; then
>   		if command -v systemd-tmpfiles >/dev/null; then
> 



More information about the Openembedded-core mailing list