Richard Purdie [Thu, 7 Feb 2013 13:32:55 +0000 (13:32 +0000)]
image.bbclass: Add MLPREFIX to DEPENDS
Add MLPREFIX to DEPENDS to ensure the correct qemuwrapper is dependended upon. Its searched
for in PATH so we need to do this to ensure the correct version is present.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 7 Feb 2013 12:40:35 +0000 (12:40 +0000)]
qemuwrapper: Don't use STAGING_BINDIR_CROSS directly
We need the files to be tracked by sstate so we need to jump through
some hoops to ensure this happens. The cross bindir directory
isn't staged automatically so we need to handle this outselves.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 6 Feb 2013 23:34:52 +0000 (23:34 +0000)]
bitbake.conf: Update hashconfig after BB_ORIGENV changes
We should ignore BB_ORIGENV from the hash for the config data. There
are also a number of variables which no longer make it into the data
store so we can drop these from the hash whitelist.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Wed, 6 Feb 2013 00:56:14 +0000 (01:56 +0100)]
package.bbclass: return list of packages created in do_split_packages
* sometimes it's useful to do something with packages created
by do_split_packages later in do_package_prepend, e.g. in:
http://lists.linuxtogo.org/pipermail/openembedded-devel/2013-February/043824.html
I have .bbclass which adds some postinst, postrm and RDEPENDS,
but ttf-mplus is using do_split_packages to create those packages
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 17:31:30 +0000 (17:31 +0000)]
package.bbclass: Add PACKAGESPLITFUNCS variable
Prepending to populate_packages is rather ugly and means its hard to trace
errors and also profiling informaiton is summed together in one function.
This patch starts to split out the prepends to become separate functions
to avoid these issues. This is generally a neater way to write functions
than prepending to where there can sometimes be variable scope issues
and we've been bitten by whitespace issues in the past.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 17:25:30 +0000 (17:25 +0000)]
package.bbclass: Various minor performance tweaks
* Call getVar outside the loop
* Drop unneeded PATH export (bitbake does this already)
* Drop unused variable
* Simplify if statement nesting
* Simplify variable expandion to a getVar call (expand would just call getVar)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 17:21:40 +0000 (17:21 +0000)]
package.bbclass: Make use of cleandirs and dirs function flags
We can use the cleandirs and dirs flags for the fuctions to handle
directory cleaning and creation at the bitbake level rather than
using these calls within the functions
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 17:17:30 +0000 (17:17 +0000)]
kernel.bbclass: Improve populate_packages_prepend
Small performance tweaks for populate_packages_prepend:
* Compile the regexps once at the start
* Don't keep importing a module which is already imported
* No need to check PKG is set, we'd have failed long before now if it wasn't
* Don't export PATH, bitbake takes care of this at the task level
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 17:11:58 +0000 (17:11 +0000)]
package.bbclass: Rewrite split_and_strip_files
The split_and_strip_files funciton was hard to follow and its usage of prefixes
to strings was unusual. This rewrites it to use a list of hardlinks, symlinks and
elffiles where each list is iterated over at the correct point.
This means we can avoid creating dandling symlinks for example so we can simply
delete the cleanup code for this.
The isfile() check is also removed which gives a significant improvement in speed.
Its uneeded since os.walk will have already checked things in files are files.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 16:54:00 +0000 (16:54 +0000)]
insane.bbclass: Add pkgvarcheck to check for suboptimal usages of variables
Check through the variables:
'RDEPENDS', 'RRECOMMENDS', 'FILES', 'pkg_preinst', 'pkg_postinst', 'pkg_prerm', 'pkg_postrm'
and if there is a variable set which isn't package specific, inform the user
of this.
Using these variables without a package suffix is bad practise and complicates
dependencies of packages unnecessarily as well as complicates the code. Lets
convert the remaining issues and then we can take the small performance gain.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Sun, 3 Feb 2013 17:34:54 +0000 (17:34 +0000)]
sstate/path.py: Add copyhardlinktree() function and use for performance optimisation
Add a function which copys a tree as a set of hardlinks to the original
files, then use this in sstate to reduce some of the overhead of sstate
package creation since the file isn't actually copied.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Laurentiu Palcu [Mon, 4 Feb 2013 09:26:05 +0000 (11:26 +0200)]
base-files: remove /var/cache from volatiles
Having the cache in tmpfs implies cache regeneration after every reboot.
For an embedded device this might not be very efficient. So, it is
better for the cache to be persistent between reboots.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
- netbase should only include etc-rpc, etc-protocols, etc-services
and the hosts file
- the init script/configuration files should be in another package
(init-ifupdown)
[YOCTO #2486]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Chen Qi [Tue, 29 Jan 2013 04:24:43 +0000 (12:24 +0800)]
initscripts: add read-only-rootfs-hook.sh script
Add read-only-rootfs-hook.sh script to support a read-only rootfs.
This script makes a union mount of /var/lib and /var/volatile/lib,
making /var/lib directory writable.
Chen Qi [Thu, 24 Jan 2013 07:28:45 +0000 (15:28 +0800)]
initscripts: let populate-volatile.sh create the /tmp link
Previously, the /tmp link (/tmp -> /var/tmp) was created by the
bootmisc.sh script. So in case of a read-only rootfs, this symlink
would not be created correctly.
The populate-volatile.sh script is intended to handle all directories
and files related to volatile storage, so we should let it create
the /tmp link.
In addition, because of the improments of populate-volatile.sh, the data
loss problem of bug#3404 is also resolved by this patch.
Chen Qi [Sun, 6 Jan 2013 09:02:45 +0000 (17:02 +0800)]
sysvinit: add ROOTFS_READ_ONLY variable to rcS-default
This variable indicates whether the rootfs is intended to be read-only
or not. Changing this value from 'no' to 'yes' on a currently running
system with read-write rootfs and rebooting will give the user a working
system with read-only rootfs.
However, it is not suggested to change its value. Normally, if a read-only
rootfs is required, we should build an image with 'read-only-rootfs' image
feature.
Bruce Ashfield [Mon, 4 Feb 2013 19:05:07 +0000 (14:05 -0500)]
linux-yocto: KERNEL_FEATURES should reference full scc files
Some existing KERNEL_FEATURE references use a shorcut notation, but mapping
these shortcuts to actual .scc files in the tree are not obvious. So we clarify
where they are found by referencing the full .scc filename in the KERNEL_FEATURE
addtions.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Bruce Ashfield [Mon, 4 Feb 2013 19:13:37 +0000 (14:13 -0500)]
linux-yocto/dev: linux-yocto development tree tracking recipe
The linux-yocto-dev recipe uses the upstream tracking linux-yocto-dev repository.
Since this tree is frequently updated, and periodically rebuilt, AUTOREV is used
to track its contents.
This recipe is just like other linux-yocto variants, with the only difference
being that to avoid network access during initial parsing, static SRCREVs are
provided and overridden if the preferred kernel provider is linux-yocto-dev.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Laurentiu Palcu [Thu, 31 Jan 2013 08:27:22 +0000 (10:27 +0200)]
qemu.bbclass: return qemuwrapper instead of qemu-allarch
When qemu bbclass is inherited from a recipe that is not architecture
dependent, qemu_run_binary will return "qemu-allarch". However this
binary does not exist. Instead, return "qemuwrapper" which will, in
turn, execute the right binary for the target the image was built for.
Laurentiu Palcu [Thu, 31 Jan 2013 07:59:10 +0000 (09:59 +0200)]
add fontcache.bbclass
All font packages should inherit this class in order to generate the
proper postinst/postrm scriptlets.
The scriptlets will actually create a host intercept hook that will be
executed at the end, at do_rootfs time, after all packages have been
installed. This is good when there are many font packages.
Roy.Li [Sat, 2 Feb 2013 08:18:22 +0000 (16:18 +0800)]
tcp-wrappers: remove size_t.patch
1. it introduces bug in 64bit big endian process with __GLIBC__, At that
condition, size_t is 8byte, and the third parameter of getpeername is
socklen_t which is 4 byte. As a result, getpeername sees third parameter
is always 0, and can not return right value.
The similar program is below, the output is 0, not 9 on PPC64 cpu
main()
{
long aa=9;
printf("%d \n", *((int *)&aa));
}
2. The correct fix is to change getpeername/getsockopt/recvfrom.. last
parameter type from int to socklen_t, but to simplify, we can remove
size_t.patch, since the size of int is same as socklen_t in 32bit/64bit
cpu. and size_t.patch only change three places, there are other places
which uses int, and work well.
2. Fedora, redhat el4 do not use this patch, but Debian uses it, does not
find why this patch is written, maybe it is gcc legency issue which does
not exist.
Martin Jansa [Mon, 4 Feb 2013 22:06:52 +0000 (23:06 +0100)]
ipk: use OPKGLIBDIR in all places
* it's not recommended to change this value, because it breaks upgrade path on target
(all old u-a alternatives are forgot in old OPKGLIBDIR value
* but make it consistent, so if someone really want to change that, then
setting OPKGLIBDIR_distro in distro.conf would be enough
* without this there were at least 4 places to change:
rootfs_ipk: opkglibdir variable (notice that I've removed /opkg from it to correspond
with EXTRA_OECONF option used in opkg recipes
package_ipk: ${target_rootfs}${localstatedir}/lib/opkg/ hardcoded in
package_install_internal_ipk
opkg-collateral: value in lists file
opkg: EXTRA_OECONF for all 3 classes, FILES_libopkg, do_install
* validated with buildhistory that without OPKGLIBDIR explicitly set the
output is the same and that after setting
OPKGLIBDIR_forcevariable := "${libdir}"
everything including empty directory from package_ipk is moved to
libdir
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Paul Eggleton [Tue, 5 Feb 2013 15:55:46 +0000 (15:55 +0000)]
qmmp: update to 0.6.6 and fix
* Update to 0.6.6
* Fix compilation failure due to unconditional call to
QApplication::commitData()
* Disable /usr/local host paths to avoid compilation warnings
* Force use of the cmake configure instead of qmake as the latter is not
dynamic with Qmmp and doesn't let you disable certain dependencies
(e.g. enca)
* Add libsndfile1, libsamplerate0 and curl to DEPENDS since their use
will be non-deterministic otherwise
* Explicitly disable library-requiring options that we don't have
available in OE-Core so that they don't get used if they happen to be
in the sysroot
* Update LIC_FILES_CHKSUM since there were cosmetic changes to the
license file (mostly reformatting and change of references to LGPL
from "Library" to "Lesser".)
Fixes [YOCTO #3822].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Tom Zanussi [Tue, 5 Feb 2013 14:26:36 +0000 (08:26 -0600)]
crosstap: handle hyphenated x86_64 target arch
systemtap_target_arch() should also translate x86-64 (hyphenated) into
x86_64 for the -a param. Failing to do that causes systemtap to see
an architecture mismatch and create a cloned session with a bogusly
synthesized build directory path, and fails to compile the probe.
Fixes [YOCTO #3756]
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fix the following warning:
WARNING: QA Issue: lib32-run-postinsts: Files/directories were installed but not shipped
/usr/share/lib32-run-postinsts
/usr/share/lib32-run-postinsts/run-postinsts.awk
[YOCTO #3438]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
- use CUPS_SERVERBIN to configure the CUPS directory
- the removed variables are not used anymore
Fix the following warning:
WARNING: QA Issue: foomatic-filters: Files/directories were installed but not shipped
/usr/lib64
/usr/lib64/cups
/usr/lib64/cups/filter
/usr/lib64/cups/backend
/usr/lib64/cups/filter/foomatic-rip
/usr/lib64/cups/backend/beh
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fix the following warning:
WARNING: QA Issue: lib32-syslinux: Files/directories were installed but not shipped
/usr/lib
/usr/share/syslinux
/usr/share/syslinux/com32
/usr/share/syslinux/com32/libcom32gpl.a
/usr/share/syslinux/com32/libcom32.a
...
[YOCTO #3438]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fix the following warning:
WARNING: QA Issue: lib32-sgml-common: Files/directories were installed but not shipped
/etc
/etc/sgml
/etc/sgml/sgml.conf
/usr/bin
/usr/bin/install-catalog
/usr/bin/sgmlwhich
[YOCTO #3438]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andy Dalton [Mon, 4 Feb 2013 15:21:25 +0000 (10:21 -0500)]
v86d: Update SRC_URI to point to new file location.
The existing SRC_URI pointed to a Gentoo developer's private web
space. It appears that that developer has retired and that his web
space is no longer active. I've updated the SRC_URI to point to a
location where the file can now be found.
Signed-off-by: Andy Dalton <a.spam.filter@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>