Stefan Stanacar [Fri, 11 Apr 2014 17:49:14 +0000 (20:49 +0300)]
scripts/send-error-report: simple hack to use proxy from the enviroment
People behind a proxy couldn't send an error report to an upstream server,
this should fix the issue if they use a proxy that doesn't require authentication,
or one that uses basic http authentication and it's correctly exported in the enviroment.
Martin Jansa [Fri, 11 Apr 2014 15:07:39 +0000 (17:07 +0200)]
icecc: don't create unnecessary 'ice' dirs in sysroots when disabled
* parsing ICE_PATH="${@icc_path(bb, d)}" causes "ice" directories
to be created in every sysroot, that could be a bit confusing for
people who inherit icecc.bbclass, but disabled it
* shorten ICECC_VERSION="${@icc_version(bb, d)}" path a bit
by returning sooner when disabled
* remove ICECC_PATH and ICECC_ENV_EXEC from signatures, we assume that
using icecc doesn't influence the output, so it shouldn't matter when
user supplies own version of icecc or env script
* always compare ICECC_DISABLED with "1", boolean typed_value isn't used
because documentation already mentions using empty value to keep icecc
enabled and that's not valid boolean value when oe.data.typed_value is
used:
ERROR: ICECC_DISABLED: Invalid boolean value ''
Andreas Müller [Thu, 10 Apr 2014 18:07:48 +0000 (20:07 +0200)]
shadow: fix building systemd with useradd-staticids.bbclass enabled
| groupadd: 'systemd-journal-gateway' is not a valid group name
Without useradd-staticids enabled, group 'systemd-journal-gateway' is created
by useradd and that seems not to care for GROUP_NAME_MAX_LENGTH which has 16 by
default.
libav: Add libsdl to DEPENDS only when x11 is enabled
When we have opengl in distro features but not x11 and try to
build libav then it calls out to build libsdl which inturn has depependency on libglu
and libglu fails to build
because gnome.bbclass was adding gconf->dbus-glib dependency
* it was also causing other recipes to fail when they were depending
on libnotify which has dbus-glib in pkg-config and dbus-glib was
missing, e.g. firefox:
| checking for libnotify >= 0.4... Package dbus-glib-1 was not found
in the pkg-config search path. Perhaps you should add the directory
containing `dbus-glib-1.pc' to the PKG_CONFIG_PATH environment
variable Package 'dbus-glib-1', required by 'libnotify', not found
| configure: error: Library requirements (libnotify >= 0.4) not met;
consider adjusting the PKG_CONFIG_PATH environment variable if your
libraries are in a nonstandard prefix so pkg-config can find them.
apr: remove the use of ${SHELL} to avoid bash/dash confliction
While multible hosts sharing a common sstate cache, the fist host using
bash as default shell and build apr, the second host using dash as
default shell and build apr-util, there was a failure in apr-util:
...
| /bin/sh: 0: Can't open i586-poky-linux-libtool
| make[1]: *** [dbm/apr_dbm_gdbm.lo] Error 127
| make[1]: *** Waiting for unfinished jobs....
| make[1]: Leaving directory
`tmp/work/i586-poky-linux/apr-util/1.5.2-r0/apr-util-1.5.2'
...
The quick way to reproduce the defect in Ubuntu 1204:
1. Create a new build
2. sudo dpkg-reconfigure dash <set bash as /bin/sh>
3. bitbake apr
4. sudo dpkg-reconfigure dash <set dash as /bin/sh>
5. bitbake apr-util
Remove the use of $(SHELL) in the apr could avoid this issue.
Alexandru DAMIAN [Fri, 11 Apr 2014 16:40:32 +0000 (17:40 +0100)]
toaster.bbclass: do not fail on non-existent files
Toaster may look up inexistent file paths in the build history
for packages that have been referenced but not built.
This triggers a failure, and this patch recovers by deleting
the reference to the non-built packages.
[YOCTO #6063]
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
u-boot: fix beaglebone boot issue with large kernel images
Fix beaglebone boot issue with large kernel images overwriting Device Tree.
See very detailed comments inside the patch.
The original patch is being reviewed upstream and is targeting mainline U-boot
version 2014.07. This is the adaptation of the patch for 2013.07 version we use
Signed-off-by: Denys Dmytriyenko <denys@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Wed, 2 Apr 2014 14:37:01 +0000 (14:37 +0000)]
linux-yocto/3.14: intel configuration fixes
Importing the intel configuration fixes from Darren Hart:
a82ccc635e7a meta: Purge retired BSPs chiefriver, sys940x, and atom-pc b50ba1e37c26 x86: Drop X86_32 configs 8aa0a946f528 x86: Move MTRR config into x86 common fragments ddae217aefee common-pc: Remove SMP from common-pc*-cpu fragments f3ad83aa4c39 x86: Consolidate common x86* CPU features
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Updating the meta SRCREV to incorporate the intel common preempt-rt kernel
support.
Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 10 Apr 2014 12:49:55 +0000 (13:49 +0100)]
sstate: Silence warnings when switching machines
We recently added multiple provider warnings. These could get issued
from -cross recipes due to the way these currently overlap in the
native sysroot. Filter out these warnings for now, until such times
as we improve the cross recipes so they don't have an overlapping
namespace.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Thu, 10 Apr 2014 09:05:50 +0000 (10:05 +0100)]
perf: Fix sysroot option to CC handling
If you build perf in tree /xxx/treea, then cleansstate perf and build it
in /xxx/treeb having deleted treea, the build will fail, unable to find libc.
The problem is that the --sysroot option passed in through CC is missing.
This works fine if the default sysroot is ok, if it isn't, things will fail.
In 1.7 we'll start poisoning the default sysroot in gcc to catch this kind of
issue however that doesn't fix the problem with perf.
The problem is that various Makefiles set CC = $(CROSS_COMPILE)gcc. The
easist fix for now is to sed out the problematic Makefile lines. Its worth
noting the tools/lib/traceevent Makefile has a much more funky way of setting
CC which works for us and may be the way we need to fix the other Makefiles
upstream.
This fixes build failures we're occasionally seen on the autobuilders.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jonathan Liu [Thu, 10 Apr 2014 08:24:48 +0000 (18:24 +1000)]
openssh: fix sshd_config_readonly creation
The readonly sshd config sshd_config_readonly needs to be created from
the installed sshd_config as make install will adjust the paths in
the config file. This fixes the path for sftp-server being correct
in sshd_config but incorrect in sshd_config_readonly.
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
libpam: fix 64-bit pam plugins not installed when add to 32-bit image
While the BSP is configured as a 64-bit kernel and 32-bit userspace,
add a 64-bit version of libpam to the filesystem, there was a failure:
...
| Computing transaction...error: Can't install
pam-plugin-unix-1.1.6-r2@lib64_x86_64: no package provides libpam-lib64
|
| Saving cache...
...
While using 'lib64' as the multilib suffix of libpam RPROVIDES , the
RPROVIDES was overridden by map_depends_variable in classextend.py.
...
$RPROVIDES_lib64-libpam [2 operations]
set data_smart.py:429 [finalize]
" libpam-${baselib}"
set classextend.py:71 [map_depends_variable]4532
"lib64-libpam"
computed:
"lib64-libpam"
RPROVIDES_lib64-libpam="lib64-libpam"
...
Rename the suffix could fix this issue.
[YOCTO #4532]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Wenlin Kang [Tue, 8 Apr 2014 07:16:02 +0000 (15:16 +0800)]
busybox: fix a sh link wrong
When both bash and busybox be installed, without ash support
in busybox,if bash is installed before busybox in the final stage,
even if ALTERNATIVE_PRIORITY of bash > ALTERNATIVE_PRIORITY of busybox,
the symlink from /bin/sh to bash can be yet overwritten by busybox.
Signed-off-by: Wenlin Kang <wenlin.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Maxin B. John [Mon, 7 Apr 2014 15:48:11 +0000 (17:48 +0200)]
python: Fix CVE-2014-1912
A remote user can send specially crafted data to trigger a buffer overflow
in socket.recvfrom_into() and execute arbitrary code on the target system.
The code will run with the privileges of the target service.
This back-ported patch fixes CVE-2014-1912
Signed-off-by: Maxin B. John <maxin.john@enea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The trigger for the upgrade was the serious "heartbleed" vulnerability
(CVE-2014-0160). More information:
http://www.itnews.com.au/News/382068,serious-openssl-bug-renders-websites-wide-open.aspx
Dropped obsolete patches, because the new version contains them:
0001-Fix-for-TLS-record-tampering-bug-CVE-2013-4353.patch
0001-Fix-DTLS-retransmission-from-previous-session.patch
0001-Use-version-in-SSL_METHOD-not-SSL-structure.patch
Modified 2 patches (small changes), in order to apply properly:
initial-aarch64-bits.patch
openssl-fix-doc.patch
Richard Purdie [Mon, 7 Apr 2014 12:32:28 +0000 (13:32 +0100)]
package.bbclass: Add CONFFILES to list of package specific variables
Changes to CONFFILES should change the sstate checksum. To make that happen,
it needs to be listed in the list of package specific variables, therefore
add it.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use the CCLD variable to ensure proper tuning parameters.
Notably when building on a x86-64 host with an i686 toolchain
there is an error building built-in.o because it is trying to
link 32-bit and 64-bit object files:
i686-pc-linux-gnu-ld --sysroot=/work/dmoseley/Mentor/amd-2014.05/build.genericx86-64-external/tmp/sysroots/genericx86-64 -r -o applets/built-in.o applets/ap
i686-pc-linux-gnu-ld: Relocatable linking with relocations from format elf64-x86-64 (applets/applets.o) to format elf32-i386 (applets/built-in.o) is not support
make[1]: *** [applets/built-in.o] Error 1
Signed-off-by: Drew Moseley <drew_moseley@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Thu, 3 Apr 2014 09:32:16 +0000 (17:32 +0800)]
useradd_base.bbclass: avoid the traffic crowding
Currently, it would sleep 1 second when fail to add the user, this maybe
not enough when we use the sstate cache, as my test shows below, nearly
all the useradd actions are doing in the same minute when mirror from
ssate cache, and it would fail when the load is high, I got these time
by adding strace before the useradd for debugging:
The nfs-utils and xuser-account are failed to add the user.
The useradd command needs two locks, passwd.lock and group.lock, it may
get one, but can't get another one if we look into these .c files, sleep
1 second is not enough, it needs more seconds, the reason is that, if
succeed, it doesn't have any side effects, if failed, we need wait for
more seconds rather than make it more crowding.
I've tried to use "sleep 5", but it didn't make much better since they
would sleep and wake up nearly at the same time, I also tried to use
"sleep <RANDOM seconds between 1 and 10>", that didn't make much better
,either.
I think that a better ways is sleep more and more seconds (up to 10
seconds) when failed, this can't fix the problem that they may do the
actions at the same time, but the logic is: if it is not crowding, sleep
less time should be OK, otherwise sleep more and more time.
Richard Purdie [Fri, 4 Apr 2014 17:06:32 +0000 (18:06 +0100)]
sstate: Remove name sstate parameter
A while ago we stopped supporting sstate names which were different from the
taskname. This patch finishes cleaning up some code remnants from that
which were causing data duplication and confusion.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
David Vincent [Fri, 4 Apr 2014 07:47:42 +0000 (09:47 +0200)]
SDK default deploy directory
If the user changes the DEPLOY_DIR variable to set up a custom deploy
directory for images, packages, SDKs as explained in the documentation,
the variable SDK_DEPLOY does not take it into account and fallback to
TMPDIR as default. Therefore, SDKs were not found in the correct
location.
Signed-off-by: David Vincent <freesilicon@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Fri, 28 Mar 2014 10:03:59 +0000 (10:03 +0000)]
gtk+3: set proper FLAGS for native
The target gtk+3 does a native build in its "native" directory, we need
unset the target FLAGS for native build, otherwise, there might be build
failures.
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>
Chunrong Guo [Fri, 28 Mar 2014 08:47:05 +0000 (08:47 +0000)]
coreutils: fix search paths for libstdbuf.so
*fix the following error:
|stdbuf: failed to find 'libstdbuf.so'
*PKGLIBEXECDIR is the search paths for libstdbuf.so
|PKGLIBEXECDIR='$(pkglibexecdir)'
|pkglibexecdir='${libexecdir}/${PACKAGE}'
Since commit a83144bac8d67704ff66f5dc0fc56f5b63979694 (2014-02-11), USE_DEVFS is not considered anymore.
For compatibility, let's restore USE_DEVFS semantic.
Also add USE_DEVFS to documentation.conf.
Mike Crowe [Wed, 2 Apr 2014 16:04:12 +0000 (16:04 +0000)]
cmake: Remove dependency on ncurses
Commit 2adc9a3f1f1db284f7d91193ad77b3524e0e0d2c stopped ccmake being built
and that is the only part of cmake that relies on curses so we might as
well stop depending on it.
(Tested with a poisoned curses.h to prove that it is unused even if
present.)
Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mike Crowe [Wed, 2 Apr 2014 16:04:11 +0000 (16:04 +0000)]
cmake-native: Stop building ccmake
The bootstrapped cmake is called in such a way that it will automatically
enable building ccmake if curses is found. This tool isn't particularly
useful to us and it will cause build problems if ncurses-native is built in
parallel with cmake-native so let's just pass -DBUILD_CursesDialog=0 to
disable the feature altogether as the non-native cmake does.
Unfortunately this requires patching the bootstrap script since there
appears to be no way to get this option through.
Signed-off-by: Mike Crowe <mac@mcrowe.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Wed, 2 Apr 2014 12:25:36 +0000 (12:25 +0000)]
Revert "qt-mobility: remove /usr/lib from ld rpath-link option"
* Basically part of the headers/libs are installed in
${D}(${libdir}/${includedir}) instead of
${D}(${libdir}/${includedir})/qt4
* http://lists.openembedded.org/pipermail/openembedded-core/2013-October/085815.html
is related, but doesn't fix the issue completely, so better
revert the commit which introduced this issue
Martin Jansa [Wed, 2 Apr 2014 12:25:35 +0000 (12:25 +0000)]
gcc-target: remove infodir
* it uses autotools but doesn't call autotools_do_install
* fixes QA warning:
gcc-4.8.2: The /usr/share/info/dir file is not meant to be shipped in a particular package.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Wed, 2 Apr 2014 12:25:34 +0000 (12:25 +0000)]
ed: remove infodir
* unlike 0.5 version, this doesn't use autotools.bbclass which removes infodir automatically
* fixes QA warning:
ed-1.9: The /usr/share/info/dir file is not meant to be shipped in a particular package.
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Martin Jansa [Wed, 2 Apr 2014 12:25:33 +0000 (12:25 +0000)]
cmake: Add ugly hack from meta-qt5 to prevent cmake trying to detect qt5
* cmake doesn't have dependency on qt4/qt5, so these tests usually fail
but still can cause undeterministic results or build failures (when
OE_QMAKE_PATH_EXTERNAL_HOST_BINS is undefined or native qmake removed
while running the test in cmake)
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jonathan Liu [Wed, 2 Apr 2014 02:50:10 +0000 (02:50 +0000)]
systemd: backport patch to avoid assertion failures
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jonathan Liu [Wed, 2 Apr 2014 02:50:09 +0000 (02:50 +0000)]
dbus: backport memory leak patch for error when listing services
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jonathan Liu [Wed, 2 Apr 2014 02:50:08 +0000 (02:50 +0000)]
dbus: backport fix for bus activation under systemd session
Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Tue, 1 Apr 2014 16:42:04 +0000 (16:42 +0000)]
alsa-tools: Fix build without x11
The patch had some new tool (hdajackretask) missing which were
triggering build failures in O.S. Systems' builder as:
,----[ Build error in a clean tmp, without x11 ]
| checking for GTK3... no
| configure: error: Package requirements (gtk+-3.0) were not met:
|
| No package 'gtk+-3.0' found
|
| Consider adjusting the PKG_CONFIG_PATH environment variable if you
| installed software in a non-standard prefix.
|
| Alternatively, you may set the environment variables GTK3_CFLAGS
| and GTK3_LIBS to avoid the need to call pkg-config.
| See the pkg-config man page for more details.
| make: *** [all] Error 1
`----
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The tuning file for PowerPC e300c3 is soft-float. In OE-classic it was hard-
float and it should be as the c3 has an fpu. I have modified the tuning file
to include both a hard-float version (using the existing ppce300c3 name) and
an optional soft-float version (called ppce300c3-nf).
The following patch also passes a "--with-cpu=e300c3" argument to GLIBC.
For this to have any effect the sqrt/sqrtf implementations added by the
"glibc.fix_sqrt2.patch" are required and also an additional "Implies" file
(added to the mentioned patch as a separate patch for eglibc_2.19).
Tested with eglibc 2.19 on PowerPC MPC5125.
Signed-off-by: Mats Karrman <mats.karrman@tritech.se> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ross Burton [Tue, 1 Apr 2014 16:23:36 +0000 (17:23 +0100)]
gdk-pixbuf: add an option so that loader errors are fatal
So that gdk-pixbuf-query-loader failures can be identified as such (and executed
later, or run on the target) add a magic environment variable return loader
failures from main().
Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ming Liu [Fri, 28 Mar 2014 09:43:08 +0000 (17:43 +0800)]
libpam: fix multilib packaging issue for pam-plugins
libpam might miss ABI specific dependencies for pam-plugins-*, for RPM uses
generic names to check the packages depending on it and doesn't consider the
arch, which will lead to packaging issues in mulbilib build.
pam_plugin_hook is added because the plugin packages are dynamically
generated, so we need to manually process multilib names by add baselib to
RPROVIDES/RDEPENDS as ABI specific tag.
Signed-off-by: Ming Liu <ming.liu@windriver.com>
I worked with Ming Liu on this particular issue. You may wonder why
this is necessary let me attempt to explain the underlying causes.
In deb/ipk on a multilib package, the package name has specific multilib
references in it. I.e. the alternative libraries start with something
like lib32-... This was done primarily because deb/ipk do not allow two
packages with the same name (but different architectures) to be
installed at the same time. So the name has to be unique.
In RPM however, the names of the packages and matches with the
architectures and if they are not the same we can do these multilib
installs. This matches the behavior of other RPM based distributions
and in many ways the tools people are used to working with RPM. For the
most part this works fine in multilib configurations because additional
per-file dependencies are added that capture the shared library
dependencies with ABI specific information. This unfortunately fails in
a few cases where plugins are dynamically loaded via dlopen -- such as
libpam.
One possible fix is simply to follow the deb/ipk package naming, but
this causes a design advantage of rpm. When a package has a dependency
on 'bash', we really don't care what bash is installed, only that -a-
bash is installed. In the deb/ipk case, the lib32- packages would end
up with a lib32-bash dependency and you could potentially end up with
two 'bash' packages being installed.
So the fix I recommended for the issue was to add the baselib path to
the internal dependencies. Since we know that the libpam installed in
'lib' needs the modules that were compiled to also work with the 'lib'
version of libpam. While the libpam in 'lib64' need the modules to work
with the 'lib64' version of the plugins.
Existing dependencies are preserved so there is no impact in the ipk/deb
case, the RPM case is resolved as the additional dependency information
is now present for the package manager to select the package we really
want.
If anyone else has a suggestion for an alternative fix, we're interested
-- but this is the best answer we could come up with. (If any of the
above should be added to the commit message, the YP bug, or
documentation, please let me know and I'll make sure it gets added.)
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
[YOCTO #4532] Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ting Liu [Fri, 28 Mar 2014 09:42:40 +0000 (17:42 +0800)]
wayland-native: disable unused macro checks to fix build issue on Centos5.x
We only build wayland-native for the scanner, so disable the bits we
don't actually need. This avoid build issue on older distro such as
Centos 5.x:
| error: 'O_CLOEXEC' undeclared (first use in this function)
| error: sys/timerfd.h: No such file or directory
| error: 'CLOCK_MONOTONIC' undeclared (first use in this function)
| error: 'TFD_CLOEXEC' undeclared (first use in this function)
| error: 'SFD_CLOEXEC' undeclared (first use in this function)
Signed-off-by: Ting Liu <b28495@freescale.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Fri, 28 Mar 2014 09:42:41 +0000 (17:42 +0800)]
kmod: fix O_CLOEXEC not supported on old kernel
O_CLOEXEC is introduced from Linux 2.6.23, so old kernel doesn't have
it, we need check before use.
This patch is much more like a workaround, since it may need fcntl() use
FD_CLOEXEC to replace.
Signed-off-by: Ting Liu <b28495@freescale.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jiang Lu [Fri, 28 Mar 2014 09:42:44 +0000 (17:42 +0800)]
Qemu:Arm:versatilepb: Add memory size checking
The machine can not work with memory over 256M, so add a checking
at startup. If the memory size exceed 256M, just stop emulation then
throw out warning about memory limitation.
Signed-off-by: Jiang Lu <lu.jiang@windriver.com> Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Jeff Polk [Fri, 28 Mar 2014 09:42:43 +0000 (17:42 +0800)]
qemu: Add addition environment space to boot loader qemu-system-mips
The qemu mips malta base board boot loader uses environment strings
with a max length of 256 bytes which is not long enough to accommodate
a long NFS path in addition to the normal kernel boot command line
arguments.
The solution is to expand the environment string length to 1024 bytes.
Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Roy Li <rongqing.li@windriver.com> Signed-off-by: Jeff Polk <jeff.polk@windriver.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Cristian Iorga [Mon, 31 Mar 2014 09:51:21 +0000 (12:51 +0300)]
core-image-lsb: enforce pam as a needed distro feature
core-image-lsb only gave a warning:
"WARNING: Building libpam but 'pam' isn't in DISTRO_FEATURES,
PAM won't work correctly"
when the proper DISTRO was not set for it.
default choice would be DISTRO = "poky-lsb",
but not necessarily, depending on each custom distro.
This fix will enforce the proper usage of pam
as a distro feature for core-image-lsb by giving
an error instead of just a warning.
Fixes [YOCTO #6073]
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 1 Apr 2014 10:08:58 +0000 (11:08 +0100)]
image/image-prelink/image-mklibs/sanity: Drop pointless EXPORT_FUNCTIONS
I'm sick of seeing people adding to EXPORT_FUNCTIONS in these classes
when they clearly have no idea what it does.
Worse, these uses of it are all broken, the naming is incorrect and
they do nothing. Lets remove them and try and preserve any remaining
part of my sanity.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stefan Stanacar [Tue, 1 Apr 2014 10:00:30 +0000 (13:00 +0300)]
qemux86-64: re-enable paravirt guest, bring it in sync with qemux86
Seems wrong that qemux86 has this enabled and qemux86-64 doesn't.
Also this will allow people to use kvm with -cpu=host.
Right now, runqemu qemux86-64 kvm uses -cpu=kvm64 because without this
feature you can't use cpu=host on newer host kernels (>= 3.8).
This basically reverts poky e6149ec6c4c14d3a939022cdc29ac94dced836dd /
oe-core 64749308fadabb4aa7c39f360c6395827bc5eb3a
The reason of that commit (which is more than a year old) was that on
the AB running old kernels (2.6.37) we would see occasional shutdown failures.
(but if memory serves me right the fix might have been just a coincidence).
I've tested this change with by:
- run tests on runqemu qemux86-64 (without kvm) (300 seconds)
- run tests on runqemu qemux86-64 kvm (which uses by default cpu=kvm64) - (tests
took 20 seconds)
- run tests on runqemu qemux86-64 kvm with cpu=host - (tests took 18 seconds)
[ YOCTO #5956 ]
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Kai Kang [Tue, 1 Apr 2014 09:09:50 +0000 (17:09 +0800)]
xorg: Fix for CVE-2013-6424
Integer underflow in the xTrapezoidValid macro in render/picture.h in X.Org
allows context-dependent attackers to cause a denial of service (crash) via
a negative bottom value.
Signed-off-by: Baogen Shang <baogen.shang@windriver.com> Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Saul Wold [Mon, 31 Mar 2014 17:37:38 +0000 (10:37 -0700)]
image.bbclass: add function to disable SSH DNS Lookup for Qemu
This function disables the reverse DNS lookup on QEMU targets to reduce the
delay when using static IP address. By disabling DNS lookup we can save a great
deal of time during automated testing on the autobuilder (on the order of ~400
seconds per ssh tranaction). This is seen when using the testimage, there is a
delay getting logged-in from the server to target.
It's enabled for all qemu imgaes by default and can be overridden by setting
the SSH_DISABLE_DNS_LOOKUP variable.
[YOCTO #5954]
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Duplicate parameters in the tune args are repeated in the
MULTILIB_OPTIONS variable. This leads to incorrect configurations
if the order of the parameters is bad.
(Eg. "mhard-float m32/mhard-float m64" leads to an incorrect config)
This patch finds the common parameters and removes the duplicates.
Signed-off-by: Alexandru-Cezar Sardan <alexandru.sardan@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Mon, 31 Mar 2014 17:56:33 +0000 (13:56 -0400)]
linux-libc-headers: remove 3.10 recipe
3.14 is now the reference for libc-headers. After building and booting 3.x based
BSPs against the 3.14 headers, we can safely remove the old version and patches
that are now part of the mainline kernel.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Mon, 31 Mar 2014 17:56:30 +0000 (13:56 -0400)]
linux-libc-headers: make compression format configurable
As of the 3.13 kernel bz2 compressed tarballs are not available. To support
older header tarballs, and newer ones that require the 'xz' compressed
bundles, we can break out a variable that allows versioned libc headers to
select the archive format that works.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stefan Stanacar [Sun, 30 Mar 2014 14:47:35 +0000 (17:47 +0300)]
lib/oeqa: add a test target controller for EFI targets
The purpose of this module is to deploy a test image on a EFI-enabled hardware
and run our runtime tests. A bit of background:
- testimage.bbclass uses the concept of TEST_TARGET which is a class name
that is responsible for target deploying. A layer can provide
it's own TEST_TARGET. Right now has OE-core has a QemuTarget and a SimpleRemoteTarget
(ssh into an already up and running machine and run tests), the default one being qemu.
- basically testimage does something like:
target.deploy()
try:
target.start()
runTests()
finally:
target.stop()
This module assumes a running EFI machine with gummiboot as bootloader and
core-image-testmaster installed (or similar). Also your hardware under test has
to be in a DHCP-enabled network that gives it the same IP for each reboot.
One time setup (master image):
- build core-image-testmaster with EFI_PROVIDER = "gummiboot"
- install the image on the target
Test image setup:
- build your test image, e.g core-image-sato as you usually do, but with these in local.conf:
IMAGE_FSTYPES += "tar.gz"
- Now run the tests:
INHERIT += "testimage"
TEST_TARGET = "GummibootTarget"
TEST_TARGET_IP = "192.168.2.3"
bitbake core-image-sato -c testimage
Other notes:
- TEST_POWERCONTROL_CMD (togheter with TEST_POWERCONTROL_EXTRA_ARGS) can be a command that runs on the host and does power cycling.
The test code passes one argument to that command: off, on or cycle (off then on). In my case I use something like
TEST_POWERCONTROL_CMD="powercontrol.exp test 10.11.12.1 nuc1" in local.conf.
Basically my expect script does: 'ssh test@10.11.12.1 "pyctl nuc1 <arg>" and runs a python script there that controls power for a label called nuc1'.
The reason why my expect script has to ssh into another machine is because of network topology, and that machine is the one actually connected
to the test rack and the power strip. That's why TEST_POWERCONTROL_CMD and _ARGS need to be customized for one's setup, the only requirement being
that it accepts: on/off/cycle as the last argument.
- if no command is defined it would use classic reboot. This is fine as long as the machine
actually reboots (as in the ssh test hasn't failed), but it's useful for "simple-setup-with-one-board-on-the-desk" scenario, where
some manual interaction is okay from time to time.
[YOCTO #5614]
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stefan Stanacar [Sun, 30 Mar 2014 14:47:34 +0000 (17:47 +0300)]
recipes-extended: add master image for testing purposes
Add a custom recipe with custom initramfs and installers, that makes
it easy to deploy a master image for testing purposes.
We need a master image running on the target hardware, that should be a
known good build, with a set of utilities installed so that we use it
to deploy the images under test.
This core-image-testmaster recipe isn't a requirement per se, any image can
be used as long as the required conditions are met.
The test code assumes:
- that the device has a second rootfs labeled as testrootfs
- it has a properly configured bootloader entry (called test) for the second kernel and rootfs
- the master image has a /etc/masterimage file so it can differentiate between master
and test images
- the master image has tar, mount, bash (basically the normal linux utilities not the busybox
ones)
[YOCTO #5614]
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Stefan Stanacar [Sun, 30 Mar 2014 14:47:33 +0000 (17:47 +0300)]
initrdscripts: add install scripts with a second rootfs
These are meant to be used by a master image, for a simple
initial setup.
The install scripts are similar to the default ones, but:
- custom partitioning, replaces the swap partiton with a second root filesystem
- adds labels to the partitions
- preconfigures a boot loader entry for the second rootfs
Part of [YOCTO #5614]
Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Joe Slater [Sun, 30 Mar 2014 20:48:45 +0000 (13:48 -0700)]
openssh: build without libbsd
We do not DEPEND on libbsd, so we do not want to
build with it just because libutil.h is found by configure.
As noted in the patch, specifying --disable-libutil to
configure does not work, so we provide "cached" configure
variables.
Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 31 Mar 2014 10:29:36 +0000 (11:29 +0100)]
classes/sanity: check if SDKMACHINE setting has taken effect
If you try to set SDKMACHINE in a distro configuration file, it won't
take effect because by the time that is parsed the line in bitbake.conf
which includes the appropriate conf file for SDKMACHINE has already been
parsed. Check that SDK_ARCH has changed from its default value and show
an error if it hasn't in order to catch this misconfiguration.
Fixes [YOCTO #5861].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
yanjun.zhu [Mon, 31 Mar 2014 14:41:08 +0000 (22:41 +0800)]
pseudo-1.5.1: keep install command directory mode
When install command sets the created directory mode, pseudo will change
the mode of the directory to 0700 incorrectly. Backport patch to fix it.
Signed-off-by: yanjun.zhu <yanjun.zhu@windriver.com> Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Matthieu Crapet [Mon, 31 Mar 2014 16:14:57 +0000 (18:14 +0200)]
libomxil-0.9.3: fix configure unrecognised option
Drop --disable-ffmpegcomponents which is deprecated since libomxil-bellagio-0.9.1
Explicitly disable doc generation to prevent using doxygen from build machine.
Components are external and are available separately here:
http://sourceforge.net/projects/omxil/files/components/
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>