Age | Commit message (Collapse) | Author | Files |
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
We have been hitting this issue on ARM/thumb and
have a workaround in place to compile samba
http://git.openembedded.org/openembedded/commit/recipes/samba/samba_3.2.15.bb?id=4ba7aa07c0dcd28f94515ff9927e2a04403fcf15
This backport should fix the gcc bug
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We force the C locale when running builds for determinstic error messages. We
therefore have no need to NLS support in binutils cross or gcc cross.
We also don't need the standard base/autotools dependencies for our
toolchain components since we don't autoreconf these.
This patch turns off nls and cleans up some of the dependencies resulting
in a slightly less convoluted set of build dependencies.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Depending upon what hash style is in use this uses
the right flag for setting the hash style type. This
fixes the QA errors about missing GNU hash style reported
in gcc-runtime build particularly libgcc
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
a) There is a QA warning from a .so being present in a main package.
In the case of the plugin library for gcc, this is allowed.
b) Remove the unwanted libiberty.a file with the strange path. We
don't need/want this and this removes an unpackaged file warning.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
First, this lib is usefull for coverage analysis-enabled building.
Second, this fixes the warning about unpackaged files in libgcc recipe.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Long time ago a066e7ca90a28d5681c5fa895a29e999ed7c88b was committed to
address possible problems with compilation of nscd during
eglibc-nativesdk build. Problems were related to the way gcc searches
for headers to check if it should enable it's own stack smash protection
bits or it can relay on eglibc for it.
However after 934d38530c9a67562e53d4034aee5531f0f26750 things got
broken, as for gcc-crosssdk-intermediate packages:
1) EXTRA_OECONF is ignored
2) headers are installed in a different location than expected by that
patch.
This results in eglibc-nativesdk build broken on some systems (e.g. mine
Debian x86_64 squeeze). Fix that by providing with-headers options to
crosssdk-intermediate gcc configuration.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Include headers necessary to compile gcc plugins into cross-canadian gcc
packages.
Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
[YOCTO #1381]
This patch came from from GCC Bugzilla via Khem
Cc: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Commit 35fa8dc5f7da90fdd40091a3c3600d3fcd232922 changed the gcc recipes to use
baselib for the compiler location. This is fine as long as baselib happens to
match the platform multilib definition which is enabled at the time.
This patch fixes things so that gcc will honour whatever ${base_libdir} is
set to re-allowing suitable customisation of the system layout.
[YOCTO #1362]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The gcc-poison-parameters was added specifically to deal with an issue
on ppc targets and a bug when we build with -Os -frename-registers.
This bug below reports the issue and is fixed in gcc-4.6.x/mainline:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44618
Backport patch to gcc 4.5.1.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
The gcc-poison-parameters was added specifically to deal with an issue
on ppc targets and a bug when we build with -Os -frename-registers.
This bug below reports the issue and is fixed in gcc-4.6.x:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44618
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
Fixes bug [YOCTO #1386]
1) Add the following lines to conf/local.conf:
SDKGCCVERSION="4.5.1"
GCCVERSION="4.5.1"
2) bitbake meta-toolchain
The we will notice the error that sed can't find the directory:
${TMPDIR}/work-shared/gcc-${PV}/gcc-${PV}-${PR}
we had changed the name of S from gcc-${PV} to gcc-${PV}-${PR}, but didn't
update meta/recipes-devtools/gcc/gcc-common.inc, so fix S in gcc-common.inc
would make it work.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
|
Some place pnum=1 is used which is removed as well since
striplevel=1 is default
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
|
libgcc now uses shared work directories so we cannot mark
these tasks as noexec. If we do, the tasks may not run
and hence gcc may not get patched for example which
results in failures.
This patch simple removes the flags since they're unneeded.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We ensure that:
* the shared work directory contains PR and ensure PR values are consistent across gcc builds
* the regexp to handle library directories is in a specific task and run once
This avoids breakage that was seen in incremental builds after commit
be1f70d68b6b75772ebab8bdff683ddd7c42b0cd where the interpretor could
become corrupted. This was due to the sed expression corrupting
the source directory.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Rather than tweaking MULTILIB_DIRNAMES & MULTILIB_OSDIRNAMES like is
done for x86-64 via 64bithack.patch. We can just go with gcc defaults
and utilize ${base_lib} for where to find gcc libs.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
Implements basic e5500 enablement in gcc, with a scheduler, -mcpu
flag, etc...
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
The sed regex in do_configure_prepend was producing the following result:
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "/lib64/ld-linux-x86-64.so.2"
instead of removing the leading "/lib" or "/lib64".
Now we have it do:
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2"
Additionally, with the regex fixed the manipulation of SYSTEMLIBS_DIR
needs to be removed.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Since we now handle GLIBC_DYNAMIC_LINKER in gcc-configure-common.inc:
's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#'
we can drop the patch which changes a hardcoded value for this.
No PR bump since there is no code change resulting from this, its just
a cleanup.
There is still a valid question over the remainder of this patch and its
interaction with multilib configurations.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This patch adds the core multilib class which can be used along with a
parameter specifying the mutlilib to use in BBCLASSEXTEND.
The MLPREFIX variable is added and can be used in cases where its too
difficult to dynmaically work out where a mutltilib prefix is needed
to be added to a variable.
This includes:
* SHLIBSDIR and PACKAGE_ARCH fixes from Lianhao Lu.
* PACKAGE_DYNAMIC mapping from Yu Ke
* PACKAGE_INSTALL mapping from Yu Ke
* RPROVIDES mapping from Yu Ke
* TARGET_VENDOR fix from Mark Hatle
* Ignorning *-native-runtime dependnecies as well as *-native from Yu Ke
* Map PKG and ALLOW_EMPTY from Dongxiao Xu
* Ensure RCONFLICTS and PKG field dependencies are remapped (from Dongxiao Xu)
* Ensure PN and MLPREFIX are set at the same time to ensure consistent BPN values (Yu Ke)
Signed-off-by: Yu Ke <ke.yu@intel.com>
Signed-off-by: Xu Dongxiao <dongxiao.xu@intel.com>
Signed-off-by: Lianhao Lu <lianhao.lu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The base gcc package is missing liblto_plugin.so. If we try a simple
hello world compile we get something like:
root@p5020-ds:~# gcc hello.c
gcc: fatal error: -fuse-linker-plugin, but liblto_plugin.so not found
compilation terminated.
We need to include liblto_plugin.so in the base gcc package and not
gcc-dev.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
If the library is installed without execute permission then package.bbclass
will not consider it for stripping. This is particularly unfortunate because
there seems to be a bug somewhere else which is causing all DSOs to end up with
a NEEDED dependency on libgcc_s, even if they don't actually require it, and
hence it is getting installed in all images (for uclibc on i586 at least).
Signed-off-by: Phil Blundell <philb@gnu.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add fix for PR45886 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45886
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
Add fix for PR45052 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45052
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
Add fix for PR45094 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45094
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
Add fix for PR44606 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44606
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
Add fix for PR44290 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44290
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
Add fix for PR43810 as proposed in
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43810
Building on powerpc-eabi* with --enable-target-optspace
still fails for me though.
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
Acoording to http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44392
correct fix should be
TARGET_EITHER && (arm_arch6 || !optimize_size)
not
TARGET_EITHER && (arm_arch6 && !optimize_size)
Signed-off-by: Ilya Yanok <yanok@emcraft.com>
|
|
The e500v2 core utilizes a unique floating point programming model / ABI.
We utilize TARGET_FPU = "ppc-efd" to distinguish this choice (Embedded
scalar single-precision floating-point). When building the toolchain for
this ABI we need configure gcc with --enable-e500_double.
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
|
|
there to start with
This fixes:
| rm: cannot remove `/OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-4.5-r39.1+svnr175127/image/usr/libexec/gcc/arm-angstrom-linux-gnueabi/4.5.4/*.la': No such file or directory
| ERROR: Function 'do_install' failed (see /OE/tentacle/build/tmp-angstrom_2010_x-eglibc/work/armv7a-angstrom-linux-gnueabi/gcc-4.5-r39.1+svnr175127/temp/log.do_install.19514 for further information)
NOTE: package gcc-4.5-r39.1+svnr175127: task do_install: Failed
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
|
|
Set SRCREV to match the point at which 4.6.1 was released, update PV appropriately.
Signed-off-by: Phil Blundell <philb@gnu.org>
|
|
[YOCTO #1233]
This fix directly packages the contents in and adds the lib*.so
correctly to the -dev package.
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
gcc recipes has changed, currently ${PV} is 4.6 and ${BINV} is 4.6.1 version.
Fix these QA warnings.
WARNING: For recipe gcc-runtime, the following files were installed but not shipped in any package:
WARNING: /usr/share/gcc-4.6.1/python/libstdcxx/__init__.py
WARNING: /usr/share/gcc-4.6.1/python/libstdcxx/v6/__init__.py
WARNING: /usr/share/gcc-4.6.1/python/libstdcxx/v6/printers.py
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
|
|
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
libgcc into the sysroot
Currently, we stash libgcc if PN is gcc-cross or gcc-crosssdk. This patch
changes it to work for *gcc-cross and *-gcc-crosssdk which means it
will patch for multilib extended toolchains.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This avoids a QA error.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The changes in commit 553a92c442bc3a35d1520a22e640a3a0e377b8f7 were not applying correctly
due to the error: "find: paths must precede expression"
This patch corrects the find syntax.
[YOCTO #1199]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
But ensure that gcc-cross-intermediate always uses ld.bfd since
(e)glibc won't build with gold.
Signed-off-by: Phil Blundell <philb@gnu.org>
|
|
* Fix configure and Makefile to read the defaults.h and t-oe from ${B},
so that the ${S} can be shared.
* Change ${S} to the shared source directory.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
|
Fix configure and Makefile to read the defaults.h and t-oe from ${B},
so that the ${S} can be shared.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
|
This patched is derived from Richard, make gcc use the shared source
directory during the different building:
1) Make gcc-cross, gcc-cross-initial, gcc-cross-intermediate and
gcc-runtime share the same source directory.
2) The source directory is ${TMPDIR}/work-shared/gcc-${PV}, for example:
tmp/work-shared/gcc-4.5.1
3) Fix do_clean to clean the shared source directory and stamps
4) gcc uses sed and creates config files against ${S} which means the
directory should not be shared. Change the way to make it work:
* The configure option --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS}
can replace the sed command, see the code in configure:
if test "x$with_headers" != x; then
glibc_header_dir=$with_headers
This has the same effect as the sed command:
sed -i 's:^\([ ]*\)glibc_header_dir=\"${with_build_sysroot}/usr/include\": ...
so add the --with-headers=${STAGING_DIR_TARGET}${SYSTEMHEADERS} to
gcc-configure-cross.inc( not add to gcc-configure-common.inc, since
not all the gcc building need this, the one which has its own do_configure
doesn't need it).
* Move t-oe from ${T} to ${B}/gcc, so that the patched Makefile.in
can read it easily, please see the commit for gcc-4.5.1 and
gcc-4.6.0.
* Use the defaults.h in ${B}/gcc instead of ${S}/gcc, and the patched
configure.ac(configure) can read it correctly, please see the
commit for gcc-4.5.1 and gcc-4.6.0.
* The gcc-crosssdk.inc used sed to edit ${S}/config/*/linux*.h
to change the GLIBC_DYNAMIC_LINKER, which made the source
incompatible. To make the source compatible:
- Use:
sed -i ${S}/gcc/config/*/linux*.h -e \
's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#'
so entries in the files that look like:
#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
would become
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"
and we define SYSTEMLIBS_DIR in defaults.h.
NOTE:
#define GLIBC_DYNAMIC_LINKER64 (SYSTEMLIBS_DIR "/ld-linux-x86-64.so.2")
doesn't work in in the following define:
#define LINUX_DYNAMIC_LINKER \
CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
so use
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR"/ld-linux-x86-64.so.2"
5) Add do_configure_prepend to gcc-configure-common.inc and remove the
one in gcc-crosssdk.inc, this makes it easy to share the source,
otherwise we need do extra changes in gcc-configure-sdk.inc.
6) Use "cat > file <_EOF" to replace the "echo > file"
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
|
|
The versioned gcc binary gets installed and the needed binutils symlinks are made.
To make it fully work again the following is needed in kernel recipes/classes:
PATH_prepend = "${STAGING_BINDIR_TOOLCHAIN}.gcc-cross-kernel:"
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Most of the files that end up in the gcc include dir and other
misc files scattered throughout the install get the build users
uid and gid.
Signed-off-by: Mark Hatle <mark.hatle@windriver.com>
|
|
I've added more licenses from SPDX and corrected the gcc license
so that it is a. parsable and b. accurate to the SPDX standard.
I've also done some cleanup of license text and gdb's LICENSE
field.
Signed-off-by: Beth Flanagan <elizabeth.flanagan@intel.com>
|
|
We call the recipes 4.6
Remove the backport patches
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|