Bug 12470 - glibc-locale-2.26-r0 do_package: QA Issue: glibc-locale: Files/directories were installed but not shipped in any package
Summary: glibc-locale-2.26-r0 do_package: QA Issue: glibc-locale: Files/directories we...
Status: RESOLVED NOTABUG
Alias: None
Product: Meta-yocto
Classification: Build System, Metadata & Runtime
Component: meta-yocto (show other bugs)
Version: unspecified
Hardware: x86 Multiple
: Undecided normal
Target Milestone: ---
Assignee: mikko.rapeli
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2018-01-10 11:24 UTC by mikko.rapeli
Modified: 2018-01-16 11:13 UTC (History)
3 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: Don't know


Attachments
build log (306.81 KB, text/plain)
2018-01-10 11:24 UTC, mikko.rapeli
no flags Details
local.conf (10.46 KB, application/octet-stream)
2018-01-10 11:24 UTC, mikko.rapeli
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description mikko.rapeli 2018-01-10 11:24:32 UTC
Created attachment 4169 [details]
build log

When building core-image-minimal from poky commit yocto-2.4-771-g205cfd7 with DISTRO_FEATURES += "systemd" on an uptodate Ubuntu 14.04 machine, the build fails with:

$ bitbake core-image-minimal
...
ERROR: glibc-locale-2.26-r0 do_package: QA Issue: glibc-locale: Files/directories were installed but not shipped in any package:
  /usr/share/i18n
  /usr/share/i18n/locales
...
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install.
glibc-locale: 828 installed and not shipped files. [installed-vs-shipped]
ERROR: glibc-locale-2.26-r0 do_package: Fatal QA errors found, failing task.
ERROR: glibc-locale-2.26-r0 do_package: Function failed: do_package
ERROR: Logfile of failure stored in: /home/mcfrisk/src/yocto/poky/build/tmp/work/i586-poky-linux/glibc-locale/2.26-r0/temp/log.do_package.5552
NOTE: recipe glibc-locale-2.26-r0: task do_package: Failed
ERROR: Task (/home/mcfrisk/src/yocto/poky/meta/recipes-core/glibc/glibc-locale_2.26.bb:do_package) failed with exit code '1'

Full conf/local.conf and build logs are attached.

Without DISTRO_FEATURES += "systemd" build succeeds so I can use that as a workaround to build test patches.
Comment 1 mikko.rapeli 2018-01-10 11:24:58 UTC
Created attachment 4170 [details]
local.conf
Comment 2 Ross Burton 2018-01-11 15:38:48 UTC
I'm 99% sure this is because DISTRO_FEATURES is a conditional assignment by default, so your += actually wipes out DISTRO_FEATURES and that breaks the glibc build.

You can verify this by doing bitbake glibc-locale -e and seeing what the value of DISTRO_FEATURES is.  It should be something like this:


DISTRO_FEATURES="acl alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 ipv4 ipv6 libc-backtrace libc-big-macros libc-bsd libc-cxx-tests libc-catgets libc-charsets libc-crypt 					libc-crypt-ufc libc-db-aliases libc-envz libc-fcvt libc-fmtmsg libc-fstab libc-ftraverse 					libc-getlogin libc-idn libc-inet-anl libc-libm libc-locales libc-locale-code 					libc-memusage libc-nis libc-nsswitch libc-rcmd libc-rtld-debug libc-spawn libc-streams libc-sunrpc libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc libc-posix-wchar-io largefile opengl ptest multiarch wayland vulkan systemd pam api-documentation pulseaudio sysvinit bluez5 gobject-introspection-data ldconfig"

Can you verify that DISTRO_FEATURES is set correctly?
Comment 3 mikko.rapeli 2018-01-16 11:13:57 UTC
Thanks, this was indeed the case. 'DISTRO_FEATURES += "systemd"' in local conf was wiping it.

DISTRO_FEATURES of 'bitbake glibc-locale -e' with and without the append:

DISTRO_FEATURES=" systemd pulseaudio sysvinit bluez5 gobject-introspection-data ldconfig"

vs.

DISTRO_FEATURES="acl alsa argp bluetooth ext2 irda largefile pcmcia usbgadget usbhost wifi xattr nfs zeroconf pci 3g nfc x11 ipv4 ipv6 libc-backtrace libc-big-macros libc-bsd libc-cxx-tests libc-catgets libc-charsets libc-crypt                                     libc-crypt-ufc libc-db-aliases libc-envz libc-fcvt libc-fmtmsg libc-fstab libc-ftraverse                                        libc-getlogin libc-idn libc-inet-anl libc-libm libc-locales libc-locale-code                                    libc-memusage libc-nis libc-nsswitch libc-rcmd libc-rtld-debug libc-spawn libc-streams libc-sunrpc                                      libc-utmp libc-utmpx libc-wordexp libc-posix-clang-wchar libc-posix-regexp libc-posix-regexp-glibc                                      libc-posix-wchar-io largefile opengl ptest multiarch wayland vulkan pulseaudio sysvinit bluez5 gobject-introspection-data ldconfig"

I guess glibc recipe only builds correctly with libc-locales in DISTRO_FEATURES.