Having a generic word like "all" as an override is dangerous as this is an override
and can cause issues for function names like "sysroot_stage_all". This patch changes
it to "allarch" to help avoid this kind of problem. The field is only used in the
name of directories anyway.
(From OE-Core rev: 5d7d4e1ed9bedf2b6510796d76ea8f94739b9de2)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The existing PACKAGE_ARCH = "all" mechanism of sharing packages is problematic
with sstate since there are a variety of variables which have target specific
values and the sstate package therefore correctly changes signature depending
on the MACHINE setting.
This patch creates a new "allarch" class which sets:
PACKAGE_ARCH = "all"
(as per the existing convention)
INHIBIT_DEFAULT_DEPS = "1"
(since its not target specific and therefore can't depend on the cross
compiler or target libc)
TARGET_ARCH = "all"
TARGET_OS = "linux"
TARGET_CC_ARCH = "none"
(since these variables shouldn't change between the different packages and
target compiler flags shouldn't be getting used)
PACKAGE_EXTRA_ARCHS = ""
(since we shouldn't be depending on any architecture specific package architectures)
Not all PACKAGE_ARCH = "all" recipes can use this class since some run configure
checks on the compiler. This means they have target specific components and therefore
the "all" classification is incorrect.
(From OE-Core rev: 26e5e5feb695864b11e47e24017e254c28f14494)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently it's a symlink to killall5:
$ dpkg-deb -c sysvinit-pidof_2.88dsf-r1_armv7a.ipk | grep pidof
lrwxrwxrwx root/root 0 2011-05-27 11:05 ./bin/pidof.sysvinit -> /sbin/killall5
The point of the pidof subpackage was to have a pidof without needing sysvinit, this restores that behaviour.
(From OE-Core rev: 3490772a87eda8d86027d4150a7c1b94c9ee282a)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the current situation TARGET_ARCH will override MACHINE, which is counter intuitive since the machine is more specific than the arch.
The order is now pn-$PN} -> arch -> machine -> distro as the machine is a set of defaults and the distro is the ultimate policy.
'failfast' has been removed since it's not used anymore, just like 'local'
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
These two setting for dlopen is not correct. dlopen is not available in libc,
instead it is provided by libdl. so the setting should not be "yes" by default.
This fixes [YOCTO #736] [YOCTO #737]
Thanks Richard for pointing out the root cause.
CC: Richard Purdie <richard.purdie@linuxfoundation.org>
CC: Philip Balister <philip@balister.org>
CC: Koen Kooi <koen@dominion.thruhere.net>
(From OE-Core rev: 89d56fbbb5e628983bcaf328f714f577b55f4fe2)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Value of USE_PR_SERV is either "1" or "0" looking at
settings in bitbake.conf
USE_PR_SERV = "${@[1,0][(bb.data.getVar('PRSERV_HOST',d,1) is None) or (bb.data.getVar('PRSERV_PORT',d,1) is None)]}"
So we compare the strings
(From OE-Core rev: 5f6179324ac3956ad87123005bfcab4e8f30e67b)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This entry need to exist so that it can be manipulated later
to decide if uclibc is to be compiled in thumb mode or arm mode
(From OE-Core rev: e6f7e11f4ec40582d6343ec3a97f62cae1574344)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes two bugs. When populate_lic was hitting | it was going
into an infinite recursion of the node.
Also, some LICENSE fields may start with "(". We want to avoid
invalid python syntax here, so we strip out the whitespace.
(From OE-Core rev: 160621bd9679201e352cc80b22aa2f6e25827576)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a first pass at sane license parsing, using python
abstract syntax trees.
A few notes on this since ast is not generally used. I massage
the LICENSE field to be more pythonesque and then create an ast.
I then dump the ast and using a LicenseVisitor class, recurse
through the tree, looking for licenses. I then copy and link.
It's cleaner, allows for easier addition of logic and while it
takes slightly more CPU, it's also slightly faster in initial
small scale tests.
It doesn't recognize the '+' or '*' modifiers to the licenses yet
nor does it know what to do with bitors (|), since I'm not even
sure what to do with them.
(From OE-Core rev: 2a90a3a41978a5470962b315e007351b8e80820c)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I've cleaned up some odd license fields, fixed some license
names and corrected some incorrect licenses. LICENSE really needs
a pass through by the maintainers as some of the licensing is
incorrect.
Also, every license with Artistic should be gone through and noted as
which version of Artistic.
(From OE-Core rev: 4786ecdf7cd427089464dcb62579110d494e7cd7)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
I'm adding full common licenses to the common license directory.
These licenses are taken from the SPDX project or the OSI license
repository. They conform to the SPDX naming convention and will be
used by the new license.bbclass license parser in order to maintain
some sort of internal standard for license naming.
Going forward, we should have a bigger conversation about the LICENSE
field and standardizing that to conform to this naming standard.
(From OE-Core rev: acc260418a46dadd5598c53ad3491a21e8b2d6e8)
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use PKGE/PKGV/PKGR to build various package feed in tasks of pacakge_write_xxx.
(From OE-Core rev: c2872315905fcdf6e4bf11fe96e5ca62af3475f8)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
1. Added package_get_auto_pr to PACKAGEFUNCS to get the auto
incremented value(PRAUTO) from remote PR service.
2. use PKGV/PKGR for pkgdata which will be used by package_write_xxx.
3. Added supporting functions in prserv.bbclass.
(From OE-Core rev: b1f6120c04731d3d66f322ce550b0d223c118dab)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Added following variables for PR service:
USE_PR_SERV: flag of whether to use the network PR service
PRAUTOINX: search index for the network PR service
PKGE/PKGV/PKGR: epoch, version and revision used in package feed.
EXTENDPKGV: full package version string used in package relationships.
For the following recipes, replace EXTENDPV with EXTENDPKGV:
udev, xcb, xorg-proto, util-macros and linux-libc-headers
then removed the unused EXTENDPV and EXTENDPEVER variables
Users should use EXTENDPKGV instead for package feed generation.
(From OE-Core rev: ad00ad1d530074dc3a0f3376f96ad5a88a7b24e2)
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
While building for beagleboard with -j4 I ended up failures in
generating and checking xml files. This is a backport from upstream that
fixes the issue.
(From OE-Core rev: b56d984d59b5ea682f115b8ceeb04fbffe01f13c)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This will configure uclibc to be compiled in thumb/thumb2 mode
(From OE-Core rev: 77f93a2e1868a50d8d39d3efe621c530af32b450)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixes [YOCTO 1102]
Path variables are typically : delimited. White space is allowed in paths, so
is not a good choice for separating paths. Currently utils.bbclass performs the
following:
extrapaths = (bb.data.getVar("FILESEXTRAPATHS", d, True) or "").split()
This splits FILESEXTRAPATHS on whitespace. It later splits overrides on : and
reassembles them all together as : delimited.
There is only one user of FILESEXTRAPATHS in oe-core (qt4-tools-native, which
uses : anyway) and none in oe.
Change the split() in utils.bbclass to split on : instead of whitespace. When
splitting on a defined string (":") we must be careful to handle the empty
string case which returns [''] instead of [].
Tested building qt4-tools-native and core-image-minimal for surgarbay from
meta-intel with a couple extra layers with FILESEXTRAPATHS modifications added.
(From OE-Core rev: a6a892f520d22ef8020c98528d38ee08f6cda034)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Phil Blundell <pb@pbcl.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In order to facilitate reuse of the oe-core u-boot recipe, there needs to be
some assurance that the oe-core version won't change without a clear indicator
to people extending it.
By renaming the recipe to include its version string instead of "git", BSP
layers can extend a specific base version of u-boot, ie.
u-boot_2011.03.bbappend. When 2011.06 becomes available, we can create that file
without instantly breaking all the BSPs depending on oe-core version of the
recipe.
As a matter of policy I would recommend we not carry more than 2 versioned
u-boot recipess at any given time. This will provide BSP layers time to migrate
to the newer version, without cluttering oe-core with numerous stale versions of
u-boot. We may decide later to resurrect u-boot_git.bb as an AUTOREV recipe to
faciliate upstream development on u-boot in the oe environment.
(From OE-Core rev: f788d4b503ecc6600612746c4936dfb9393e237c)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Jason Kridner <jkridner@beagleboard.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
oe-core does not define any machines, so it does not make sense to
add machine specific information in the oe-core u-boot recipe and
infrastructure. Also note that COMPATIBLE_MACHINES is not easily extended due to
its regex syntax: "(machine_a|machine_b)", making it difficult to extend the
u-boot recipe in bbappend files without resorting to machine specific overrides.
Remove COMPATIBLE_MACHINES and the default UBOOT_MACHINE from the recipe and
insert some anonymous python into u-boot.inc to raise SkipPackage if
UBOOT_MACHINE is not set (this ensures 'world' still works for machines that
can't build u-boot).
UBOOT_MACHINE must now be specified in each machine config that requires u-boot.
This is an improvement over requiring machine specific overrides in every BSP
layer's u-boot_git.bbappend file. For example, a beagleboard machine config
currently contains:
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
With this change, it must now contain:
UBOOT_MACHINE = "omap3_beagle_config"
UBOOT_ENTRYPOINT = "0x80008000"
UBOOT_LOADADDRESS = "0x80008000"
So long as the SRC_URI in the base recipe can build a working u-boot for a given
machine, there is no need to create a u-boot_git.bbappend file. If additional
patches are deemed necessary, a BSP layer creates a u-boot_git.bbappend file and
extends the SRC_URI to include general or machine specific backports.
Note: I used bb.note() instead of bb.debug() to ensure the message at least
makes it to the console. From what I could gather, bb.debug() doesn't
go anywhere during recipe parsing.
(From OE-Core rev: c7a198d7472b4767047dbbfeecb4d941055262b3)
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: Koen Kooi <koen@dominion.thruhere.net>
Cc: Jason Kridner <jkridner@beagleboard.org>
Cc: Chris Larson <clarson@kergoth.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This fixes dbus usage in non-sysV init systems. Volatiles aren't needed in systemd land, since /run is tmpfs and the dbus units take care of all this.
(From OE-Core rev: 4c3490922c3bea5f9c9810bb40dc5f5d8783de5a)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
with xserver 1.10, the evdev driver is used by default, so update the
keyboard config entry in xorg.conf accordingly.
Fix [YOCTO #1108]
(From OE-Core rev: 729999cb384978404ecdfa8ea4ae0eb831fb9ece)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Systemd support in avahi only affects 'make install', so no changes for sysvinit based systems
(From OE-Core rev: 8579478ebfc1774ea4315ae803c98a6b59fad55a)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* this makes fix for [YOCTO #1074] in bitbake 139b8a625818225c358a1b8363518d7ed6913188
much more usefull for people using rm_work
(From OE-Core rev: 36386f3b8cadf283954f5c6db6ac6ee463c395de)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This was just the wrong update to go to, it was not fully vetted
and contains yum requirements which is not a direction we are moving
in.
This reverts commit 7576eba58c.
(From OE-Core rev: 7ffcabba6308d8b0e6caf883e675e6ae094d3302)
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
/usr/bin/dbus-launch is in the dbus-x11 packages, the dbus-launch package doesn't exist
(From OE-Core rev: 69763109038fc4a29720d9ff692f2001722862ce)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa spotted some differences with OE dev, which this commit fixes:
* dbus-launch is mentioned twice in FILES
* dbus-x11 should drag in dbus-1
(From OE-Core rev: eef8f869dd908e4dbca68b7a20e017c4ee40d626)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Systemd support in dbus only affects 'make install', so no changes for sysvinit based systems
(From OE-Core rev: 9281ac4c98d4287a5492f13f94e1bd0eea4791c6)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
dbus-launch moved into the dbus-x11 packages, so we need to drag it in.
Also reorder fields to better fit with the styleguide
(From OE-Core rev: 5457a4ddefac2262067172d0db5c7d646aacb5c0)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
dbus-launch moved into the dbus-x11 packages, so we need to drag it in.
Also reorder fields to better fit with the styleguide
(From OE-Core rev: dfa47303edeffa3f15f6cf53928fb9246b7c5d90)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This makes dbus usable in non-X enviroments like QT/e
>From the original commit in OE .dev:
commit 8e25448fb01b6fa6ea3a86f9327f080cd753dfbc
Author: John Lee <john_lee@openmoko.org>
Date: Fri Sep 5 11:37:39 2008 +0000
dbus: enable x support and put dbus-launch into new package dbus-x11
* Enable x support only add rdepends to dbus-launch. Make it a
seperate package so other packages like dbus does not rdepend on
libx11.
(From OE-Core rev: aebb9d6599aac683456adf56dc11f8b9f10f25c3)
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Without this, compiler errors such as:
configure:33440: i586-poky-linux-gcc -march=i586 --sysroot=/media/build2/builds/rptest/b2/tmp/sysroots/qemux86 -o conftest -D_REENTRANT -Wl,-O1 -Wl,--as-needed conftest.c -lpthread >&5
/media/build2/builds/rptest/b2/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.6.0/as: /media/build2/builds/rptest/b2/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/../../../usr/lib/libz.so.1: no version information available (required by /media/build2/builds/rptest/b2/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.6.0/as)
/media/build2/builds/rptest/b2/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.6.0/ld: /media/build2/builds/rptest/b2/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux/../../../usr/lib/libz.so.1: no version information available (required by /media/build2/builds/rptest/b2/tmp/sysroots/x86_64-linux/usr/libexec/i586-poky-linux/gcc/i586-poky-linux/4.6.0/ld)
can be see. This is due to the compiler being built against the system
zlib, before zlib-native is built and in the sysroot. Once that has been
built it can confuse the linker depending on the relative library versions.
(From OE-Core rev: a04d50a0318cd16d5fb02a625d739e03b94e42b7)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* PACKAGEFUNCS ?= "perform_packagecopy \
${PACKAGE_PREPROCESS_FUNCS} \
our py_package_preprocess is called after perform_packagecopy which does copy D to PKGD
so we change it to target version in D (image/) before populating sysroot (sysroot-destdir/)
while keeping Makefile.sysroot version in PKGD which was created before calling
py_package_preprocess, so both package for runtime and sysroot end wrong
* I haven't seen this problem on faster builder, I guess because do_package and do_populate_sysroot
can run in paralell and I was lucky that do_populate_sysroot finished before py_package_preprocess
was started, but if you build python step by step -c package first you should see it every time
* here is proof that with PKGD it works better:
$ bitbake -c cleanall python
$ bitbake -c install python
$ grep LIBDIR= \
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile \
./package/usr/lib/python2.6/config/Makefile \
./sysroot-destdir/usr/lib/python2.6/config/Makefile \
./image/usr/lib/python2.6/config/Makefile \
./Python-2.6.6/Makefile \
~/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile
grep: ./packages-split/python-distutils/usr/lib/python2.6/config/Makefile: No such file or directory
grep: ./package/usr/lib/python2.6/config/Makefile: No such file or directory
grep: ./sysroot-destdir/usr/lib/python2.6/config/Makefile: No such file or directory
./image/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
./Python-2.6.6/Makefile:LIBDIR= /usr/lib
/OE/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
$ bitbake -c package python
$ grep LIBDIR= \
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile \
./package/usr/lib/python2.6/config/Makefile \
./sysroot-destdir/usr/lib/python2.6/config/Makefile \
./image/usr/lib/python2.6/config/Makefile \
./Python-2.6.6/Makefile \
~/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
./package/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
grep: ./sysroot-destdir/usr/lib/python2.6/config/Makefile: No such file or directory
./image/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
./Python-2.6.6/Makefile:LIBDIR= /usr/lib
/OE/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
$ bitbake -c package python
$ grep LIBDIR= \
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile \
./package/usr/lib/python2.6/config/Makefile \
./sysroot-destdir/usr/lib/python2.6/config/Makefile \
./image/usr/lib/python2.6/config/Makefile \
./Python-2.6.6/Makefile \
~/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
./package/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
./sysroot-destdir/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
./image/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
./Python-2.6.6/Makefile:LIBDIR= /usr/lib
/OE/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
* without this patch we have /usr/lib/ in image/sysroot-destdir and SYSROOT_LIBDIR in package/packages-split
$ grep LIBDIR= \
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile \
./package/usr/lib/python2.6/config/Makefile \
./sysroot-destdir/usr/lib/python2.6/config/Makefile \
./image/usr/lib/python2.6/config/Makefile \
./Python-2.6.6/Makefile \
~/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile
./packages-split/python-distutils/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
./package/usr/lib/python2.6/config/Makefile:LIBDIR= /OE/shr-core/tmp/sysroots/om-gta02/usr/lib
./sysroot-destdir/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
./image/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
./Python-2.6.6/Makefile:LIBDIR= /usr/lib
/OE/shr-core/tmp/sysroots/om-gta02/usr/lib/python2.6/config/Makefile:LIBDIR= /usr/lib
(From OE-Core rev: 2ba5ce85dcc3c6812b10073bfc4ab600ca169df1)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>