--disable-Werror: don't treat all warnings all errors (which breaks compilation).
PYTHON=/dev/null: this prevents distcc from detecting the host Python and trying
to build its include server using the host Python. This disables the include
server completely. If the include server is needed, that should be the object of
another patch (and would introduce a dependency on python for distcc).
The 'distcc-avahi' and 'makefile-param-order' patches are not needed anymore, as
they were merged upstream.
In cases where other initramfs modules need to rely on
udev running (ie in my case I have to load firmware on
a device that is slow to start) there needs to be a way
to keep it running during the lifecycle of the initramfs
but still be shut down before swith_root is called. I
added a module_pre_hook that will shut down udev before
the finish module is called.
Signed-off-by: Ian Reinhart Geiser <igeiser@devonit.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Laurentiu Palcu [Mon, 4 Feb 2013 11:36:51 +0000 (13:36 +0200)]
update-modules: remove recipe from oe-core
update-modules is not used anymore. Any references to it have been
removed, some time ago, from all recipes/bbclasses. It stayed in oe-core
in case anybody still wanted to use it. Time for it to go.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Constantin Musca [Mon, 17 Dec 2012 11:46:20 +0000 (13:46 +0200)]
gcc: enable multilib for target gcc
- add a task to setup multilib configuration for target gcc
- this commit adapts Nitin Kamble's work to gcc 4.7
- use a hash for storing arch-dependent multilib options
- patch gcc in order to use the multilib config files from the
build directory
Tests:
root@qemux86-64:~# gcc -m64 t.c -o t
root@qemux86-64:~# file t
t: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped
root@qemux86-64:~# ./t
Hello World !
root@qemux86-64:~# gcc -m32 t.c -o t
root@qemux86-64:~# file t
t: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.16, not stripped
root@qemux86-64:~# ./t
Hello World !
[YOCTO #1369]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Khem Raj [Sun, 27 Jan 2013 06:20:45 +0000 (22:20 -0800)]
module-base.bbclass: Call make instead of oe_runmake in do_make_scripts
This makes the external module compilation a bit more robust for
cases where external module recipes may be passing extra params
to make via EXTRA_OEMAKE, and more than often one needs to pass
M=$(PWD) when building external modules and if we use EXTRA_OEMAKE
that would mean that it would appear in do_make_scripts as well
and since we are only changing the reference kernel src tree here
it will not run the make scripts in desired directory.
It is also well explained in top makefile in kernel tree around
line# 1335 in 3.4
|else # KBUILD_EXTMOD
|
|###
|# External module support.
|# When building external modules the kernel used as basis is considered
|# read-only, and no consistency checks are made and the make
|# system is not used on the basis kernel. If updates are required
|# in the basis kernel ordinary make commands (without M=...) must
|# be used.
Therefore passing M=... will not do the updates in the basis
kernel as expected with 'make scripts' so we have to bypass EXTRA_OEMAKE
Saul Wold [Wed, 30 Jan 2013 23:05:49 +0000 (15:05 -0800)]
module.bbclass: Allow for modules to be packaged seperate from ${PN}
This patch will allow recipes that provide kernel modules to package
the module or modules in specific packages. That list is contained in
MODULE_PACKAGES, this defaults to to preserve the current behavior.
The package can also define MODULE_FILES to specify files.
Martin Jansa [Tue, 29 Jan 2013 21:17:20 +0000 (22:17 +0100)]
license: fix LICENSE_CREATE_PACKAGE to stay disabled by default
* as reported by Enrico on #oe
11:06:50 < ensc|w> JaMa: might this be caused by dc78ef91a2bf01efb8028c9afbe69e506e016265
which checks for 'd.getVar('LICENSE_CREATE_PACKAGE', True)' evaluating to 'True' for every
string (including the default 0)
Martin Jansa [Mon, 28 Jan 2013 17:47:41 +0000 (18:47 +0100)]
systemd: bump PE to provide upgrade path from meta-systemd recipe
* 197 sorts lower then v196.*, 22 ERRORs are shown when buildhistory is
used:
ERROR: Package version for package udev-dbg went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package udev went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package udev-consolekit went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package udev-utils went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package udev-systemd went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-gui went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-vconsole-setup went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-initramfs went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-analyze went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-dbg went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-staticdev went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-dev went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-doc went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd-locale went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package systemd went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package libgudev-1.0 went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package libsystemd-daemon went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package libsystemd-id128 went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package libsystemd-journal went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package libsystemd-login went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
ERROR: Package version for package libudev went backwards which would break package feeds from (0:v196-105-gdecd634-r20.0 to 0:197-r1.0)
Tom Zanussi [Sun, 27 Jan 2013 14:45:14 +0000 (08:45 -0600)]
oprofile: remove AX_KERNEL_VERSION from acinclude.m4
The version of this macro in acinclude.m4 is preventing the correct
version in the package's kernelversion.m4 from being used.
Since the version in acinclude.m4 includes the obsolete config.h, any
test that uses it with newer (> 2.6.19) kernels fails. In the case of
oprofile it means that perf_events support is never detected and thus
'legacy oprofile' is always built.
Fixing this allows the new perf_events 'operf' support to be built.
Tom Zanussi [Mon, 28 Jan 2013 19:47:22 +0000 (13:47 -0600)]
oprofile: add kernel dependency
oprofile-0.9.8 adds 'operf' which depends on the kernel's perf_events
subsystem to be present when building, which adds the kernel
dependency that we specify in a new DEPENDS for oprofile-0.9.8.
Kang Kai [Tue, 29 Jan 2013 05:47:50 +0000 (13:47 +0800)]
busybox: update test case du-k-works
busybox test case du-k-work fails on ext3/4 image whose size less than
512M. Add patch testsuite-du-du-k-works-fix-false-positive.patch to fix
it and it has been merged by upstream.
Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bogdan Marinescu [Tue, 29 Jan 2013 09:05:02 +0000 (11:05 +0200)]
python-smartpm: multilib fixes
To fix some multilib issues, change the way the RPM backend decides
if two packages can coexist: if they have a different architecture,
automatically assume that they can coexist (which is fundamental for
multilib).
Richard Purdie [Tue, 29 Jan 2013 14:12:23 +0000 (14:12 +0000)]
package.bbclass: Use expanded RDEPENDS in read_shlibdeps
We may as well expand the RDEPENDS when reading and writing as this function does.
if we don't do this, we could accidentally duplicate data and it also turns out
to be much less efficient.
Richard Purdie [Tue, 29 Jan 2013 14:10:30 +0000 (14:10 +0000)]
package: Create global package file list and use throughout PACKAGEFUNCS
Currently we do a signficant amount of tree traversal in many different places
which in inefficient. We can assume that the files don't change and cache the
file list which gives an efficiency improvement which this patch does using
a global variable.
Richard Purdie [Tue, 29 Jan 2013 13:59:35 +0000 (13:59 +0000)]
package.bbclass: Tweak PACKAGEFUNCS
Move package_rename_hook call into PACKAGEFUNCS and also move package_get_auto_pr
to a more appropriate execution point, grouping package metadata handling
functions together.
Richard Purdie [Tue, 29 Jan 2013 13:55:59 +0000 (13:55 +0000)]
package.bbclass: Split out package_fixsymlinks function
The symlink handling code doesn't need to being part of populate_packages
and is logically separate so split it out into a separate function,
package_fixsymlinks.
Richard Purdie [Tue, 29 Jan 2013 13:51:06 +0000 (13:51 +0000)]
package.bbclass: Avoid copying the datastore for FILES handling
There is no real point in adjusting overrides and creating a copy of the datastore,
just to access a single variable. We can do this just as easily with a slightly
more complicated getVar call. This improves performance.
Richard Purdie [Tue, 29 Jan 2013 13:47:17 +0000 (13:47 +0000)]
package.bbclass: Add a shortcut exit from the mkdir function
The mkdir function iterates over strings with many different operations,
even if ultimately the target already exists. This adds a check to the start
of the function so we don't waste time when the target already exists.
Richard Purdie [Tue, 29 Jan 2013 13:45:17 +0000 (13:45 +0000)]
package.bbclass: Improve kernel module handling
Currently the kernel module handling consists of several special cases
and has its own path walking. This refactors the code to handle them in
a more standardised way which is also a bit more efficient.
Richard Purdie [Tue, 29 Jan 2013 13:43:15 +0000 (13:43 +0000)]
package: Rename splitfile functions to something more descriptive
The splitfile and splitfile2 function names are confusing and the comments
are also misleading, hard to understand or plain incorrect. This tries to
improve things.
Hongxu Jia [Fri, 1 Feb 2013 02:38:17 +0000 (10:38 +0800)]
dpkg-native:fix dpkg-scanpackages error at deb image creation time on Fedora 17
Invoking dpkg-scanpackages on Fedora 17 to build deb image meets such an error:
Can't locate Dpkg.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/loc
al/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr
/lib64/perl5 /usr/share/perl5.) at tmp/sysroots/x86_64-linux/usr/bin/dpkg-sca
npackages line 27.
1. The dpkg-scanpackages is invoked at deb image creation time and it is built
by dpkg-native. The dpkg-scanpackages is a perl script and import module `Dpkg'.
2. The Dpkg.pm has been installed in perl's staging dir at dpkg-native compiling
time. Such as `tmp/sysroots/x86_64-linux/usr/lib/perl-native/perl/Dpkg.pm'
3. The dpkg-native uses create_wrapper to relocate to perl-native if perl-native
has been built. If perl-native isn't built, it will use the host Dpkg as default.
4. If dpkg-native is built on a new build envionment which means perl-native doesn't
exist before, and the build system doesn't install dpkg (such as Fedora 17), the
dpkg-scanpackages could not work correctly.
5. Modify dpkg-native's depends, change `perl-native-runtime' to `perl-native', Let
perl-native automatically be built before building dpkg-native.
[YOCTO #3817]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Otavio Salvador [Fri, 1 Feb 2013 02:36:15 +0000 (00:36 -0200)]
mini-x-session: Fix runtime when using without session contents
The script where behaving badly when the session directory does not
exist and also lacking a dependency to 'sudo'. Instead of adding a
dependency on 'sudo' we use 'su' as done in xserver-common.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Ming Liu [Fri, 1 Feb 2013 02:27:40 +0000 (10:27 +0800)]
connman-gnome: Add DEPENDS on intltool-native
When 'bitbake -c configure connman-gnome' is executed from scratch, it fails
with syntax error parsing `IT_PROG_INTLTOOL(0.35.0)' in configure.in. This
is caused by its definition is not included into aclocal.m4
Adding intltool-native to DEPENDS is gonna fix it.
[YOCTO #3815]
[ CQID: WIND00401118 ]
Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Phil Staub [Thu, 31 Jan 2013 16:35:25 +0000 (08:35 -0800)]
libaio: Fix MIPS system call interface
The io_syscallX wrappers in syscall-mips.h discard error return status
by overwriting the value returned in v0 from the system call with -1.
Modify this behavior by returning the negative of the return value on
error (as identified by a3 != 0). This convention is consistent with
the behavior observed in syscall-ppc.h.
For a description of the MIPS system call interface, see:
http://www.linux-mips.org/wiki/Syscall
Signed-off-by: Phil Staub <Phil.Staub@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Thu, 31 Jan 2013 18:31:04 +0000 (13:31 -0500)]
multilib: skip packages that provide virtual/kernel
Rather than keying on recipes that inherit kernel.bbclass, we should
be checking for providers of virtual/kernel when skipping kernel
recipes in multlib builds.
Not all providers of virtual/kernel inherit kernel.bbclass (notably
linux-dummy), so checking on the provider is a more complete check.
We need to be sure to check for inheritance of module-base as well, this
allows for packages that provides modules to avoid the multilib renaming.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Mark Asselstine [Thu, 31 Jan 2013 18:31:03 +0000 (13:31 -0500)]
kernel: avoid copying unnecessary files during do_install
kernel_do_install() populates $kerneldir with files needed to build
external modules. To accomplish this there are several copy commands
to get source from the kernel source tree and build trees after which
a 'clean' is performed. Since we are copying from the build tree we
get about 1G of .o and .cmd files copied over only to have them
removed when we clean. This adds additional IO overhead as well as
overhead caused by pseudo. By avoiding copying these files in the
first place we get multiple gains:
* avoid initial copy
* avoid file deletes during clean
* reduce pseudo overhead
Additionally we are making use of cpio vs cp which tends to be
significantly faster at performing copies.
With these changes I observe a 15-30% decrease in the time to complete
the do_install() operation on the kernel.
[YOCTO #3517]
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* By default enable only swrast. This needs to
be here or for some reason qemuarm tries to
detect the intel dri libraries and fails.
* For x86 and x86-64 explicitly set all of
the supported drm drivers.
builds properly with qemux86 qemuarm and qemux86-64
Signed-off-by: Ian Reinhart Geiser <igeiser@devonit.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Marko Lindqvist [Fri, 25 Jan 2013 22:26:37 +0000 (00:26 +0200)]
harfbuzz: fix install of version.h
version.h is listed both in pkginclude_HEADERS (via $HBHEADERS) and
nodist_pkginclude_HEADERS. This double listing is likely cause of
the make install error:
/usr/bin/install: cannot create regular file `.../harfbuzz/0.9.10-r0/image/usr/include/harfbuzz/hb-version.h': File exists
Just remove the nodist_pkginclude_HEADERS entry. We're not creating
the tarball, and listing version.h here wouldn't prevent the other
listing from including it to tarball anyway.
Signed-off-by: Marko Lindqvist <cazfi74@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Richard Purdie [Tue, 29 Jan 2013 13:39:08 +0000 (13:39 +0000)]
insane.bbclass: Fix incorrect getVar call
On a trace I was a bit puzzled why getVar was making 180 calls to len(d).
This is an expensive operation that should be very rarely called and
certainly not by getVar. In perl's do_package it was resulting in
~1.5 million function calls from those 180 cases.
Ultimately this typo was why. Lets fix it and save the CPU cyles.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Saul Wold [Tue, 29 Jan 2013 22:38:11 +0000 (14:38 -0800)]
module.bbclass: Don't add pkg_postinst/pkg_prerm to all packages in recipe
The code in module.bbclass was appending the pkg_postinst and
pkg_prerm to all packages that are part of a given recipe, meaning
that the -lic, -dev, -doc, ... packages all got the scriptlet
This change uses only which macthes with the RDEPENDS and FILES
already used in module.bbclass.
The failure was that rootfs creation would fail due to the -lic package
being installed before the kernel and the script would fail.
[YOCTO #3803]
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Saul Wold [Tue, 29 Jan 2013 23:04:26 +0000 (15:04 -0800)]
rootfs_rpm: Escape the backtick to ensure the ls runs on the target
This change ensures that the ls /etc/rpm-postinsts runs in the target
at first boot time, rather than at the creation time of the script on
the host.
This was causing the following error in the rootfs log:
+ install -d /srv/ssd/sgw/machines/fri2/tmp/work/fri2-poky-linux/core-image-minimal/1.0-r0/rootfs//etc/rcS.d
+ i=
+ ls /etc/rpm-postinsts/
ls: cannot access /etc/rpm-postinsts/: No such file or directory
Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Andreas Müller [Fri, 18 Jan 2013 12:41:49 +0000 (13:41 +0100)]
package.bbclass: remove RRECOMMENDS on base packages for locale packages
As long as we support only one locale package per recipe this leads to unwanted
packages in images. This patch was motivated by samba (meta-oe): only wanting
libsmbclient one gets full samba server into the image. For my standard image
the follwing package were removed by this patch: