Phil Blundell [Mon, 24 Sep 2012 06:24:51 +0000 (07:24 +0100)]
util-linux: Ensure that ${sbindir} is respected
The configure script uses a hard-coded value for ${usrsbin_execdir},
which is the path that we know as ${sbindir}. Adjust configure to take
this from the environment if it's set there, and have do_configure()
pass it in.
Martin Ertsaas [Wed, 19 Sep 2012 07:16:55 +0000 (09:16 +0200)]
bash: Make it possible to run bash 3.2.48 instead of 4.2.
bash-3.2.48 did not provide the linking from sh to bash, making it unusable.
Moving the license part out of the bash.inc file, and into bash_4.2.bb file makes
us able to use that file also for bash_3.2.48.bb, which makes maintaining both
at the same time a lot easier.
The globs used for STAMPCLEAN were too greedy matching gcc-cross-initial
stamps for gcc-cross for example. This patch resolves that problem making
the assumption that PV starts with something numeric. This assumption
should hold in most cases and has a better failure case that the current
situation.
Richard Purdie [Fri, 21 Sep 2012 10:16:24 +0000 (11:16 +0100)]
insane.bbclass: Improve ability to detect enabled tests
Define an ALL_QA variable which can be used to determine which tests to
run. Improve the libdir test to work in the case it is set to raise an
error rather than a warning.
Radu Moisan [Wed, 19 Sep 2012 09:32:39 +0000 (12:32 +0300)]
insane.bbclass: add library dir sanity check
Check in ${PKGD} for libraries in wrong locations.
Trigger a warning if so.
Eg. Catch recipe installing /lib/bar.so when ${base_libdir}="lib32"
or installing in /usr/lib64 when ${libdir}="/usr/lib"
SDK: allow toolchain installation from another directory
This patch will allow one to run the installer from another directory
than the one where it's actually located.
Suppose the installer is in /home/user/test/my/sdk and the current
directory is in a different place. With this patch, one can run the
installer like this:
$ sh ~/test/my/sdk/poky-eglibc-x86_64-arm-toolchain-gmae-1.2+snapshot-20120920.sh
The directory usr/libexec/ in the SDK sysroot contains the default
symlinks to the toolchain binaries and these, too, need to point to the
correct toolchain path.
adt-installer: ensure directory exists before copying/removing
If the installation is done in a directory which already contains a
valid installation, opkg will not install anything and the moving the
contents of /install/dir/opt/poky/1.2 (for example) to /install/dir will
throw some errors. However, the install directory will not be affected.
This patch will ensure that the /install/dir/opt/poky/1.2 exists.
The SDK installation scripts should not canonicalize symlinked
directories because the entire relocation would be done to the directory
to which the symlink points. Instead, if the installation is a symlink,
use that path to relocate the binaries.
For example, if we have the following symlink: /opt/sdk -> ~/my/test/sdk
the binaries will be relocated to /opt/sdk not ~/my/test/sdk as it is
done now.
When the cross canadian toolchains are installed, for different
architectures, they might contain common files. This leads to
installation failures since the opkg, by default, does not overwrite
files. This issue happens, for example, for binutils packages (that
contain the same locale files) or gdb (which installs some syscalls xml
files). The locale files could be removed from the binutils
cross-canadian package but we cannot do the same for the syscalls GDB
files which are used by GDB to display user friendly names for the
syscall numbers. Hence, the best solution is to force opkg to overwrite
these files.
Constantin Musca [Wed, 19 Sep 2012 09:59:14 +0000 (12:59 +0300)]
intltool: include intltool.m4 and add missing rdepends
- include /usr/share/aclocal/intltool.m4 into the intltool
package (the files from intltool-dev must be included into the
main package, as intltool is a development tool)
- add missing rdepends: gettext-dev, libxml-parser-perl
Robert Yang [Thu, 20 Sep 2012 07:47:55 +0000 (15:47 +0800)]
opkg svn: respect to the arch priority
This is for fixing the problem:
1) bitbake core-image-sato-sdk with MACHINE=qemux86
2) bitbake core-image-sato with with MACHINE=crownbay
The qemux86's PACKAGE_ARCH is i586, the crownbay's is core2, but several
i586 packages will be installed into crownbay's rootfs though there are
core2 packages. For example, there are:
The crownbay.conf says:
PREFERRED_VERSION_xserver-xorg ?= "1.9.3"
What the crownbay's image needs is xserver-xorg*_1.9.3-r1_core2.ipk, but
the xserver-xorg*_1.11.2-r7_i586.ipk will be installed, this is
incorrect.
This is caused by opkg's selecting mechanism: when more than one
candidate is found, it will use the higher version one and ignore the
arch priority.
we have several conf files which set the PREFERRED_VERSION_pkg = "..." ,
but there is no such a mechanism which can let us tell the opkg to
install the preferred version. When the preferred version is higher,
this is OK, but if the preferred version is lower, there would be
problems:
1) Most of the packages are core2 in the image, but several of them are
i586, though we have built the core2 ones, this seems strange.
2) What's worse is that the image may not work since the preferred
version pkg is not installed.
We have set the arch priority clearly in the opkg.conf, I think that
respect to the arch priority is reasonable during the image generation.
Add the "--select-higher-version" option to let the user have another
choice, the default is no.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a simple upgrade. Dropping the unneeded patches
and adding --disable-werror to configure since thats is
what one of the patch was doing which was dropped.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
qemux86-64: Support for KVM, paravirt and virtio added
KVM, paravirtualization and virtio drivers are now activated
in runqemu using the kvm option flag for qemux86-64.
Host CPU features are also exported to guest OS (Yocto Linux).
Usage example: runqemu qemux86-64 core-image-x11 kvm
qemux86: Support for KVM, paravirt and virtio added
KVM, paravirtualization and virtio drivers are now activated
in runqemu using the kvm option flag for qemux86.
Host CPU features are also exported to guest OS (Yocto Linux).
Usage example: runqemu qemux86 core-image-x11 kvm
Scott Garman [Wed, 19 Sep 2012 05:50:50 +0000 (22:50 -0700)]
runqemu: show bitbake errors to user
In certain edge cases, bitbake may fail to run and cause setup_tmpdir()
within runqemu to fail, and not give the user a helpful error message.
Catch this case and show the user the output of bitbake -e.
Ross Burton [Fri, 7 Sep 2012 09:55:55 +0000 (10:55 +0100)]
librsvg: make the libcroco dependency a PACKAGECONFIG option
Default to enabling it as we were build-depending on it already. If a user
needs the disk space and the limitations imposed by not using libcroco are
acceptable they can override this.
Basically, both the rpm-native and rpm should depend on bison-native,
but don't need depend on bison, but it seems that it isn't necessary
to add another depend line:
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andrei Gherzan [Thu, 20 Sep 2012 09:56:59 +0000 (12:56 +0300)]
Replace "echo -e" with "printf" to have the same behavior in dash or bash
oe-core removed the prerequisite to have sh as bash. POSIX doesn't define
any options and furthermore allows 'echo -e' to be the default behavior.
This means that in dash 'echo -e' will actually print '-e' and interpret
backslashes by default. We use instead 'printf' builtin command with or
without '\n' to simulate 'echo -e' or 'echo -n'.
'printf' needs format while 'echo' can be used without any arguments. So
'echo >' was replaced by 'printf "" >'.
'echo' without '-n' flag adds a new line by default so to keep the same
behavior of two new lines while using 'echo "\n"', 'printf "\n\n"' is
used.
bitbake: hob: add a top bar when building process is stopped
When a build was stopped, it wasn't obvious what to do next.
Now, on the page it appers a top bar with 3 buttons: "edit image",
"open log", "build new image"
bitbake: hob/packageselectionpage: "Cancel" button returns to "Image configuration" screen
Once package building completes, you can customise the list of
packages that will go into the final image. Once you have made
the changes you need, you can either build your image, or you
can exit the process and go back to the 'Image configuration'
screen by selecting 'Cancel'.
Paul Eggleton [Wed, 19 Sep 2012 10:25:42 +0000 (11:25 +0100)]
bitbake: hob: report event handler failures
If an event handler failed we were not recieving an error message -
parsing just "froze" at 99%. This is because we were expecting a
CommandFailure event and this never happened in the case of
RequestPackageInfo which is where the failure was occurring.
This also required tweaking the error formatting slightly, taking the
return value of the format function rather than the message property
since the latter only seems to contain the first line without the
traceback in the case of event handler failure. Other error cases were
tested and their message formatting is unaffected by this change.
Richard Purdie [Tue, 18 Sep 2012 10:32:04 +0000 (11:32 +0100)]
bitbake: build/siggen: Add support for stamp 'clean' masks
Currently when we execute a task, we don't remove other potentially stale
stamps. This can mean if you switch between two different versions of a
recipe without a clean, the build can get very confused.
This patch adds in functionality to allow a wildcard expression of stamp
files to be removed when creating a new stamp file. This patch adds in
the core of the code to enable this but it also requires metadata support
to enable it.
When writing this improvement I went through several different options but
this was the only way I could find to allow things like noexec tasks to
function correctly (where stamps need to be created without the data store).
bitbake: compat, event: use OrderedDict from py2.7 for the event handlers
This ensures that our event handlers get run in registration order, making the
behavior more deterministic. I pulled in the python2.7 OrderedDict to avoid
essentially reimplementing a version of it ourselves, figuring we can drop it
when we bump our required python version next.
Richard Purdie [Mon, 17 Sep 2012 19:08:16 +0000 (19:08 +0000)]
poky.conf: Silence unsafe reference warnings
These QA warnings undermine the quality impression of OE-Core. They are
useful in some specific circumstances but until the system has been audited
and these warnings are reduced, they shouldn't be showing by default.
rootfs_rpm: Add Multilib prefix to installed_packages list
RPM does not name it's packages with the Multilib prefix,
but the rootfs_rpm class keeps track of the Multilib prefixs
in a list. Use that list to re-attach the prefix for use with
the license bbclass, buildhistory bbclass will also use this
and make it more accurate between multilib and non-multilib.
Use the embedded "Platform" information to ensure we get all
the correct matching.
Andrei Gherzan [Mon, 17 Sep 2012 10:49:58 +0000 (13:49 +0300)]
util-linux: Fix bloken swapoff symlink
There were 2 issues with this symlink.
1. Is was installed in base_bindidir but packaged in bindir. Fixed to
be packaged in base_bindir
2. The symlink swapoff was created to point to swapon. The problem is
that swapoff is an alternative so it would end up pointing to
swapoff.util-linux which was an inexistent file. The fix is to create
a symlink swapoff.util-linux to swapon.util-linux.
Jack Mitchell [Thu, 13 Sep 2012 12:27:21 +0000 (13:27 +0100)]
local.conf.sample: change valgrind support architecture comment
The comment for debug-tools states valgrind will only be installed for x86
targets. This is not true as valgrind now supports x86*, PPC* and ARMv7a;
delete the comment as the architecture support is now so varied.
Scott Rifenbark [Thu, 13 Sep 2012 21:01:58 +0000 (14:01 -0700)]
documentation: Toolchain corrections from tarball to .sh file
For 1.3 there is not longer a toolchain tarball. Instead, there
is a wrapper script that lets you install the tarball. This
fundamental usage model change caused several ripples throughout
the documentation set. I have changed wordings and examples
to reflect the new paradigm.
Scott Rifenbark [Fri, 7 Sep 2012 15:58:36 +0000 (08:58 -0700)]
documentation/dev-manual/dev-manual-model.xml: Updates to plug-in install
Edits to test out the lastes version of installing the Yocto Eclipse
plug-in from the latest source. Small changes to be more complete
on the step-by-step process with regard to being in the right
branch. Also, inserted 1.3_beta as the version. This will change
later.
Paul Eggleton [Wed, 5 Sep 2012 19:46:36 +0000 (12:46 -0700)]
documentation/poky-ref-manual/ref-bitbake.xml: remove refs to Dates and Contacts
Update the BitBake "Preferences and Providers" section to remove
references to these two Pimlico applications that have been removed,
and tweak the example slightly so it is technically correct.
List frameworks we provide that are likely to be used by people these
days - Pimlico has been removed and GuPNP and Matchbox don't really
belong. Also slightly modify the sentence following so that it is clear
that these are optional.
In addition to Paul's patch, I cleaned up one of his sentences with
some simple grammar edits.
Paul Eggleton [Wed, 5 Sep 2012 19:33:05 +0000 (12:33 -0700)]
documentation/poky-ref-manual/ref-images.xml: Update list of images
* core-image-core was renamed to core-image-x11 and the editor and file
manager were removed.
* core-image-basic's description has been updated to reflect its
intended purpose
* core-image-lsb is intended to be standalone - should not be
associated with core-image-basic.
* The Pimlico applications have been removed so they are no longer
present in the Sato images.
In addition to Paul's patch, I removed the "etc." word. This word
is better replaced by "and so forth". Also, consistent with the
YP documentation.
* For PE/PV/PR/PN these pertain to a recipe ("package" was used here
historically).
* References to variables should not be prefixed with $ in the text
* Add text about suffixing RCONFLICTS as per other package variables
* Make ALLOW_EMPTY example complete
* Clarify and add example for AUTOREV
In addition to Paul's patch, I re-worded two instances. One
to get rid of "package(s)", which is poor form. And a second
to get rid of "unstable/development", which is also poor form.
Clarifying who picks up files that would normally be included
in the default package. This is a wording change to try and
eliminate the ambiguous "they".
Scott Rifenbark [Wed, 5 Sep 2012 18:06:04 +0000 (11:06 -0700)]
documentation/poky-ref-manual: Section name change
I changed the "Reference: Images" section to "Images". This old
name was a hold over from when the book had appendices that were
reference-like. Along with changing the name I also fixed two
links to the section that were found in the variables chapter.
Paul Eggleton [Wed, 5 Sep 2012 16:54:41 +0000 (09:54 -0700)]
documentation/poky-ref-manual/ref-features.xml: edits to IMAGE_FEATURES list
* apps-console-core has been effectively replaced by splash
* apps-x11-core, apps-x11-games have been removed
* ssh-server-* were added quite a while ago, add these here
* x11 has been added
* x11-base has changed behaviour slightly
* doc-pkgs was added
* nfs-server never exported the entire /, so remove this comment
In addition to Paul's changes. I performed some general edits to the
list so that it is active voice and has a parallel structure for
all the list items. Changes involved some of Paul's stuff and some
of mine.
Paul Eggleton [Wed, 5 Sep 2012 15:48:29 +0000 (08:48 -0700)]
documentation/dev-manual/dev-manual-common-tasks.xml: package group changes
Task has been renamed to package group, and there are some minor changes
in how package group recipes should be constructed - in particular the
inherit of packagegroup.bbclass is now highly recommended as it will set
appropriate defaults and automatically add complementary -dev and -dbg
packages.
In addition to Paul's patch, I added a couple <filename>/</filename>
tags around some switch names to be consistent with manual
formatting.
Scott Rifenbark [Tue, 4 Sep 2012 19:05:21 +0000 (12:05 -0700)]
documentation: Fixed links to BitBake User Manual
Robert P. J. Day pointed out a link in the development manual that
was for the BitBake User Manual. The link resolved to an old,
non-maintained version of BitBake documentation. According to
Richard Purdie, the BitBake docs referenced should be the ones
that ship in the bitbake/doc/manual directory of poky. The
YP docs had been using a variable named BITBAKE_DOCS_URL that
also resolved to the antiquated user manual site. Consequently,
there were many links that needed fixed across both the YP
Development Manual and the YP Reference Manual. Each of these
references now points in general to the bitbake/doc/manual
directory in poky for more information.
Scott Rifenbark [Tue, 4 Sep 2012 17:48:47 +0000 (10:48 -0700)]
documentation/dev-manual/dev-manual-common-tasks.xml: note on readme
Added a note in the "Creating Layers" section noting that to be
Yocto Project compliant, a layer must contain a README file. This
change was prompted by a discussion over the fact between Robert
P. J. Day and Mark Hatle.
Richard Purdie [Thu, 13 Sep 2012 14:25:51 +0000 (15:25 +0100)]
bitbake: cooker: Fix priority for virtual recipes
When making filename comparisons for recipes for priority calculations,
we need to split off any virtual prefix. Without this, BBCLASSEXTEND
version of recipes don't follow the priority settings they should.
Paul Eggleton [Tue, 11 Sep 2012 09:37:22 +0000 (10:37 +0100)]
bitbake: lib/bb/event: improve handling of event queue on exit
If BitBake exits before a UI handler (server) has been registered, we
print the event queue; if there are any errors or other non-debug
messages just print these and suppress the rest of the message queue.
This improves the output when sanity check failures occur with OE-Core
by avoiding printing a long stream of uninformative debug messages.
Paul Eggleton [Tue, 11 Sep 2012 16:52:01 +0000 (17:52 +0100)]
bitbake: hob: sort base image drop-down list
Sort the list of base images to make it easier to find a specific image
in the list. Note that "Create your own image" still remains the last
item in the list.
Paul Eggleton [Tue, 11 Sep 2012 16:52:00 +0000 (17:52 +0100)]
bitbake: lib/bb/command.py: ensure setVariable only sets values as strings
This is the interface Hob uses to set variable values in many instances,
and at the moment it is possible that some of the values it passes are
not strings. If a non-string value gets into the datastore it can
trigger exceptions during parsing when we attempt to expand the variable
and substitute in the non-string value.
This fixes using the meta-ti layer within Hob - it currently has a
reference to BB_NUMBER_THREADS within a shell function and since this
is a variable that Hob was setting from its configuration as an integer,
due to the above this was triggering an ExpansionError.
Bruce Ashfield [Fri, 14 Sep 2012 04:57:27 +0000 (00:57 -0400)]
linux-yocto/3.4: make uprobes select perf events
uprobes depends on functionality provided by perf events. After
uprobes was enabled in the standard kernel the mpc8315 board showed
link errors due to missing perf event functions.
This problem isn't isolated to the board or powerpc arch, but all
other boards have PERF_EVENTS enabled. To fix this, we make UPROBE_EVENT
select PERF_EVENTS, and any new boards will be protected from the
same failure.
We also update the configuration fragments since CONFIG_UPROBES depends on
CONFIG_PERF_EVENTS being set, so PERF_EVENTS needs to be added whenever
uprobes are enabled.
Richard Purdie [Fri, 14 Sep 2012 08:41:59 +0000 (09:41 +0100)]
bitbake.conf: Assign SRCPV so that it will be tracked correcting in the sstate checksum
Currently, SRCPV is just listed as having a value of ${@bb.fetch2.get_srcrev(d)}
which isn't helpful. This can mean that if PV changes, two recipes can have the
same sstate checksum despite having different PV values since the PV value itself
isn't tracked anywhere.
Adding this line means that the real PV value is expanded and recorded in the sstate
checksum, meaning the sstate packages no longer overlap. This is critical in ensuring
consistent builds for revipes using SRCPV.
Richard Purdie [Thu, 13 Sep 2012 22:40:29 +0000 (23:40 +0100)]
opkg: Fix package dependency issue for preinsts
When processing dependencies, we need to look for both the SW_INSTALL and
SW_UNKNOWN states. If we don't do this, dependencies can be missed
and preinst scripts can run before dependencies are all installed.
This leads to package installation errors for packages like dbus-1
and associated user permission errors.
Andrei Gherzan [Thu, 13 Sep 2012 22:22:26 +0000 (01:22 +0300)]
taglib: Update to v1.8
Patches not needed anymore - they switched to cmake.
LGPL license was replaced with the actual LGPL 2.1 file.
License section in audioproperties.h file was modified as it includes the
new address of Free Software Foundation.
libtag static library is not built by default anymore and if cmake is
instructed to build static library than shared library is deactivated.
So actually this is a switch now.