Jonathan Liu [Fri, 14 Jun 2013 13:15:17 +0000 (23:15 +1000)]
qt4: disable gdb_dwarf_index
* qmake is trying to call native gdb and we don't depend on gdb-native
(or even provide gdb-native)
* fixes errors like this:
/bin/sh: gdb: command not found
/bin/sh: line 0: test: -gt: unary operator expected
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Wed, 12 Jun 2013 16:31:57 +0000 (16:31 +0000)]
classes/conf: Add eventmasks for event handlers
Now that bitbake supports masking events for event handlers, lets use
this so event handlers are only called for events they care about. This
lets us simplify the code indentation a bit at least as well as mildly
improving the event handling performance.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 7 Jun 2013 17:19:13 +0000 (18:19 +0100)]
scripts/buildenv-internal/sanity: Update to python 2.7.3 as a minimum
We're finding bugs in python 2.6 and starting to require unittest
functionality in python 2.7.x. Its time to bump the minimum version
requirement. Anyone without python 2.7.x can use the buildtools-tarball
out to install a standalone python/git/tar setup which will work
with the system.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 7 Jun 2013 17:16:41 +0000 (18:16 +0100)]
scripts/oe-buildenv-internal bitbake: Migrate python version checks
In preparation for removal of the bitbake wrapper script, move the
python version checks to the environment script. There are also
checks within bitbake itself but these may not always function
correctly on every version of python so this is really insurance.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We've been seeing issues where some TERM values don't work well with the
tarball. These show up as escape codes coming from simple python calls such
as printing the python version. Adding the terminfo goes part way to addressing
the problem, the remainder is ensuring the relocation code correctly searches
the right path for it (which will be in a follow on patch).
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Khem Raj [Thu, 13 Jun 2013 09:28:28 +0000 (02:28 -0700)]
python: -Wformat is needed by gcc 4.8
This fixes errors in packages using python( build with gcc 4.8)
|
/home/jenkins/oe/shr-core-branches/shr-core/tmp-eglibc/sysroots/qemuarm/usr/include/python2.7/modsupport.h:27:1:
error: 'PyArg_ParseTuple' is an unrecognized format function type
[-Werror=format=]
| PyAPI_FUNC(int) PyArg_ParseTuple(PyObject *, const char *, ...)
Py_FORMAT_PARSETUPLE(PyArg_ParseTuple, 2, 3);
| ^
| cc1: all warnings being treated as errors
| cc1: all warnings being treated as errors
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Wed, 12 Jun 2013 16:42:25 +0000 (17:42 +0100)]
gnome-doc-utils: drop the usage of create_wrapper
create_wrapper was previously abused to invoke the Python interpretter directly
instead of relying on #! parsing, which is read into a 128 byte buffer so breaks
with deep build directories.
However now that we already install a "nativepython" binary into the native
sysroot, use sed to change the #! line to /usr/bin/env nativepython.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 12 Jun 2013 16:29:21 +0000 (17:29 +0100)]
createrepo: drop the usage of create_wrapper
create_wrapper was previously abused to invoke the Python interpretter directly
instead of relying on #! parsing, which is read into a 128 byte buffer so breaks
with deep build directories.
However now that we already install a "nativepython" binary into the native
sysroot, use sed to change the #! line to /usr/bin/env nativepython.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 12 Jun 2013 16:25:05 +0000 (17:25 +0100)]
python-native: add nativepython symlink
Add a symlink to the native Python so that scripts can just invoke
"nativepython" and get the right one without needing absolute paths (these often
end up too long for the #! parser in the kernel as the buffer is 128 bytes
long).
The name "nativepython" was chosen to match the existing "nativeperl" which
serves the same purpose.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 12 Jun 2013 16:21:29 +0000 (17:21 +0100)]
dpkg: drop the usage of create_wrapper
create_wrapper was previously abused to invoke the Perl interpretter directly
instead of relying on #! parsing, which is read into a 128 byte buffer so breaks
with deep build directories.
However we already install a "nativeperl" binary into the native sysroot, so
use sed to change the #! line to /usr/bin/env nativeperl.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Stefan Stanacar [Wed, 12 Jun 2013 15:07:19 +0000 (18:07 +0300)]
scripts/contrib/build-perf-test.sh: add branch name and sizes to results
Be more descriptive about the revision we are running on
in the global results file: add branch:commit and git describe fields.
Also add the sizes for tmp dir not only times. (previously these were
only available in the output.log)
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 12 Jun 2013 12:17:41 +0000 (13:17 +0100)]
site: add more alignment values for at-spi2-core
x86 and x86_64 values were added in 8c46ec. The x86-64 values were missing an
entry, add MIPS and PowerPC values from myself in qemu, and ARM values from
Martin Jansa.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 12 Jun 2013 10:24:20 +0000 (11:24 +0100)]
runqemu: when tunctl can't be found, say what package builds it
If runqemu is used without actually building any qemu images (i.e. you
downloaded the images) it's likely that qemu-helper-native hasn't been built.
Instead of just saying what command can't be found, tell the user how to solve
their problem.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Riku Voipio [Thu, 6 Jun 2013 12:08:40 +0000 (15:08 +0300)]
qemu: update to 1.5.0
Patches removed:
0001-doc-Fix-texinfo-table-markup-in-qemu-options.hx.patch
- applied
0002-docs-Fix-generating-qemu-doc.html-with-texinfo-5.patch
- fixed different upstream
Revert-vmware_vga-Add-back-some-info-in-local-state-.patch
- fixed different upstream
arm-bgr.patch
- this should be also fixed upstream, if still issue please resend.
fallback-to-safe-mmap_min_addr.patch
- this should be also fixed upstream, if still issue please resend.
linker-flags.patch
- unneeded with makefile changes
from configure the obsolete --audio-cards-list option has been removed.
Laurentiu Palcu [Mon, 10 Jun 2013 14:11:03 +0000 (17:11 +0300)]
libxt: upgrade to 1.1.4
The following fragment has been added at the end of the licence file:
Copyright (c) 1993, 1994 X Consortium
Permission is hereby granted, free of charge, to any person obtaining a
copy of this software and associated documentation files (the "Software"),
to deal in the Software without restriction, including without limitation
the rights to use, copy, modify, merge, publish, distribute, sublicense,
and/or sell copies of the Software, and to permit persons to whom the
Software furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Except as contained in this notice, the name of the X Consortium shall not
be used in advertising or otherwise to promote the sale, use or other
dealing in this Software without prior written authorization from the
X Consortium.
This is useful as it avoids pulling python into a build just to build
chkconfig. The python recipe uses the libnewt installed in the sysroot by the
main package, so there's little loss of build time, other than the additional
unpack/patch.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Roy.Li [Sat, 8 Jun 2013 07:22:06 +0000 (15:22 +0800)]
latencytop: Deprecate tracing_enabled for tracing_on
tracing_enabled should not be used, it is heavy weight and does not
do much in helping lower the overhead. see commmit (Deprecate
tracing_enabled for tracing_on 6752ab4a9c30d5411b2dfdb251a3f1cb18aae48)
in kernel
Ross Burton [Tue, 11 Jun 2013 17:00:03 +0000 (18:00 +0100)]
systemd: don't install quotaon.service twice
If the same file is installed twice there's a race which can lead to "make
install" failing. Remove the redundant installation of quotaon.service to
eliminate the race.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Without this, due to bitbake defaulting to ${B}, it's possible to get ${S}
inadvertantly created before do_unpack, breaking the unpack of git sources,
which expect the destination to not exist.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sstate.bbclass: fetch archive+siginfo in a single pstaging_fetch
This avoids unnecessary duplication of setup. The only visible change in
behavior will be the case if siginfo exists and the archive does not, in which
case it'll redownload both, but this doesn't seem unresasonable to me,
particularly since the archive is downloaded first, making this case
particularly unlikely.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
sstate.bbclass: kill MIRRORS and FILESPATH to speed up fetching
The default FILESPATH isn't really of use, as we don't expect to find sstate
archives buried in layer recipe directories, and the default MIRRORS is
intended for use for fetching SRC_URI, not sstate.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Without using our python classes and having appropriate dependencies, the
build is nondeterministic, and whether a python-avahi package is produced will
vary depending on the host environment, yet avahi-discover is always produced,
and it depends on python-avahi.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
license.bbclass: include all licenses in the manifest
When we don't have a generic license file for the license in question, we can
warn, but we should still include it in the manifest, otherwise the manifest
doesn't reflect reality. Failing to include a license listed in the recipe in
the manifest can't be allowed.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Now that liburcu supports mips, this packagegroup can pull in lttng recipes
(lttng-ust, lttng-tools, lttng-modules, babeltrace) on that architecture as it
does for the others.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently, if a package QA type from package.bbclass is not listed in
ERROR_QA, it gets shown, regardless of whether it's in WARN_QA. This differs
from the behavior of the rest of the QA handling (which doesn't call
package_qa_handle_error at all if it's in neither _QA variable), and is
nonintuitive. Change this to use bb.note() if it's listed neither in ERROR_QA
nor WARN_QA, so it ends up in the task logs, but doesn't clutter up the user's
output.
Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Peter Seebach [Tue, 11 Jun 2013 14:28:03 +0000 (09:28 -0500)]
handle two-word commands with tmux
Trying to make a devshell using tmux can fail because "tmux new"
expects a single command, not a series of arguments. It does, however,
split strings in a suitable way. So you can quote the command.
The failure mode is particularly arcane, in that you end up
with a message like:
ERROR: Unable to spawn terminal auto: \
Execution of 'pseudo /bin/bash' failed with exit code 1:
usage: new-session [-d] [-n window-name] [-s session-name] \
[-t target-session] [command]
which is confusing because there's no "new-session" anywhere in
sight (that's actually "tmux new"), and because what failed to execute
wasn't either pseudo or bash.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Currently the scriptlet_wrapper is designed to handle only pre/post
install scriptlets. This patch will slightly change the wrapper script
to handle also pre/post remove scriptlets when we want to remove
packages from the final image.
Laurentiu Palcu [Thu, 23 May 2013 08:03:56 +0000 (11:03 +0300)]
run-postinsts: make it generic
This recipe is used only when the package manager is not deployed on
target and there still are delayed postinstalls that need to be run on
target. At the moment, run-postinsts is targeted to dpkg/opkg. RPM uses another
recipe, called rpm-postinsts which, in turn, is used even when the rpm
package is deployed.
This patch intends to make run-postinsts generic and deprecate
rpm-postinsts. Here's why:
* when opkg/dpkg are not deplyed, the meta-data files are useless.
Hence, the awk script is not needed. The postinstall files are already
saved in /etc/(deb|ipk)-postinsts directory and we can use the same
procedure as in rpm's case;
Also, the recipe is moved out from meta/recipes-devel/dpkg to
meta/recipes-devel/run-postinsts.
Laurentiu Palcu [Tue, 21 May 2013 11:02:01 +0000 (14:02 +0300)]
core-image-minimal: do not remove packaging files in the rootfs postprocess
Since the removal of PM's meta-data was moved in image.bbclass, after
rootfs_*_do_rootfs() runs, there's no need to remove the files in rootfs
postprocess stage. Also, if the meta-data is removed then there's no way
we can save the postinstalls to /etc/(deb|ipk)-postinsts later.
For RPM, it doesn't really matter since the postinstalls are saved to
/etc/rpm-postinsts as soon as the postinstall fails.
Laurentiu Palcu [Tue, 21 May 2013 11:27:49 +0000 (14:27 +0300)]
image.bbclass: remove unneeded files from the image
This patch creates a new function, rootfs_remove_unneeded(), that will
be called after rootfs_*_do_rootfs is called and which will handle
delayed postinstalls in a generic fashion, for all backends in the same
way.
Laurentiu Palcu [Tue, 21 May 2013 11:17:19 +0000 (14:17 +0300)]
rootfs_*.bbclass: add some helper functions
This patch adds the following helper functions:
* delayed_postinsts - outputs the list of delayed postinstalls;
* save_postinsts - this will save the delayed postinstalls for ipk/deb
in /etc/(ipk|deb)_postinsts;
* rootfs_remove_packages - removes packages from an image;
Additionaly, this patch will remove a piece of code in
rootfs_ipk_do_rootfs which will be moved to image.bbclass and used for
all backends;
Jonathan Liu [Thu, 6 Jun 2013 03:19:23 +0000 (13:19 +1000)]
qt4: fix QMAKE_QT_CONFIG being overwritten with empty value
QMAKE_QT_CONFIG is set by the linux-oe-g++ mkspec but it is overwritten
with an empty value read from .qmake.cache. Avoid this by first checking
if the value from .qmake.cache is not empty before assigning it to
QMAKE_QT_CONFIG.
This allows variables from qconfig.pri such as QT_ARCH, QT_CONFIG,
QT_VERSION, etc. to be queried by qmake projects.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Jonathan Liu [Fri, 7 Jun 2013 02:21:08 +0000 (12:21 +1000)]
qt4-native: update configure paths to match target
qmake2 was being built with paths different to the target Qt.
The incorrect paths can be seen by running qmake2 -query:
QT_INSTALL_DOCS:${STAGING_DIR_NATIVE}/usr/doc
should be /usr/share/doc/qt4
QT_INSTALL_PLUGINS:${STAGING_DIR_NATIVE}/usr/plugins
should be /usr/lib/qt4/plugins
QT_INSTALL_IMPORTS:${STAGING_DIR_NATIVE}/usr/imports
should be /usr/lib/qt4/imports
QT_INSTALL_TRANSLATIONS:${STAGING_DIR_NATIVE}/usr/translations
should be /usr/share/qt4/translations
QT_INSTALL_EXAMPLES:${STAGING_DIR_NATIVE}/usr/examples
should be /usr/bin/qt4/examples
QT_INSTALL_DEMOS:${STAGING_DIR_NATIVE}/usr/demos
should be /usr/bin/qt4/demos
QMAKE_MKSPECS:${STAGING_DIR_NATIVE}/usr/mkspecs
should be /usr/share/qt4/mkspecs
Use the same paths as target Qt for consistency. As the mkspecs are
installed to /usr/share/qt4/mkspecs not /usr/mkspecs, qmake2 was
unable to detect and load the webkit module (it is detected by loading
modules/qt_*.pri inside the mkspecs directory) so webkit was missing
from QT_CONFIG if a qmake project reads the QT_CONFIG variable.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Jonathan Liu [Fri, 7 Jun 2013 05:15:37 +0000 (15:15 +1000)]
classes/qmake_base: update .pro hack
This adds support for lconvert and xmlpatterns tools and tweaks the
sed expressions to handle more complex assignments in .pro files like:
LRELEASE = $$targetPath($$[QT_INSTALL_BINS]/lrelease)
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>