summaryrefslogtreecommitdiffstats
path: root/meta/recipes-core
Commit message (Collapse)AuthorAgeFilesLines
* uninative: Add uninative - a way of reusing native/cross over multiple distrosRichard Purdie2014-09-231-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These patches are the start of a new idea, a way of allowing a single set of cross/native sstate to work over mutliple distros, even old ones. The assumption is that our own C library is basically up to date. We build and share a small tarball (~2MB) of a prebuilt copy of this along with a patchelf binary (which sadly is C++ based so libstdc++ is in there). This tarball can be generated from our usual SDK generation process through the supplied recipe, uninative-tarball. At the start of the build, if its not been extracted into the sysroot, this tarball is extracted there and configured for the specified path. When we install binaries from a "uninative" sstate feed, we change the dynamic loader to point at this dynamic loader and C librbary. This works exactly the same way as our relocatable SDK does. The only real difference is a switch to use patchelf, so even if the interpreter section is too small, it can still adjust the binary. Right now this implements a working proof of concept. If you build the tarball and place it at the head of the tree (in COREBASE), you can run a build from sstate and successfully build packages and construct images. There is some improvement needed, its hardcoded for x86_64 right now, its trivial to add 32 bit support too. The tarball isn't fetched right now, there is just a harcoded path assumption and there is no error handling. I haven't figured out the best delivery mechanism for that yet. BuildStarted is probably not the right event to hook on either. I've merged this to illustrate how with a small change, we might make the native/cross sstate much more reusable and hence improve the accessibility of lower overhead builds. With this change, its possible the Yocto Project may be able to support a configured sstate mirror out the box. This also has positive implications for our developer workflow/SDK improvements. (From OE-Core rev: e66c96ae9c7ba21ebd04a4807390f0031238a85a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* populate_sdk_base/meta-environment: Remove overlap from the twoRichard Purdie2014-09-221-7/+28
| | | | | | | | | | | | | | | | | | | | Currently we have the horrible situation where meta-environment packages the toolchain environment files and they get included in the SDK but are broken, then, the SDK code overwrites them with good versions. This is suboptimal. This change fixes the code in meta-environment to create working files and adds in the multilib support from populate_sdk_base, then we remove the code in that base bbclass and rely on the packages being installed if/as/when needed. This removes the duplication and the broken versions of the files, hopefully making all well. [YOCTO #6608] [YOCTO #6613] (From OE-Core rev: 063355e5965439c7b3253d692d7ab0ed1189d123) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta-environment: Fix TARGET_OS problem for ppcRichard Purdie2014-09-221-1/+2
| | | | | | | | | | | | | | | | Due to the use of the cross-canadian inherit, TARGET_OS can be reset to values other than the correct one, leading to generation of the wrong files. By expanding REAL_MULTIMACH_TARGET_SYS before the inherit, the correct OS value is preserved and we generate the right environment files. [YOCTO #6608] [YOCTO #6613] (From OE-Core rev: ae265973c96ff4b8b5580436647fc361490e134c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* zlib: obey LDFLAGS for testsChristopher Larson2014-09-222-0/+46
| | | | | | | (From OE-Core rev: c91d9153d5dc6750d1f4c7b3be58da0a1248245b) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* build-appliance-image: remove hardwired pathCristian Iorga2014-09-161-1/+1
| | | | | | | | | | | | | Remove wrong absolute hardwired path for the VM disk image. Fixes [YOCTO #6728]. (From OE-Core rev: f8a9b81192f8846937d85c7189018e35c860f7bd) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: fix to use ${libdir} for librariesChen Qi2014-09-161-2/+2
| | | | | | | | | | | We need to use ${libdir} instead of ${exec_prefix}/lib for libraries. Otherwise, we would meet do_install errors if multilib is enabled. (From OE-Core rev: 6beeccb81416b0a7af6a4b19cb641f0d66a7198a) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* dropbear: add pam modules dependenciesWenzong Fan2014-09-161-0/+7
| | | | | | | | | | | | | | | | | | If pam distro feature enabled, dropbear will need below pam rpms to work: * libpam-runtime * pam-plugin-deny * pam-plugin-permit * pam-plugin-unix Just add the runtime dependencies explicitly. (From OE-Core rev: dfbeb663e99f3280d055ec04454353f2082ced03) Signed-off-by: Wenzong Fan <wenzong.fan@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* build-appliance-image: upgraded VMware machine configCristian Iorga2014-09-112-33/+27
| | | | | | | | | | | | | | | | | | | Build Appliance VMware configuration has been modernized: - Default disk is a SATA one; - CDROM and Floppy drives removed, no real use; - 3D acceleration not really present, removed; This solves a warning that VMware Player/Workstation was displaying at boot. - IDE disk removed. - guestOS has been set to a 64bits Linux. Fixes [YOCTO #6680]. (From OE-Core rev: be5b17b7f08f2c798f2dddcd15d5481cef2dc768) Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* packagegroup-self-hosted: move graphics packages to graphics groupJackie Huang2014-09-101-5/+5
| | | | | | | | | | | | | | | | | | The following packages are gui based tools: xdg-utils # A set of common interfaces for desktop leafpad # A GTK+ text editor used in Build Appliance midori # A web browser used in Build Appliance pcmanfm # PCManFm file manager used in Build Appliance vte # Virtual terminal emulator GTK+ widget library Move them to packagegroup-self-hosted-graphics so that we can make a graphics free self-hosted image by excluding the packagegroup-self-hosted-graphics. (From OE-Core rev: bb7d081ccb5a352d3089b6b30ab740e62c05e791) Signed-off-by: Jackie Huang <jackie.huang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Incremental bump to 2.20 release branchKhem Raj2014-09-103-50/+4
| | | | | | | | | | | Now that glibc 2.20 has been released. We switch to use release branch and remove the already applied patch (From OE-Core rev: 70bfccd8e13af712381b4feea3ef882369951264) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: disable resolved and networkdRoss Burton2014-09-101-0/+2
| | | | | | | | | | These two services are fairly immature and need careful integration into the rest of the system, so disable them for now. (From OE-Core rev: 23efb1755c3074e17c547f9b9fd13564cc6d8566) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glib-2.0: fix mount detectionMarius Avram2014-09-102-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | Currently a USB stick gets mounted on /run/media/sdX, where X is the letter corresponding to a certain drive. In older builds of core-image-sato it got mounted in /media/sdX. This change made the drives to not be displayed in graphical applications which use glib-2.0 such as the File Manager (pcmanfm). The reason is that the gio component of glib-2.0 which handles mounts contains a function which determines if a mount is worthy to be displayed in the UI or not. The function is called g_unix_mount_guess_should_display(). It expects a drive to be mounted in /run/media/<username>/sdX, but in the current build the username part is missing in case a root user is authenticated in the system. The easiest solution is to allow the display of drives mounted in the path used by the current configuration and that is /run/media/sdX. [YOCTO #6492] (From OE-Core rev: da9bbcd2233057a0529005b9b2cc34aff65bc6e2) Signed-off-by: Marius Avram <marius.avram@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Adding RRECOMMENDS for os-releaseSujith H2014-09-101-1/+1
| | | | | | | | | | | | | | Systemd depends on the os-release hence adding RRECOMMENDS for the systemd package. [ RB - updated for 216 ] (From OE-Core rev: 003d16fbd54f59422aab917b8f3bf2aec4ab50b6) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Sujith H <Sujith_Haridasan@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* os-release: Adding a new recipe for operating system identificationSujith H2014-09-101-0/+36
| | | | | | | | | | | | | | | | | | | The /etc/os-release will have the operating system identification data. Tested on target with systemd enabled. Here is the sample file looks in the file: ID=poky-ivi-systemd NAME=Yocto GENIVI Baseline (Poky/meta-ivi) VERSION=6.0+snapshot-20140721 (daisy) VERSION_ID=6.0+snapshot-20140721 PRETTY_NAME=Yocto GENIVI Baseline (Poky/meta-ivi) 6.0+snapshot-20140721 (daisy) (From OE-Core rev: 8a12350e00b5443a24f3d6c7693fdde9fcb7319f) Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Sujith H <Sujith_Haridasan@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: enable forwarding messages to syslog daemonChen Qi2014-09-031-0/+3
| | | | | | | | | | | In systemd_216, journald by default doesn't forward messages to syslog daemon. This breaks the oeqa testing cases. So we enable forwarding the messages for now. (From OE-Core rev: 67ddca4a5533328ff95ab61610b6a1db24f57e35) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* psplash: mask psplash in case of systemdChen Qi2014-09-031-0/+10
| | | | | | | | | | | We need to prevent the psplash init script from running via systemd because the script is supposed to be used by sysvinit system and it doesn't have any real effect in a systemd based system. (From OE-Core rev: 2e847db3ac3333a68b721b11624f4f515bda7ccf) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* initscripts: mask several init scriptsChen Qi2014-09-031-0/+4
| | | | | | | | | | | We now support executing scripts under /etc/rcS.d. So we need to mask several more init scripts here to prevent them from running at boot time. (From OE-Core rev: c8f9527f18e5dd813c0330ba409875d34c36f6ab) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* packagegroup-core-boot: conditionally rdepend on VIRTUAL-RUNTIME_initscriptsChen Qi2014-09-031-1/+1
| | | | | | | | | | | | | | | | If we are building a systemd image with 'sysvinit' not in DISTRO_FEATURES, the initscripts should not be installed into the image, as they are useless. What's more, we as now support executing scripts under /etc/rcS.d, the boot time will be increased by these scripts as the systemd will try to translate them into temporary service files. These init scritps are actually needed only when 'sysvinit' is in DISTRO_FEATURES. (From OE-Core rev: 74b931909e58fc581bb52c1af1f3ae26602980f3) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: add support for executing scripts under /etc/rcS.dChen Qi2014-09-032-0/+139
| | | | | | | | | | | | | | This patch adds support for systemd to execute scripts under /etc/rcS.d. To be compitable, all services translated from /etc/rcS.d/ scripts would run before services translated from /etc/rcN.d scripts. [YOCTO #5159] (From OE-Core rev: 90bb8e8f9bc2454590d230b209fc749ea7270b9e) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: add kbd-keymaps to RRECOMMENDS of systemd-vconsole-setupChen Qi2014-09-031-1/+1
| | | | | | | | | | systemd-vconsole-setup.service not only configures font but also keymaps. (From OE-Core rev: ffcd4bf2198171c9663f72d4499d5d55c29abf40) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: make runlevel work in non-runlevel targetsChen Qi2014-09-031-0/+12
| | | | | | | | | | | | | | | | | Previously, after booting into the targets like multi-user.target or graphical.target, the output of `runlevel' command is 'unknown'. This is confusing for users. Normally, we would expect mutli-user.target would have a `runlevel' output of 'N 3'. This is the behaviour of Fedora20. This patch installs symlinks for systemd-update-utmp-runlevel.service in do_install task to fix the above problem. (From OE-Core rev: cb7e692ec895ff9c15966faf29c9a84c0e78cdf5) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: add PACKAGECONFIG for 'journal-upload'Chen Qi2014-09-031-0/+1
| | | | | | | | | | Add PACKAGECONFIG for 'journal-upload' and disable it by default. Once enabled, it will add 'curl' to its dependency. (From OE-Core rev: b52c028252270c7bddc71554089fb184e52c5870) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: upgrade to 216Chen Qi2014-09-035-125/+38
| | | | | | | | | | | | | | | | | | | | | | | | | Upgrade systemd from 213 to 216. systemd-older-kernel.patch is removed as it's fixed in 216. 0001-uClibc-doesn-t-implement-pwritev-preadv.patch is removed because the file it patches has been removed from the project. 0001-util-Including-missing.h-to-get-MAX_HANDLE_SZ.patch is removed because it has been merged. 0001-missing.h-add-fake-__NR_memfd_create-for-MIPS.patch is backported to fix compilation error for mips. Below are the required kernel versions for systemd 216. Linux kernel >= 3.0 Linux kernel >= 3.3 for loop device partition support features with nspawn Linux kernel >= 3.8 for Smack support (From OE-Core rev: 58c432b2725ad8b78d02cb91a6ab405d425c01cc) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* recipes: Remove references to eglibcKhem Raj2014-09-013-15/+15
| | | | | | | | | change use of eglibc related variabled to glibc equivalents (From OE-Core rev: fd15d6e0c8da75951a91d4467eda23c229b1026d) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glibc: Migrate eglibc 2.19 -> glibc 2.20Khem Raj2014-09-0178-2018/+20107
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - This is a big swoop change where we switch to using glibc - option-groups are forward ported - cross-localedef is extracted out from eglibc and hosted at github.com/kraj/localedef, its used for cross-localedef recipe - Other non ported patches from eglibc are forward ported ppc8xx cache line workaround SH fpcr values dynamic resolver installing PIC archives is there but is not applied libc header bootstrap - Delete eglibc recipes we moved back to using glibc now - Fix ppc/e500 build - Fix crypt module build when options are used - Fix fnmatch build when options OPTION_EGLIBC_LOCALE_CODE is unset HAVE_MBSTATE_T and HAVE_MBSRTOWCS should be defined conditionally based upon OPTION_EGLIBC_LOCALE_CODE being set/unset - Move the ports/ patches to relevant files now that ports is gone (From OE-Core rev: 1027c535ea753e63d9ffe469a423e04467cf8940) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: add PACKAGECONFIG for 'elfutils'Chen Qi2014-08-311-0/+1
| | | | | | | | | | Add PACKAGECONFIG for 'elfutils'. This also fixes a build-deps QA warning about libdw. (From OE-Core rev: 559bacdb178d3f4846de86f90c9428ee662b471a) Signed-off-by: Chen Qi <Qi.Chen@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildtools-tarball: export GIT_SSL_CAINFOFahad Usman2014-08-291-0/+2
| | | | | | | | | | export GIT_SSL_CAINFO so git can find the certs (From OE-Core rev: 260ea7b85ecacf2fcd4d09fa2f602d3e4368ef69) Signed-off-by: Fahad Usman <fahad.usman@gmail.com> Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* buildtools-tarball: include nativesdk-ca-certificatesFahad Usman2014-08-291-0/+1
| | | | | | | | | | | | | nativesdk-ca-certificates is needed in order to support oe/yocto builds with buildtools-tarball on old hosts, as we provide libcurl, and that needs to be able to find the certs, and there's no standard path or bundle path, so we can't rely on the host. (From OE-Core rev: 057954bcc4baf9194968169591537cd7584f8bcb) Signed-off-by: Fahad Usman <fahad.usman@gmail.com> Signed-off-by: Christopher Larson <kergoth@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* valgrind/oprofile/systemd: no bashism in run-ptestRobert Yang2014-08-281-0/+2
| | | | | | | | | | There is no bashism in the scripts, so use /bin/sh, and add /bin/sh interpreter for systemd's run-ptest. (From OE-Core rev: 62d455f89fb1d2c22cf987bdbb56a55e6d031ce0) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: fix RDEPNEDS for the test related pkgsRobert Yang2014-08-282-1/+3
| | | | | | | | | Add bash, python or perl to the ptest pkgs to fix the RDEPENDS issues. (From OE-Core rev: d081a85fc76e2b7a469c6c70175ecf7aed9de053) Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* systemd: Support building on uclibcKhem Raj2014-08-272-0/+30
| | | | | | | | | | include missing.h to get MAX_HANDLE_SZ which is not defined in uclibc. (From OE-Core rev: fa2a90ca632d10fe1a14098c3f4fcacc7cea6ac5) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uclibc: Support systemd buildsKhem Raj2014-08-273-0/+110
| | | | | | | | | | Systemd needs some extra defines e.g. ADJ_NANO and IPTOS_CLASS_CS6 (From OE-Core rev: 7562021eef5b7585122c92db8b686808ebe7d85e) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* uclibc: Upgrade to tip of masterKhem Raj2014-08-275-581/+6
| | | | | | | | | | Adjust mips to cater for new mips32r2 defaulttune Remove upstreamed patches (From OE-Core rev: 8003ce0df3f6297391a709cc9720adffbd8fbd0f) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxml2: Explicitly enable zlib supportOtavio Salvador2014-08-251-3/+4
| | | | | | | | | | | The zlib support is a must if you are using RPM backend. So this explicitly enable it and adds a comment in the recipe to avoid its removal by mistake. (From OE-Core rev: 7d056397ab9912316064db850aae05aacabc726c) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* packagegroup: Move inherit packagegroup to after PACKAGE_ARCHRichard Purdie2014-08-254-11/+11
| | | | | | | | This means these classes now avoid the allarch inherit entirely. (From OE-Core rev: a56aed2e6e1b73bffd2bf82145fe48b82fde9292) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* fixupRichard Purdie2014-08-231-0/+65
| | | | | | (From OE-Core rev: 20992e8a00c585ab6b0611ca23ccd57e2b86b727) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* busybox : fix do_compile failed on qemumips when DEBUG_BUILD (ICE)Hongxu Jia2014-08-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Build busybox on mips with -g -O, there is a ice failure: ... shell/ash.c:8758:1: internal compiler error: in dwarf2out_var_location, at dwarf2out.c:21264 ... Please submit a full bug report, with preprocessed source if appropriate. See <http://gcc.gnu.org/bugs.html> for instructions. {standard input}: Assembler messages: {standard input}: Warning: missing .end at end of assembly {standard input}: Error: open CFI at the end of file; missing .cfi_endproc directive ... The following line caused the ice failure on mips: ... void evaltreenr(union node *, int) __attribute__ ((alias("evaltree"),__noreturn__)); ... So remove evaltreenr which was a alias of evaltree, and use evaltree to instead. [YOCTO #6625] (From OE-Core rev: e9e2884a29e95703c5b1a2fffe5e6febfa77b5cd) Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: parametrize sysconf file pathsRichard Tollerton2014-08-232-6/+10
| | | | | | | | | | | | The udev-cache facility uses files that represent system states, to ensure that the cache tarball is valid to apply. These paths were hardcoded in several places; collect them into SYSCONF_CACHED and SYSCONF_TMP. (From OE-Core rev: f4fcb237da0d1013005e9a0bb2381cfeb4c5316c) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: Don't ignore error messages from cache extractRichard Tollerton2014-08-231-1/+1
| | | | | | | | | | | | | Previous changes should obviate all known spurious errors coming out of tar. Since real extraction failures can and will occur, stop redirecting stdout/stderr to /dev/null. Take this opportunity to also remove an unnecessary subshell. (From OE-Core rev: 09089962be353280201ba3899fd5ef9cc3c0ba32) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: omit sockets and filesystems mounted under /devRichard Tollerton2014-08-231-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Archiving sockets causes tar to report an error and return a nonzero exit status. Archiving a mounted filesystem is harmless, but may greatly bloat the size of the cache tarball, and wastes time on boot. To fix these issues, use `find` to only include the files we want, which are the file types that udev will create (block/char devices and symlinks) that are on the same filesystem as /dev. While we're at it, remove a subshell by archiving /dev as an absolute path. However, `tar` will complain about stripping the leading slash on stderr. To inhibit this, `cut` out the leading slash. An alternative solution is to use `tar --exclude`, but that is modestly more brittle, since we'd need to explicitly list every socket and filesystem to exclude. Note that `tar --one-file-system` is GNU-specific, and tar implementations generally have nothing equivalent to `find -type`. If using busybox `find`, this change requires CONFIG_FEATURE_FIND_TYPE=y and CONFIG_FEATURE_FIND_XDEV=y. If using busybox `tar`, this change requires CONFIG_FEATURE_TAR_FROM=y. (From OE-Core rev: e89df123e2ec516ae61763eab3c9e78e067e28d5) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: strip timestamps on extractRichard Tollerton2014-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | Under normal udev operation, device nodes are obviously timestamped based on the system time at current boot. However, when using udev-cache, they are timestamped from a previous boot. The existence of machines lacking RTCs makes this more than a cosmetic issue: if the current time is set further on in the boot, so that the system time is still 1970 by the time the cache is extracted, tar will print a timestamp warning for every extracted file (potentially hundreds of them). To fix, use -m on extract. If using busybox `tar`, this commit requires CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y. (From OE-Core rev: b31f8f1f053cdfa9428e3f667c05e7e2c600061e) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* busybox: enable `tar -m`Richard Tollerton2014-08-231-1/+1
| | | | | | | | | | | CONFIG_FEATURE_TAR_NOPRESERVE_TIME=y is needed for the commit "udev-cache: strip timestamps on extract". Enabling this flag increases the size of busybox by 0 bytes on x86. (From OE-Core rev: 11a772b3297ef36f3ebc4b67c9477022352d1c55) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: choose a more descriptive cache filenameRichard Tollerton2014-08-231-1/+1
| | | | | | | | | | | | | "/etc/dev.tar.gz" doesn't adequately imply that udev-cache maintains it. Instead, call it "/etc/udev-cache.tar.gz". (From OE-Core rev: b33c678e2a5d42138a15b69802c5ddd109cb3b55) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Ben Shelton <ben.shelton@ni.com> Acked-by: Gratian Crisan <gratian.crisan@ni.com> Acked-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: Compress the cacheRichard Tollerton2014-08-232-2/+3
| | | | | | | | | | | | $DEVCACHE is observed to be 100k uncompressed; compressing it reduces its size to ~5k. But compress it outside of `tar` so that archival operation takes as little time as possible, to minimize the risk of devices being created/removed during execution. (From OE-Core rev: 571df6ddba1caa6805f7c96cd592eea399c2aee2) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev-cache: Update cache tarball atomicallyRichard Tollerton2014-08-231-1/+3
| | | | | | | | | | | | | Overwriting the tarball in-place could cause a partial write, if the system stops at an inopportune time. This is mitigated by first writing to a temporary file, then moving that file on top of the final location. (From OE-Core rev: 5dbf43fe32a1cf259f9379a7d2c008260eabf3ac) Signed-off-by: Richard Tollerton <rich.tollerton@ni.com> Signed-off-by: Ben Shelton <ben.shelton@ni.com> Acked-by: Gratian Crisan <gratian.crisan@ni.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* packagegroup-core-tools-debug: Drop MACHINE_ARCH as PACKAGE_ARCHRichard Purdie2014-08-231-3/+1
| | | | | | | | There is nothing machine specific about this recipe. (From OE-Core rev: 07848cee072e62969d19b2fc9627783bcb016bbe) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* udev: fix /var/volatile/tmp permissionsRiku Voipio2014-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Mariadb postinstall will fail with: ERROR: 1 Can't create/write to file '/tmp/#sql_a2a_0.MAI' (Errcode: 13) 140814 8:14:06 [ERROR] Aborting /tmp is a link to /var/volatile/tmp, set as: drwxr-xr-x 3 root root 60 Aug 14 08:07 . populate-volatiles.sh does not create the directory or set permissions, because it already exists: Checking for -/var/volatile/tmp-. Creating directory -/var/volatile/tmp-. Target already exists. Skipping. Traced the creation to the initfile in udev. Create with -m 1755 to be sure. With this patch applied, mysql postinst succeeds and creates the neccesary user tables. (From OE-Core rev: 5743c7632ac9c33051f6fca60f5507d3808e8e3a) Signed-off-by: Riku Voipio <riku.voipio@linaro.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* fix up eglibc-utils description to match what is actually includedBob Cochran2014-08-231-1/+1
| | | | | | | | | | | iconf must have been a typo for iconv rpcinfo is found elsewhere (currently rpcbind) and not eglibc-utils - replace its mention with rpcgen (From OE-Core rev: ae96e831e62e37a018cc924d38a338ffc05ab4da) Signed-off-by: Bob Cochran <openembedded@mindchasers.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* glib-2.0: Add missing nativesdk-gettext DEPENDSRichard Purdie2014-08-171-1/+1
| | | | | | | | | This override overrides the gettext class additions so we need to add back the dependency manually. (From OE-Core rev: 1f7d22ce9322b960c89afd3673ace9f0d937b2a6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libxml2: port AM_PATH_XML2 to use pkg-configRoss Burton2014-08-152-0/+205
| | | | | | | | | | Upstream AM_PATH_XML2 uses xml2-config which we disable, so port this macro to use pkg-config. (From OE-Core rev: 3ea77e69a839572a948ff6f1e51d3ca789ad8eed) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
OpenPOWER on IntegriCloud