This patch fixes building this tool in cross environment
It uses tools such as CC, HOST_CC, I386_CC etc.
and as long as you are building native it does not
matter since they all are same namely 'gcc' but
in cross compiling that wont work. So we make the
makefiles and configure scripts aware of that fact
Upstream hosts this program in a svn repo. So change
the SRC_URI to official svn repo. With git we were
checking out a lot more that just mkelfimage which
is not required.
There were unpackaged empty directories too so
we make sure they are removed as well.
kxgettext.o is generated when building ppc kernels
so we end up with packaging errors like
> ERROR: QA Issue: Architecture did not match (20 to 62) on
> /work/virtex5-poky-linux/linux-xilinx-2.6.38-r00/packages-split/kernel-dev/usr/src/kernel/scripts/kconfig/kxgettext.o
This patch adds a fix where arm endianness is detected correctly
secondly it adds a missing dependency on libatomics-ops
which was found when build in clean tmpdir and populating
it from a valid sstate.
lib/oe/sstatesig.py: Exclude git-native from sstate checksum
gcc exposed this issue where cross gcc recipes were not having
same task checksums as libgcc or gcc-runtime the target recipes
which use same shared workdir and it was triggering the unpack
fetch and patch tasks to reexecute and hence the trouble
Now that we have more than 1 package to consider lets combine
the check
These patches are backport from gcc mainline
they fix issues where eglibc was not compilable
for e5500+ due to missing vector intrinsics
It obsoletes the existing e5500 patch
do_headerfix task is essentially editing configuration
headers in sources which can well be maintained as a
patch which is easier to spot errors (if any) than
dynamically edited source tree
pam_unix_acct.c: In function '_unix_run_verify_binary':
pam_unix_acct.c:97:19: error: storage size of 'rlim' isn't known
pam_unix_acct.c:106:19: error: 'RLIMIT_NOFILE' undeclared (first use in
this function)
pam_unix_acct.c:106:19: note: each undeclared identifier is reported
only once for each function it appears in
1.49.0 is not buildable with eglibc 2.16 since
it exposes a define TIME_UTC which is also used
in boost until 1.50.0 when it was renamed to
TIME_UTC_ so instead of porting needed patches
we upgrade boost to latest release
gettext,m4,augeas,gnutls: Account for removal of gets in eglibc 2.16
These recipes use gnulib which needs this change to use gets
when its defined and not otherwise. Until that change goes into
gnulib and then all these package upgrade gnulib in their sourcebase
we patch them
Martin Jansa [Mon, 16 Jul 2012 08:25:49 +0000 (10:25 +0200)]
libx11: fix makekeys build
* on hosts without libx11 installed it fails with
| makekeys.c:33:27: fatal error: X11/Xresource.h: No such file or directory
since oe-core rev 52d4ff7b35602faa52360a3e7a800891ef60c739
* upstream added -I$(top_srcdir)/include in 24283d40b1e4314c6647dda49d2a159833341a8b
to ensure that right Xresource.h version is used, but we're building
makekeys outside source tree (x11_disable_makekeys.patch), so we need
to pass -I${S}/include in our makekeys build too
* building makekeys outside source tree isn't probably needed anymore
and recipes should be updated to reflect that, upstream fixes:
https://bugs.freedesktop.org/show_bug.cgi?id=22584
http://cgit.freedesktop.org/xorg/lib/libX11/commit/src/util/Makefile.am?id=b2487d07f7b355f230a56e32c763acd08862735c
http://cgit.freedesktop.org/xorg/lib/libX11/commit/src/util/Makefile.am?id=24283d40b1e4314c6647dda49d2a159833341a8b
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
/home/kraj/work/angstrom/sources/openembedded-core/build/tmp-eglibc/work/armv5te-oe-linux-gnueabi/gdb-7.4.1-r0.0/gdb-7.4.1/gdb/linux-nat.h:79:18:
error: field 'siginfo' has incomplete type
mirrors: Add debian archive snapshot mirrors to search list
I ran across this problem when apt 0.7.14 was not fetchable
from regular debian mirrors and existing snapshot mirror
did not have it either since we did not use proper syntax
so it was not hitting that.
Ting Liu [Fri, 13 Jul 2012 05:14:25 +0000 (00:14 -0500)]
lsof: define linux C library type when using eglibc
lsof tries to compile a temp c source file and execute the binary to
determine linux C library type (file Configure, line 2689-2717).
It is inpracticable for cross-compilation and may have build issue on
some distros since it depends on host settings.
Fix below error when building for 64bit target on 64bit host:
[...]
| dsock.c:481:44: error: 'TCP_LISTEN' undeclared (first use in this function)
| dsock.c:482:45: error: 'TCP_CLOSING' undeclared (first use in this function)
[...]
| make: *** [dsock.o] Error 1
The actual issue exists in do_configure:
[...]
Testing C library type with cc ... done
Cannot determine C library type; assuming it is not glibc.
Which is in turn caused by missing 'gnu/stubs-32.h" when compiling
the temp c source file on host:
[...]
fatal error: gnu/stubs-32.h: No such file or directory compilation terminated.
file gnu/stubs-32.h is provided by 32bit glibc.
Signed-off-by: Ting Liu <b28495@freescale.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Richard Purdie [Thu, 12 Jul 2012 15:25:47 +0000 (16:25 +0100)]
crosssdk/nativesdk: Ensure EXTRA_OECONF_FPU is unset
If EXTRA_OECONF_FPU is left set, certain ARM variables related to hard-float
can get pulled in and trigger rebuilds of the crosssdk code. The best solution
is to simply force the variable to a known correct value for the SDK targets
currently supported in the same way as TARGET_FPU.
There is some slight rearrangement of the gcc code to ensure the variable is
always used to call the fpu function.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Richard Purdie [Thu, 12 Jul 2012 15:18:23 +0000 (16:18 +0100)]
sstate.bbclass: Move crosssdk before cross to ensure correct variables are set
There was a bug showing up where the crosssdk recipes were being installed as machine
specific in the sstate-control directory. This turned out to be due to the architecture
fields used by sstate being set incorrectly. The problem is that the crosssdk inherits
the cross class. It therefore needs to be listed in this if statement block before
the cross check, not after.
This should resolve some package architecture issue of crosssdk sstate files.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
sysvinit-inittab_2.88dsf.bb: Allow multiple serial port consoles to be defined
Set SERIAL_CONSOLES if you want to define multiple serial consoles, also if
you need to check for the presence of the serial consoles you can also define
SERIAL_CONSOLES_CHECK to determine if these are present when you boot. This
will prevent error message that pop up when the serial port is not present.
Andrei Gherzan [Thu, 12 Jul 2012 18:05:56 +0000 (21:05 +0300)]
image_types.bbclass: Default XZ_COMPRESSION_LEVEL to -e -6
Having XZ_COMPRESSION_LEVEL on -e -9 and -T 0 will make xz eat more
than 6Gb memory. Reduce this to -6 to make xz to use about 471Mb
on the tested machine.
Andrei Gherzan [Thu, 12 Jul 2012 14:31:54 +0000 (17:31 +0300)]
image_types.bbclass: Fix COMPRESS_CMD for xz to redirect compressed data to file
Having -c modifier makes xz to output the compressed data to stdout. In this
way the needed data will be in the do_rootfs log.
Redirect data to ${IMAGE_NAME}.rootfs.${type}.xz .
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Xin Ouyang [Thu, 21 Jun 2012 07:13:54 +0000 (15:13 +0800)]
cpan.bbclass: Fix CCFLAGS.
We should not just replace CCFLAGS with CFLAGS while compiling, because
this may cause run-time errors with perl's DynaLoader.pm.
Tested on qemux86 with new libnet-libidn-perl bb recipe:
root@qemux86:~# perl -e "use Net::LibIDN"
Not a CODE reference at /usr/lib/perl/5.14.2//DynaLoader.pm line 213.
END failed--call queue aborted at /usr/lib/perl/vendor_perl/5.14.2//Net/LibIDN.pm line 213.
Compilation failed in require at -e line 1.
BEGIN failed--compilation aborted at -e line 1.
Recently the tarball has been changing due the fact it gets rebuilt
nightly and timestamps are getting updated and changed internal to
the tarball. Moving back to SVN to try and address this.
Paul Eggleton [Mon, 9 Jul 2012 12:38:39 +0000 (13:38 +0100)]
classes/rootfs_deb: use more reliable check for package existence
It turns out "apt-cache showpkg" does return some information when a
package does not exist but another package recommends it, which can
occur for empty *-dev packages; so use "apt-cache policy" with a
different line count instead.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Peter Seebach [Wed, 11 Jul 2012 20:31:55 +0000 (15:31 -0500)]
package.bbclass: Allow overriding of debugedit starting path
In the usual case, the computed path used for debugedit to fix
up path references for the target filesystem is correct. However,
prebuilt binary components, such as prebuilt toolchains, can
have debug paths that do not reflect paths within the local
build directory. Providing an override lets us continue to use
the standard debugedit logic in package.bbclass.
Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
C language has 3 distinct char types:
char
unsigned char
signed char
A char has the same range of values as signed char on X86,
but same as unsigned char on ARM which made Slang's typecast()
and array_sort() unable to work for char value on ARM, since
Slang is assuming "char" as "signed char".
Now we change "char" as "signed char" explicitly in
util/mkslarith2.sl, and use it to regenerate src/slarith2.inc
Richard Purdie [Tue, 10 Jul 2012 13:31:33 +0000 (14:31 +0100)]
gconf: Disable gtk support
There are only a couple of helper utilities within gconf that need gtk+ as a
dependency and those are unused and pretty useless. We might as well drop
the dependency on gtk and allow more parallel builds by reducing dependency
bottlenecks.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Saul Wold <sgw@linux.intel.com>
rpm_5.4.9.bb: fix builds on systems with older libc
| dbconvert.o: In function `rpmdb_convert':
| /local/jenkins/jobs/yocto-upstream/workspace/label/master/machine/p4080ds/poky/master/tmp/work/x86_64-linux/rpm-native-5.4.9-r45/rpm-5.4.9/tools/dbconvert.c:126: warning: the use of `tempnam' is dangerous, better use `mkstemp'
| dbconvert.o: In function `main':
| dbconvert.c:(.text+0x923): undefined reference to `htobe32'
| dbconvert.c:(.text+0xaa4): undefined reference to `htole32'
| dbconvert.c:(.text+0xac9): undefined reference to `htole32'
Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
Raymond Danks [Tue, 10 Jul 2012 14:35:23 +0000 (08:35 -0600)]
mkelfimage: Upstream fixed packaging issue so upgrade to e1e6a91
Address QA issue: Files/directories were installed but not shipped.
New revision contains patch to mkelfimage removing
/usr/share/mkelfImage/elf32-i386 directory from Makefile install target.
http://review.coreboot.org/#/c/1195/
Signed-off-by: Raymond Danks <ray.danks@se-eng.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
package install failure on systems without /sbin/ldconfig
Package install failures due to issues in post install rules.
package_do_shlibs only looks for libraries in a directory "lib", this should be
modified to the variable baselib.
ldconfig_postinst_fragment failure observed on systems without /sbin/ldconfig
[ -x /sbin/ldconfig ] && /sbin/ldconfig
results in the post install rule returning a failure. Modify to
if [ -x /sbin/ldconfig ]; then /sbin/ldconfig; fi
Martin Jansa [Sat, 7 Jul 2012 08:31:54 +0000 (10:31 +0200)]
conf/machine: replace TUNE_CONFLICTS with TUNECONFLICTS
* it wasn't consistent with other machine configs
* reported 2 months ago..
http://lists.linuxtogo.org/pipermail/openembedded-core/2012-May/022154.html
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com>
gcc: gcc-cross-canadian: use correct location for libraries for powerpc64
This fixes the issue where gcc invokes the linker with an incorrect -L
library location and gives up because it can't find libraries. It was
looking in a /lib folder instead of /lib64
Signed-off-by: Matthew McClintock <msm@freescale.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Dennis Lan [Wed, 11 Jul 2012 07:49:54 +0000 (07:49 +0000)]
directfb: disable imlib2 explicitly
When HOST machine installed imlib2, compiling directfb in OE will
direct this library, and try to use it. This is wrong, since there is
no imlib in OE, so we should disable it explicitly here.
Error as following:
| idirectfbimageprovider_imlib2.c:64:20: fatal error: Imlib2.h: No such
file or directory
Config.log as following (which is wrong):
configure:19602: checking for imlib2-config
configure:19620: found /usr/bin/imlib2-config
configure:19633: result: /usr/bin/imlib2-config
Signed-off-by: Dennis Lan <dennis.yxun@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Robert Yang [Tue, 10 Jul 2012 09:35:50 +0000 (17:35 +0800)]
subversion: do_install failed (parallel issue)
install-neon-lib needs libsvn_delta-1.la which will be regenerated
during libsvn_delta-1.la's installation, if libsvn_delta-1.la is
in regenerating and at the same time install-neon-lib links it, the
error willl happen.
The error message is:
/bin/ld: cannot find -lsvn_delta-1
collect2: error: ld returned 1 exit status
This is a parallel issue, so it doesn't happen often.
Note:
The autoreconf doesn't generate build-outputs.mk, it would be generated
by autogen.sh (use build.conf as the input), but autogen.sh isn't
suitable for cross compiling, so both modified build-outputs.mk and
build.conf.
[YOCTO #2727]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tom Zanussi [Mon, 9 Jul 2012 17:07:11 +0000 (12:07 -0500)]
perf: add perf-tui feature
Add a new feature named 'perf-tui'. Adding this into the
PERF_FEATURES variable in perf.inc will enable the perf TUI (Text-base
UI) user interface on a target, which adds libnewt and turns on the
perf text UI options in perf, if perf is included in an image.
If 'perf-tui' isn't named as a feature (the default), the perf TUI
will be disabled and unavailable.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Tom Zanussi [Mon, 9 Jul 2012 17:07:10 +0000 (12:07 -0500)]
perf: add perf-scripting feature
Add a new feature named 'perf-scripting'. Adding this into the
PERF_FEATURES variable in perf.inc will enable perf scripting on a
target, which will turn on all the language bindings currently
available in perf (Perl and Python), if perf is included in an image.
If 'perf-scripting' isn't named as a feature (the default), all perf
language bindings will be disabled and unavailable.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Tue, 10 Jul 2012 17:11:04 +0000 (13:11 -0400)]
linux-yocto/3.4: perf, unionfs and yaffs2 fixes
Updating the 3.4 SRCREVs to pickup the following changes:
6297e4c perf: add sgidefs.h to for mips builds 69b7817 yaffs: add leading underscore to mtd_info function names 160f1ac yaffs: change type for mode to umode_t 2d875e8 Unionfs: use mode_t
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Allow Python.h to find the definitions it needs on mips i.e. get rid
of the error: "_ABIN32" is not defined.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Tue, 10 Jul 2012 16:22:50 +0000 (17:22 +0100)]
opkg: fix installation of dev / dbg packages
OE-Core revision ffe93e2a099e4cadb1829dc12a58a6d7bef9a5a7 moved opkg's
configuration file into /etc/opkg, and opkg always reads all files under
this directory even if -f is specified (as it is during do_rootfs in
order to specify our own generated config file), and this means that
after opkg-collateral is installed into the rootfs, this version of the
config is used, resulting in opkg ignoring the list of packages it has
already downloaded (since it now sees list_dir as /var/lib/opkg instead
of the default /var/lib/opkg/lists) and thus it fails to install any of
the "attemptonly" packages (including *-dev, *-dbg, etc.).
If we change the -f option to ignore configuration files in /etc/opkg
then we no longer have this problem.
Fixes [YOCTO #2595].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Richard Purdie [Tue, 10 Jul 2012 12:04:31 +0000 (12:04 +0000)]
libxml2: Fix libzypp ansidecl related build failures
cmake looks at all include statements, even if they're not used. To make
builds deterministic and avoid needing to add binutils as a dependency
for libzypp, completely remove the include from the header file, even if
it is never used.
This avoids issues where you'd build binutils, then libzypp, then remove
binutils (and hence ansidecl.h) and then recompile libzypp which would
still have the dependency and hence fail.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
core-image-*.bb: Remove usage of EXTRA_IMAGE_FEATURES from some .bb files
Replace the usage of EXTRA_IMAGE_FEATURES in a small number of .bb
files with IMAGE_FEATURES, and leave the use of EXTRA_IMAGE_FEATURES
for developers in their local.conf files, to avoid the possibility of
undesirable side effects.
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 9 Jul 2012 17:03:09 +0000 (18:03 +0100)]
core-image-*: remove copyright notices
These image recipes are meant to be examples that people can copy and
modify completely for their own purposes, and most of them are so
trivial they don't really need copyright notices anyway, so trim them
off.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 9 Jul 2012 17:03:08 +0000 (18:03 +0100)]
core-image-minimal-dev: base on core-image-minimal
When core-image-minimal has been updated in the past, we have on several
occasions missed applying those updates to this recipe, so let's just
base it directly on core-image-minimal and completely avoid that problem
in future.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Paul Eggleton [Mon, 9 Jul 2012 17:03:07 +0000 (18:03 +0100)]
libgsmd - remove
This project has been unmaintained for some time, and even the OpenMoko
project is not using it any more (in favour of FSO). Since we have ofono
in OE-Core which replaces and surpasses its functionality, we can remove
libgsmd.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
psplash - Update to latest psplash version. LIC_CHKSUM Tweak
* Update psplash to the latest version.
* Change the license checksum to use the lines in the psplash.h that contains
license information instead of doing a checksum on the entire file.
Signed-off-by: Franklin S Cooper Jr <fcooper@ti.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Bruce Ashfield [Fri, 6 Jul 2012 15:52:41 +0000 (11:52 -0400)]
kernel.bbclass: add non-santized kernel provides
If the kernel version string uses characters or symbols that
need to be santized for the package name, we can end up with a
mismatch between module requirements and what the kernel
provides.
The kernel version is pulled from utsrelease.h, which contains
the exact string that was passed to the kernel build, not
one that is santized, this can result in:
At rootfs assembly time, we'll have a dependency issue with the kernel
providing the santizied string and the modules requiring the utsrelease.h
string.
To not break existing use cases, we can add a second provides to the
kernel packaging with the unsantized version string, and allowing the
kernel module packaging to be unchanged.
WARNING: QA Issue: bluez4: Files/directories were installed but not shipped
/usr/share/dbus-1
/usr/share/dbus-1/system-services
/usr/share/dbus-1/system-services/org.bluez.service
libxml-parser-perl_2.41.bb: fix MakeMaker issues with using wrong CC/LD/etc
MakeMaker has a bug where it does not propagate CC/LD/etc information
down to subproject it generates Makefiles for... this recipe has has an
Expat subproject which has issues building if we are using sstate-cache
and it will reference the old sysroots and be unable to build properly.
There is an upstream MakeMaker bug for this issue but we can work around
it by fixing up the Makefiles for now