Richard Purdie [Tue, 20 Aug 2013 21:17:55 +0000 (21:17 +0000)]
gcc-configure-sdk.inc: Don't build target-libgcc
I don't understand why we're building the target libgcc in the canadian-cross build
since it should have been built elsewhere. The compiler configuration isn't correct
to build a working target libgcc in all cases anyway.
To avoid various weird build errors, stop building it.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 20 Aug 2013 21:14:02 +0000 (21:14 +0000)]
gcc-package-sdk.inc: Allow executable extension to be overridden
On platforms like windows, executables have extensions. Whilst I'm not proposing
we wholesale support windows extensions, this small tweak allows a cross compiler
targetting mingw to be built which does seem like a good use case.
The patch therefore adds an EXEEXT which the mingw layer can set for the libexec
symlinks.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 20 Aug 2013 21:10:55 +0000 (21:10 +0000)]
gcc-package-sdk.inc: Use relative symlinks in libexec dir
We already use relative links for other gcc libexec links, this changes the sdk
do_install to match elsewhere and use relative symlinks too. This makes things
slightly easier in the SDK installation process and standardises.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 20 Aug 2013 21:02:30 +0000 (21:02 +0000)]
gcc-cross-canadian-4.8: Enable PARALLEL_MAKE
This disabling of PARALLEL_MAKE has been forward ported for gcc-cross-canadian
since at least 2009-09 and gcc 4.3.3, probably older.
I've tested this with high values of parallel make and it all seems to work and
we usually build gcc with parallel make so it seems unlikely there are issues.
Lets therefore enable it.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 20 Aug 2013 17:19:29 +0000 (17:19 +0000)]
libiconv: Extend to nativesdk and support non-linux targets
This library is currently only available when targeting non-libc. This patch
also makes it available when targetting non-linux since it is likely of use
then.
It also adds a BBCLASSEXTEND for nativesdk since again, it can be useful
in that context.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 20 Aug 2013 17:13:14 +0000 (17:13 +0000)]
gettext: Improve USE_NLS handling for nativesdk/crosssdk/cross-canadian
The gettext handling of USE_NLS has become a bit tricky to understand, or
alter from the SDK context. This patch introduces a SDKUSE_NLS which can
be set to configure a given SDK/ADT to use NLS or not. This is independent
of the target system NLS usage.
The code in gettext.bbclass is therefore simplified and the classes
themselves now set USE_NLS to appropriate values. No NLS is used
for native, cross and crosssdk since it is never used there and
would just increase build time.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 20 Aug 2013 13:01:49 +0000 (13:01 +0000)]
package.bbclass: Fix handling of symlinks in debug packages
When copying the sources for the debug source package we use cpio -Ll
which means to copy files as hardlinks and to dereference symlinks.
It appears there is a bug in cpio since -Ll will copy symlinks and
not dereference them. We therefore do a second pass over copied symlinks
resolving them into files. Ideally we would copy these as hardlinks as well
however it doesn't seem worth the extra code and effort for what amounts
to a corner case for a minor space improvement.
This means that the -dbg packages no longer contain broken symlinks.
[YOCTO #5020]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 22 Aug 2013 15:49:08 +0000 (15:49 +0000)]
mkfontscale: This no longer needs a full libx11, xproto suffices
configure just looks for xproto so we can drop the libx11 dependency and
reduce the amount we build for some small performance improvements and
less of the -native stack.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jonathan Liu [Tue, 20 Aug 2013 10:10:41 +0000 (20:10 +1000)]
mesa: enable additional drivers for gallium-llvm x86/x86-64
The additional Gallium drivers are needed for open source ATI Radeon
and NVIDIA graphics drivers.
The radeonsi and r600 drivers require LLVM 3.3 built with r600
PACKAGECONFIG so they must be explicitly enabled by adding r600 to the
mesa PACKAGECONFIG.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Otavio Salvador [Thu, 1 Aug 2013 22:13:57 +0000 (19:13 -0300)]
distro_features_check.bbclass: Allow checking of required/conflicting features
This add support to list required/confliting distro features for a
recipe; this avoids user mistake when building recipes/images which
would not work depending on DISTRO_FEATURES option set.
Adding:
,----[ Use example ]
| inherit distro_features_check
|
| REQUIRED_DISTRO_FEATURES = "x11"
| CONFLICT_DISTRO_FEATURES_mx6 = "wayland"
`----
In the image recipe allow us to make clear to user that this image
needs X11 and /cannot/ be build with Wayland support in i.MX6
platforms, for example.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Mark Hatle [Tue, 13 Aug 2013 00:47:11 +0000 (19:47 -0500)]
package_deb: Add support for NO_RECOMMENDATIONS and PACKAGE_EXCLUDE
Add support for NO_RECOMMENDATIONS and PACKAGE_EXCLUDE. Also add a
warning that ensures users know that BAD_RECOMMENDATIONS support is
not implemented in the debian package/rootfs classes.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Mark Hatle [Tue, 13 Aug 2013 15:50:55 +0000 (10:50 -0500)]
package_deb.bbclass: Use the WORKDIR not SYSROOT for temp files
Previous debian APT configuration was using the sysroot directory.
This not only polluted the sysroot, but violates the expectation that
the sysroot is not modified by the rootfs installation.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Mark Hatle [Tue, 13 Aug 2013 00:45:48 +0000 (19:45 -0500)]
package_rpm.bbclass: NO_RECOMMENDATIONS support
Add NO_RECOMMENDATIONS support. A way to disable all recommended
packages from being installed. This will help shrink the size of
the resulting filesystem.
Add documentation on NO_RECOMMENDATIONS and BAD_RECOMMENDATIONS.
Note, using NO_RECOMMENDATIONS has side effects such that kernel-modules may
not have been installed. A user will need to manually add to their image
any kernel-modules required to be on the image for functionality.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Mark Hatle [Tue, 6 Aug 2013 15:41:33 +0000 (10:41 -0500)]
image.bbclass: Add basic support for PACKAGE_EXCLUDE
Add the foundation for the PACKAGE_EXCLUDE support.
As part of this work, it was noticed that the PACKAGE_INSTALL and
PACKAGE_INSTALL_ATTEMPTONLY were still using he 'normal' version for
dependencies. This should no longer be necessary as of the change in the way
the complementary package groups (dev, dbg, ptest and others) are defined.
By making this change the dependency tree is more correct than before, and
gives the ability for manipulating PACKAGE_INSTALL and
PACKAGE_INSTALL_ATTEMPTONLY, while adjusting the dependencies at the same
time.
Warning messages will be generated if the user is trying to exclude a
package that was previously in the PACKAGE_INSTALL or
PACKAGE_INSTALL_ATTEMPTONLY variables.
(See additional commits for package manager specific support.)
Add documentation on PACKAGE_EXCLUDE and related variables.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Florin Sarbu [Thu, 22 Aug 2013 09:56:46 +0000 (12:56 +0300)]
busybox.inc: Avoid error when SYSLOG is not enabled
Add -f to rm of ${D}${sysconfdir}/syslog-startup.conf.${BPN} so as to
not error out when the busybox config used does not have SYSLOG enabled
and DISTRO_FEATURES does not contain sysvinit.
Signed-off-by: Florin Sarbu <florin.sarbu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Fri, 16 Aug 2013 18:34:28 +0000 (15:34 -0300)]
linux-dtb.inc: Fix dtb generation for kernels newer than 3.8
The 3.8 kernel has change the default directory where the dtb file is
stored. The change has been done at:
,----[ Quote of 3.8 kernel change ]
| commit 499cd8298628eeabf0eb5eb6525d4faa0eec80d8
| Author: Grant Likely <grant.likely@secretlab.ca>
| Date: Tue Nov 27 16:29:11 2012 -0700
|
| ARM: dt: change .dtb build rules to build in dts directory
|
| The current rules have the .dtb files build in a different directory
| from the .dts files. The only reason for this is that it was what
| PowerPC has done historically. This patch changes ARM to use the generic
| dtb rule which builds .dtb files in the same directory as the source .dts.
|
| Cc: Russell King <linux@arm.linux.org.uk>
| Cc: Arnd Bergmann <arnd@arndb.de>
| Acked-by: Olof Johansson <olof@lixom.net>
| Cc: linux-arm-kernel@lists.infradead.org
| Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
| [swarren: added rm command for old stale .dtb files]
| Signed-off-by: Stephen Warren <swarren@nvidia.com>
| Signed-off-by: Rob Herring <rob.herring@calxeda.com>
`----
This change adds support for both places to backward and forward
compatibility.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Chen Qi [Fri, 16 Aug 2013 09:36:33 +0000 (17:36 +0800)]
initscripts: remove obsolete device_table.txt
device_table.txt was once used by an init script named 'devices' to
create the basic files under /dev. However, it's no longer used now.
The devices init script has been removed, and makedevs command has been
disabled by default in busybox.
Besides, considering the device managers and devtmpfs filesystem, this
file is not likely to be used again. So we remove it.
Chen Qi [Fri, 16 Aug 2013 09:38:10 +0000 (17:38 +0800)]
init-install.sh: fix to handle the boot partition correctly
Previously, the boot partition was created for the target hard drive
but there was no corresponding entry for it in /etc/fstab. Besides,
even if the boot partition was mounted, it would just result in odd
directory hierarchy like /boot/boot/grub. However, what we really need
is /boot/grub. This patch fixes this problem.
Besides, for future maintance work, this patch also renames some of the
intermediate directories. It uses more descriptive names like /tgt_root
and /src_root. The name of /ssd is dropped.
Chen Qi [Fri, 16 Aug 2013 09:38:09 +0000 (17:38 +0800)]
init-install.sh: improve hard drive searching process
Previously, only unremovable hard drives are searched and are treated
as candidates of target disks to intall into.
However, it's possible that we're going to install the live image into
a removable media such as an USB. This patch enables this possibility.
In addition, this patch presents more information about the hard drives
so that user may have more knowledge about which hard drive they are
going to install their image into.
Paul Eggleton [Fri, 16 Aug 2013 13:33:12 +0000 (14:33 +0100)]
tslib: update to 1.1
Drop patches merged upstream. 32bitBE-support.patch wasn't merged, but
no longer applies and similar changes look to have been made; tslib 1.1
works properly on qemumips without it, so this has also been dropped.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
When making distributions based on the default distro-less config, it
is useful to be able to reuse the default DISTRO_FEATURES options
without the need of duplication. The new variable,
DISTRO_FEATURES_DEFAULT, allow this reuse and customization.
So distros can include 'default-distrovars.inc' and use:
,----[ Use example ]
| DISTRO_FEATURES ?= "${DISTRO_FEATURES_DEFAULT} myfeature"
`----
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Yang Shi [Wed, 14 Aug 2013 16:41:54 +0000 (09:41 -0700)]
Revert "hello-mod: Ensure the produced package name begins with kernel-module-"
[YOCTO #4286]
The package runtime mapping rename issue is already fixed by
commit 0bc564af07c1bae8112f834a60aea3b72af7de13, the "kernel-module-" workaround
is not necessary anymore for out-of-tree module package, so revert that commit.
Paul Eggleton [Thu, 15 Aug 2013 17:04:39 +0000 (18:04 +0100)]
buildhistory-diff: improve command-line handling
Improve command-line argument handling of buildhistory-diff to make it
easier to use.
* Default buildhistory directory to buildhistory/ under the current
directory and require an option to set it (since most users will
likely run buildhistory-diff from the build directory and keep
BUILDHISTORY_DIR at its default location)
* Default from-revision to "build-minus-1" to get the difference from
the previous build with no arguments
* Allow from/to revisions to be specified by from..to (since git accepts
this form).
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 15 Aug 2013 17:04:38 +0000 (18:04 +0100)]
classes/buildhistory: avoid mangling names in dot graphs for images
We were mangling names here to avoid characters that are invalid for dot
node names, but if you just quote all names that isn't necessary and we
retain the original naming, allowing easy searching of the graph files.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Thu, 15 Aug 2013 17:04:37 +0000 (18:04 +0100)]
classes/buildhistory: tag last 3 build revisions
This makes it easier to obtain the difference from the last three
builds particularly where a single build might account for more than one
commit in the buildhistory git repository (e.g. if package and image
changes occurred).
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Thu, 15 Aug 2013 17:04:35 +0000 (18:04 +0100)]
classes/buildhistory: record size of installed package not compressed archive
* usually it's more important to know how much space will each
package take on target device then size of compressed package
* example for libewebkit0 with 4 different architectures, interesting
that om_gta02 .ipk is bigger but it's smaller when installed
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If the rootfs is read-only and the ssh keys are not available at system
start-up, the init script will generate ssh keys into /etc/ssh, thus
causing a 'read-only file system' error.
In order for Yocto based image to work correctly for read-only rootfs,
we use the following logic for openssh.
If the rootfs is read-only and there are pre-generated keys under /etc/ssh,
we use the pre-generated keys. Note the pre-generated keys are mainly for
debugging or development purpose.
If the rootfs is read-only and there are no pre-generated keys under
/etc/ssh, we use /var/run/ssh as the location for ssh keys. That is, at
system boot-up, the generated ssh keys will put into /var/run/ssh.
The init script for irda writes configuration items to /etc/sysconfig/irda
if that file is not available in system. But it's actually not necessary,
the behavior doesn't change whether the init script writes to the file or not.
Considering it issues error messages in case of a read-only rootfs, I delete
the writing process.
Chen Qi [Wed, 7 Aug 2013 07:17:15 +0000 (15:17 +0800)]
populate-volatile.sh: use 'cp -a' to avoid potential problem
Previously, dead links in target directory will not be copied.
This is incorrect as dead links are not uncommon in our rootfs.
So we use '-a' option instead.
populate-volatile.sh: don't spawn background process at rootfs time
If we're building a read-only rootfs, we'll get the following error now
and then.
tar: .: file changed as we read it
The root cause is that we spawn background process at rootfs time.
When the tar command is running, it's possible that files under rootfs
are changed by background processes, thus this error.
populate-volatile.sh: use $ROOT_DIR/var/volatile/tmp as TMPDIR
It's possible that a 'No such directory' error occurs when doing
check_requirement in populate-volatile.sh at rootfs time. This is
because the $ROOT_DIR/var/tmp might be a dead link.
Use $ROOT_DIR/var/volatile/tmp as the TMPDIR instead to avoid this
error.
At some point, the udev was modified to source the functions from
initscripts or lsbinitscripts. This dependency is actually not needed.
If we use udev in a system where initscripts from oe-core is not available,
there will be errors.
This patch fixes this problem by removing the implicit dependency.
init-live.sh: make $ROOT_MOUNT/media writable when necessary
If the live image is mounted as read-only, we cannot make necessary
directories under $ROOT_MOUNT/media, so trying to move the mount points
lead to errors.
So in case that no unification filesystem mechanism is available in kernel
and the rootfs is mounted as read-only, we mount tmpfs on $ROOT_MOUNT/media
so that it's possible to make necessary directories under it.
Chen Qi [Tue, 13 Aug 2013 06:11:50 +0000 (14:11 +0800)]
image.bbclass: create device table after package installation
Now that the makedevs supports using user/group names in the devcie
table files, and it uses passwd and group files under the rootfs which
is provided by the base-passwd package, we should let package installation
finish first, so that makedevs can get a correct mapping from user/group
names to uid/gid.
The check for existence of ${IMAGE_ROOTFS}/dev is removed. This is because
do_rootfs doesn't have 'nostamp' flag any more, so the do_rootfs task will
not be rerun for every build. Checking for the existence of ${IMAGE_ROOTFS}/dev
is not necessary any more. Besides, as base-files package also installs the
/dev directory, this checking does not serve as a good criteria.
Ross Burton [Wed, 14 Aug 2013 14:13:44 +0000 (15:13 +0100)]
wipe-sysroots: don't assume TMPDIR is under BUILDDIR
The previous code used the environment variable BUILDDIR and assumed that TMPDIR
was a subdirectory. This often isn't the case, so instead ask bitbake where the
directories we're about to delete are.
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Ross Burton [Wed, 14 Aug 2013 11:40:12 +0000 (12:40 +0100)]
matchbox-wm: fix icon handling on 64-bit hosts
Xlib has a historical quirk where 32-bit values are returned in longs (but
always hidden through a cast). On 32-bit machines this doesn't matter but on
64-bit this leads to problems. Bump SRCREV to integrate a fix from upstream.
Also, drop the conditional configure_fix.patch, it was integrated long ago.
[ YOCTO #4917 ]
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>