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>
Paul Eggleton [Fri, 7 Jun 2013 16:35:18 +0000 (17:35 +0100)]
classes/buildhistory: split SDK data by IMAGE_NAME
Data from SDKs produced from different images or different
meta-toolchain style recipes should go into separate directories,
since SDK_NAME doesn't include anything to differentiate these by
default (only pieces for the distro name and architectures).
Note you should delete or move existing data under the buildhistory/sdk/
directory manually after this change.
Fixes [YOCTO #4622].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Roy.Li [Fri, 7 Jun 2013 02:43:48 +0000 (10:43 +0800)]
PPP: add default configuration file and fix hard-coded CFLAGS
1. Add three ppp configuration files, make "/etc/init.d/ppp start"
be able to work with little change. provider and pap are adopted from
Ubuntu. ppp_on_boot is adopted from http://www.wlug.org.nz.
2. Use build system CFLAGS when compiling
Roy.Li [Thu, 6 Jun 2013 08:32:50 +0000 (16:32 +0800)]
socat: enable termios
fix two cross-compile issue to enable termios:
1. Define ac_cv_ispeed_offset in EXTRA_OECONF to avoid to call AC_TRY_RUN()
on cross-compile environment.
2. fix autoheader to generate *_SHIFT macros
Hongxu Jia [Thu, 6 Jun 2013 06:31:17 +0000 (14:31 +0800)]
init-live.sh: fix media automount failed after booting from usb-drive
1, This issue happens to BSP only.
After a BSP board is booted with Yocto linux from USB drive, "cat /proc/mounts" shows:
...
/dev/sda3 /media/sda3 ext3 rw,relatime,errors=continue,user_xattr,acl,barrier=1,data=ordered 0 0
/dev/sda1 /media/sda1 ext3 rw,relatime,errors=continue,barrier=1,data=ordered 0 0
/dev/sda2 /media/sda2 ext3 rw,relatime,errors=continue,user_xattr,acl,barrier=1,data=ordered 0 0
...
but actually the directory /media/sda1 doesn't exist at all, "df" shows:
...
df: /media/sda3: No such file or directory
df: /media/sda1: No such file or directory
df: /media/sda2: No such file or directory
...
2, This is because the mount data comes from proc setup during early boot
before the change root, which then uses a different root filesystem, the
media is not in the new root filesystem.
3, During early boot before switch_root, use `mount --move' to move all
medias to the new root filesystem could also fix this issue.
Originally from the https://github.com/dv1/meta-gstreamer1.0 repository,
the patches were copied with only one change:
gstreamer1.0-plugins-package.inc was removed, since gst-plugins-package.inc
is identical except for the LIBV variable.
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Saul Wold [Mon, 10 Jun 2013 17:01:51 +0000 (10:01 -0700)]
tar: don't mv tar for nativesdk
We move tar into /bin for target but it can stay in /usr/bin for nativesdk
this will also mean the paths are correct for the buildtools-tarball environment
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 7 Jun 2013 10:11:22 +0000 (10:11 +0000)]
base/useradd/sstate: Ensure do_package setscene has correct fakeroot dependencies
The do_package_setscene task needs to depend on fakeroot in order to correctly
install its files.
We can whitelist the dependency in the sstate handling code for some
performance improvements since we only need this if we're installing the
package from sstate.
Also use an append operator in base.bbclass for clarity.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 7 Jun 2013 15:15:48 +0000 (15:15 +0000)]
package_*.bbclass: Drop fakeroot from setscene calls
Back in 2010, I added these in commit: http://git.yoctoproject.org/cgit.cgi/poky/commit/?id=36f1ae42fe13dae174b7fb5eb85dc49d7d7b516b
however the package_write tasks sstate only consists of package files and no
fakeroot privileges are needed to write these out, only originally create them.
We can therefore drop these for some small performance gains and a less
convoluted depenency chain.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 7 Jun 2013 11:05:01 +0000 (11:05 +0000)]
python-external-tarball: Modernise and rename
The external-python-tarball was intended to provide python for those users who
didn't have python 2.6. It has been unloved for a while so this refreshes
it a bit. Specifically:
* Include git and tar since these can have version issues on some systems
* Rename to buildtools-tarball to better reflect its purpose
* Remove the site-config file from the tarball, its pointless
* Prune down the environment file to just cover PATH and OECORE_NATIVE
(which is needed to correctly install the tarball)
* Add missing grp module (used by do_package) from the unixadmin package
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Fri, 7 Jun 2013 11:05:20 +0000 (11:05 +0000)]
git/tar/findutils: Add nativesdk versions
We need to be able to generate a standalone tarball containing tar/git so
add nativesdk versions of the appropriate recipes to allow this to be possible.
Tweak the git perl paths to avoid warnings when building the nativesdk version,
ensure the binaries are wrapped correctly and avoid update-alternatives in
nativesdk-tar.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andy Voltz [Wed, 5 Jun 2013 15:52:29 +0000 (11:52 -0400)]
tune-cortexa.inc: create a common include for cortex-a armv7a tuning
The tuning files for the cortex-a* processors are mostly identical for
the A7,A8,A9,A15 processors. Rework these files to use a CORTEX_ID
variable to setup the tuning for each specific processor.
Signed-off-by: Andy Voltz <andy.voltz@timesys.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Cristian Iorga [Wed, 5 Jun 2013 15:09:07 +0000 (18:09 +0300)]
libpcap: upgrade to 1.4.0
0001-Fix-disable-canusb.patch,
0001-The-leading-comma-looked-weird-remove-it.patch,
0001-canusb-needs-lpthread.patch patches included in
upstream, no longer needed.
Yi Zhao [Wed, 5 Jun 2013 09:20:50 +0000 (17:20 +0800)]
kernel.bbclass: Fix link for modules-${MACHINE}.tgz
The modules-${MACHINE}.tgz should link to ${MODULE_TARBALL_BASE_NAME}.
But now it links to an invalid file ${MODULE_TARBALL_BASE_NAME}.bin.
Remove the extra .bin suffix.
[YOCTO #4595]
Signed-off-by: Yi Zhao <yi.zhao@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Andrea Adami [Tue, 4 Jun 2013 21:28:45 +0000 (23:28 +0200)]
image_types.bbclass: add ubifs to IMAGE_TYPES
* the IMAGE_TYPES variable is used exclusively by hob
* IMAGE_CMD_ubifs is already present in the class
* ubifs images can be flashed on existing ubi volumes with 'ubiupdatevol'
Signed-off-by: Andrea Adami <andrea.adami@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Robert Yang [Sat, 11 May 2013 22:46:10 +0000 (06:46 +0800)]
insane/package: refactor packaging sanity tests
Refactor packaging sanity tests from package.bbclass to insane.bbclass
so that the message can respect WARN_QA (print the warning message and
go on the task) and ERROR_QA (print the error message and fail the
task).
- For the bb.warn(), give it a message name and add it to WARN_QA, then
use package_qa_handle_error() to handle it.
- For the bb.error(), give it a message name and add it to ERROR_QA,
then use package_qa_handle_error() to handle it.
- All the bb.warn() and bb.error() have been replaced in
package.bbclass.
- A few bb.warn() and bb.error() in insane.bbclass have been kept since
they can not be replaced or doesn't have to, for example the
bb.error() in package_qa_check_license(), it will print the error
message and then invoke bb.fatal() to fail the task, I think that we
don't have to replace it with package_qa_handle_error().
- Put all the WARN_QA and ERROR_QA in one line, so that they can be
redefined by the user easily.
[YOCTO #3190]
[YOCTO #4396]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Robert Yang [Sat, 11 May 2013 22:46:10 +0000 (06:46 +0800)]
insane/package: let package.bbclass inherit insane.bbclass
RP's comment:
"What we're trying to do is move everything to use a standard mechanism
for reporting issues of this type (do_package). With insane.bbclass, you
can elect whether a given type of error is a warning or error and fails
the task."
* The package.bbclass had used package_qa_handle_error() which is from
insane.bbclass, and we will use it for handling other warnings and
errors, so let package.bbclass inherit insane.bbclass, this change will
make the insane as a requirement (always included).
* Change the "PACKAGEFUNCS ?=" to "+=", otherwise there would be an
error like:
Exception: variable SUMMARY references itself!
This is because we let package.bbclass inherit insane.bbclass, and
PACKAGEFUNCS has been set in insane.bbclass, so the "PACKAGEFUNCS ?="
will set nothing, then the "emit_pkgdata" doesn't run which will
cause this error.
* Add a QA_SANE variable in insane.bbclass, once the error type
is ERROR_QA, it will fail the task and stop the build.
[YOCTO #3190]
[YOCTO #4396]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 29 May 2013 14:57:06 +0000 (15:57 +0100)]
mesa: upgrade to 9.1.3
Merge mesa-PV.bb and mesa-PV.inc as the is no point to the split now we're only
building one variant of Mesa.
Drop 0002-cross-compile.patch isn't needed as libtool is used instead of mklib.
However, as libtool is used instead of mklib add fix-glsl-cross.patch to work
around build failures caused by the cross libtool being used to build host
binaries.
Add EGL-Mutate-NativeDisplayType-depending-on-config.patch to build correctly in
a non-X11 environment.
Drop dont-fail-if-libX11-isnt-installed.patch and
fix-egl-compilation-without-x11-headers.patch as they were backports.
license.html had some formatting and typo fixes, update the checksum.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Thu, 23 May 2013 11:34:04 +0000 (12:34 +0100)]
test-utils: handle import bb failing and skip the test
Instead of reporting an error when bb cannot be imported, skip the test
instead. This makes it a lot easier to iterate a test suite when we don't care
about this particular test.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
bdwgc has version names that may or may not contain a revision
(for example 7.2d or simply 7.2). The current recipe specifies
the revision as a separate variable, which confuses the automatic
version checker. This patch enables using the full version name
as part of the recipe name.
Signed-off-by: Bogdan Marinescu <bogdan.a.marinescu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Fri, 31 May 2013 14:22:56 +0000 (14:22 +0000)]
weston: add a weston-launch group
For weston-launch to be used by a non-root user, the user either needs to be a
member of the weston-launch group or own an active systemd user session. Create
this group so users can be members of it.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
gstreamer: moved LIBV out of gst-plugins-package.inc file
Since gst-plugins-package.inc is going to be used by the following
GStreamer 1.0 recipes as well, LIBV has to be set outside of the .inc file.
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The -meta packages were depending on non-existing packages,
like -glib and -apps. The fix checks if packages in the PACKAGES list
are empty. If so, they are omitted from the rdepends list.
Signed-off-by: Carlos Rafael Giani <dv@pseudoterminal.org> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>