summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/gcc
Commit message (Collapse)AuthorAgeFilesLines
* gcc: Remove patch causing ICE on x86_64 valgrind compileRichard Purdie2018-03-112-52/+0
| | | | | | | | | | | | | | | | | ../../valgrind-3.12.0/VEX/priv/host_ppc_isel.c: In function 'iselInt64Expr': | ../../valgrind-3.12.0/VEX/priv/host_ppc_isel.c:3270:1: internal compiler error: Segmentation fault | } | ^ | Please submit a full bug report, | with preprocessed source if appropriate. | See <http://gcc.gnu.org/bugs.html> for instructions. | rm -f libvexmultiarch-amd64-linux.a | Makefile:1813: recipe for target 'priv/libvex_amd64_linux_a-host_ppc_isel.o' failed Remove the patch to gcc causing this until the issue can be figured out. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc6: Backport few more patchesJuro Bystricky2018-03-1113-0/+7207
| | | | | | | | | Backported series of patches from https://github.com/hjl-tools/gcc.git branch /hjl/indirect/gcc-6-branch/master which contains an IA patch series for security related issues Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* gcc6: enable FL_LPAE flag for armv7ve coresAndre McCurdy2018-03-112-0/+68
| | | | | | | | | | | | | | | | | | | | | | | The following commit added the FL_LPAE flag to FL_FOR_ARCH7VE, but neglected to also add it to the armv7ve compatible cores defined in arm-cores.def. https://github.com/gcc-mirror/gcc/commit/af2d9b9e58e8be576c53d94f30c48c68146b0c98 The result is that gcc 6.4 now refuses to allow -march=armv7ve and -mcpu=XXX to be used together, even when -mcpu is set to an armv7ve compatible core: arm-linux-gnueabi-gcc -march=armv7ve -mcpu=cortex-a7 -Werror ... error: switch -mcpu=cortex-a7 conflicts with -march=armv7ve switch [-Werror] Fix by defining flags for armv7ve compatible cores directly from FL_FOR_ARCH7VE, rather than re-creating the armv7ve flags independently by combining FL_FOR_ARCH7A with the armv7ve specific FL_THUMB_DIV and FL_ARM_DIV flags. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* gcc6: Fix unaligned STRD issue on ARMKhem Raj2018-03-112-0/+195
| | | | | | | | | | | Backport https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82445 Fixes [YOCTO 12297] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit 568227133be3f9f015679df3525f6c4f86304fd0)
* gcc6: Upgrade to 6.4Khem Raj2018-03-1166-81/+24
| | | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit 7874fa86cb583fe6a178b95ead09430486197197)
* gcc: Fix libssh_nonshared linker specs for ppc/muslKhem Raj2018-03-111-5/+50
| | | | | | | | | | | | | | The change to link libssp_nonshared.a only for musl was to move spec file changes to config/linux.h under a conditional when DEFAULT_LIBC == LIBC_MUSL which worked fine for all but ppc since gcc for ppc provided its own linux.h overrides which are used. This patch duplicates the change in those headers too Cherry-picked from oe-core master 9d39168a6acfa1f289a4448271c0bf9caaea10ec Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* gcc: Link libssp_nonshared.a only on musl targetsKhem Raj2018-03-113-29/+43
| | | | | | | | | | | | | | | | | glibc already provides the content for libssp_nonshared in libc_nonshared.a therefore we dont need to make it universal. This also fixed build issues on glibc when linking statically and using -fstack-protector Fixed errors like /mnt/a/oe/build/tmp/work/i586-bec-linux/aufs-util/3.14+gitAUTOINC+bdfcc0dcfc-r0/recipe-sysroot/usr/lib/../lib/libc.a(stack_chk_fail.o): In function `__stack_chk_fail': /usr/src/debug/glibc/2.26-r0/git/debug/stack_chk_fail.c:27: multiple definition of `__stack_chk_fail_local' /mnt/a/oe/build/tmp/work/i586-bec-linux/aufs-util/3.14+gitAUTOINC+bdfcc0dcfc-r0/recipe-sysroot/usr/lib/../lib/libssp_nonshared.a(libssp_nonshared_la-ssp-local.o):/usr/src/debug/gcc-runtime/7.1.0-r0/gcc-7.1.0/build.i586-bec-linux.i586-bec-linux/i586-bec-linux/libssp/../../../../../../../../work-shared/gcc-7.1.0-r0/gcc-7.1.0/libssp/ssp-local.c:47: first defined here collect2: error: ld returned 1 exit status Cherry-picked from oe-core master d71eba26850838b2878efea3f8c392a2eb2ebbfb Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* gcc-runtime: Disable libitm on riscvKhem Raj2018-03-101-0/+2
| | | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit 21caa8bcda93ce67ef58548f7b85d0569d13d0b9)
* gcc-6.3: Backport patch to fix ICE on ARMKhem Raj2018-03-102-0/+52
| | | | | | | | | Fixes internal compiler error: Max. number of generated reload insns per insn is achieved (90) Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit d2631f45a057c53797b7ba657662f35f66a2b04e)
* gcc-6.3.inc: Use ucontext_t not struct ucontext.Juro Bystricky2018-03-102-0/+140
| | | | | | | | | | | | | | | | | | | | Use ucontext_t not struct ucontext in linux-unwind.h files. Current glibc no longer gives the ucontext_t type the tag struct ucontext, to conform with POSIX namespace rules. This requires various linux-unwind.h files in libgcc, that were previously using struct ucontext, to be fixed to use ucontext_t instead. This is similar to the removal of the struct siginfo tag from siginfo_t some years ago. Backport of patches by Joseph Myers, taken from https://gcc.gnu.org/viewcvs/gcc?limit_changes=0&view=revision&revision=249957 [YOCTO #12083] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit ec1c18d866c137b1fa523d0fcc29f65a28f59f44)
* gcc: Remove unused patchJussi Kukkonen2018-03-101-290/+0
| | | | | | | | CVE-2016-4490 applied to gcc < 6.1.1, our version is 6.3 Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit d8329861bf6f48f6e541a04062b8d1f373dfcd78)
* gcc: Fix CVE-2016-6131 in libibertyYuanjie Huang2018-03-104-0/+504
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [NVD] -- https://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2016-6131 The demangler in GNU Libiberty allows remote attackers to cause a denial of service (infinite loop, stack overflow, and crash) via a cycle in the references of remembered mangled types. [BZ #71696] -- https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71696 2016-08-04 Marcel Böhme <boehme.marcel@gmail.com> PR c++/71696 * cplus-dem.c: Prevent infinite recursion when there is a cycle in the referencing of remembered mangled types. (work_stuff): New stack to keep track of the remembered mangled types that are currently being processed. (push_processed_type): New method to push currently processed remembered type onto the stack. (pop_processed_type): New method to pop currently processed remembered type from the stack. (work_stuff_copy_to_from): Copy values of new variables. (delete_non_B_K_work_stuff): Free stack memory. (demangle_args): Push/Pop currently processed remembered type. (do_type): Do not demangle a cyclic reference and push/pop referenced remembered type. cherry-picked from commit of git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@239143 138bc75d-0d04-0410-961f-82ee72b054a4 (From OE-Core rev: 3c288b181a4cfecc80b48994f4dd2df285e4d1d0) Signed-off-by: Yuanjie Huang <yuanjie.huang@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit 96a16c4181d18b8580dad243350d589586cb2b07)
* gcc-6: Add fix for missing no-PIE flagsStephen Arnold2018-03-102-0/+23
| | | | | | | | | | | | | | | | Fixes build on hardened PAX host with gcc-5 (linker error on relocs). Completes no-PIE config by adding to ALL_* flags variables. Borrowed from Gentoo gcc patches, tested on 2 hardened amd64 hosts. Upstream-Status: Inappropriate [configuration] Commited by: Gentoo Toolchain Project <toolchain@gentoo.org> (From OE-Core rev: c178791cd78d5a9ebc4d7b7790e647a9bafe9cf2) Signed-off-by: Stephen Arnold <stephen.arnold42@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> (cherry picked from commit fcb236ea7cd1ac052719187fefed60ebf1a30ac8)
* gcc-6: Sync gcc stddef.h with musl stddef.hKhem Raj2018-03-103-92/+92
| | | | | | | | | | | | | GCC provides some of std* headers including stddef.h and it syncs with glibc definitions via __needed* defines to find which datatypes are expected to be defined on top of glibc. we need same for musl. Drop unused 0048-ARM-PR-target-71056-Don-t-use-vectorized-builtins-wh.patch Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> (cherry picked from commit 7da04721a620ad741ea50adf116e6b5afd47caa5)
* gcc6: Upgrade to 6.3.0Khem Raj2018-03-1063-5/+5
| | | | | | | | | | 6.3.0 is a bugfix release in gcc 6 series Cherry-picked from oe-core master 36ffcd1d7d2ab9dcc91e9c09623a6613a248bc69 Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
* gcc-6.2: backport fix of check for empty string in ubsan.cJoshua Lock2017-08-292-2/+31
| | | | | | | | | | | | | | | | | | | Building gcc-cross-initial with GCC7 on the host fails due to the comparison of a pointer to an integer in ubsan_use_new_style_p, which is forbidden by ISO C++: ubsan.c:1474:23: error: ISO C++ forbids comparison between pointer and integer [-fpermissive] || xloc.file == '\0' || xloc.file[0] == '\xff' Backport the fix from upstream GCC to enable the build with GCC 7 (From OE-Core rev: 7a7fcbab0365b9501c737dbc02715be14dda72a3) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Cody P Schafer <dev@codyps.com> Signed-off-by: Armin Kuster <akuster808@gmail.com>
* libgcc-common: Don't apply symlinks for nativesdkRichard Purdie2017-01-111-0/+3
| | | | | | | | | | nativesdk-libgcc doesn't need a symlink into the target space and if we do this sstate installation of the recipe can fail depending on whether it races with the cross-canadian toolchains. (From OE-Core rev: b2c1e1fe4221862e0dbf5d08960f0d0228e47c72) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-runtime.inc: Add CPP support for x86-64-x32 tuneJuro Bystricky2016-10-081-0/+8
| | | | | | | | | | | | | | | | | | | | Using the following setup (as specified in yocto sample code): MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:libx32" DEFAULTTUNE_virtclass-multilib-libx32 = "x86-64-x32" We fail to compile simple CPP programs because CPP cannot find relevant header files, looking for them in a non-existing place. To fix this, we create a symlink of the name CPP expects and point it to the corresponding existing directory. [YOCTO#10354] [YOCTO#10380] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libgcc-common.inc: Fix broken symlinks for multilib SDKJuro Bystricky2016-10-081-1/+7
| | | | | | | | | | | | | | | | | | | | | | This patch fixes broken "32" symlinks for multilib settings: MACHINE = "qemuarm64" require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "armv7a" and MACHINE = "qemux86-64" require conf/multilib.conf MULTILIBS = "multilib:libx32" DEFAULTTUNE_virtclass-multilib-libx32 = "x86-64-x32" [YOCTO#8642] [YOCTO#10380] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-configure: Add mipsisa{32, 64}r6{el, } supportZubair Lutfullah Kakakhel2016-10-072-0/+8
| | | | | | | Add support for MIPS Release 6 ISA Signed-off-by: Zubair Lutfullah Kakakhel <Zubair.Kakakhel@imgtec.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-cross: Stop target recipes depending on SDK_SYSRichard Purdie2016-09-301-0/+3
| | | | | | | | | gcc-cross target recipes should not depend on SDK_SYS but started to after recent changes. Remove the dependency to stop this (its caused by shared code in do_install). The compiler names contain SDK_SYS so changes would be correctly handled via other means. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* cross-canadian/libgcc-common: Fixes for arm multilibRichard Purdie2016-09-291-4/+7
| | | | | | | | | | | | | | | | | | | | | Arm is unusual in that we force it to "linux-gnueabi" and "linux" doesn't build. This was causing problems for multilib configurations which were assuming "linux" was the default compiler rather than linux-gnueabi. This change does two things, ensures symlinks are generated for linux-gnueabi and also adapts the libgcc code to account for the difference on arm. It still needs to immediately expand/save TARGET_VENDOR but we defer deciding what TARGET_OS should be until we know TARGET_ARCH (which the multilib code may change). [YOCTO #8642] Note that sanity tests of a 32 bit arm multilib still break due to issues with the kernel headers on a mixed bit system. This looks to be a general headers issue for the platform though and a different type of bug. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* SDK: Allow changing SDKMACHINE without wiping TMP folderJuro Bystricky2016-09-285-5/+5
| | | | | | | | | | | | | | | | | When changing SDKMACHINE, we may encounter an error forcing us to wipe the TMP folder. Since only SDK_ARCH is captured in the PN of the crosssdk recipes, changes to SDK_OS result in conflicts. Eventually we hit the error: ERROR: ...: The recipe <...> is trying to install files into a shared area when those files already exist. The build has stopped as continuing in this scenario WILL break things This patchset addresses the problem by SDK_SYS as the recipe name suffix instead of SDK_ARCH. [YOCTO #9281] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-configure: Enable initfini-arraySaul Wold2016-09-201-0/+4
| | | | | | | | | | | | | This adds the correct support for initfini-array which replaces .init and .fini with .init-array and .fini-array. There is no appreciable size difference with this change. The change is needed since configure will not correctly detect support when building cross-compilers. Signed-off-by: Haitao Huang <haitao.huang@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc-runtime.inc: add CPP support for mips64-n32 tuneJuro Bystricky2016-09-031-0/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the problem where the CPP compiler cannot find include files. The compiler is configured to look for the files in places that do not exist. When querying the CPP for search paths, we observe messages such as these: multilib configuration: MACHINE="qemumips64" require conf/multilib.conf MULTILIBS = "multilib:lib64 multilib:lib32" DEFAULTTUNE = "mips64-n32" DEFAULTTUNE_virtclass-multilib-lib64 = "mips64" DEFAULTTUNE_virtclass-multilib-lib32 = "mips32r2" ignoring nonexistent directory "<path>/sysroots/mips64-n32-poky-linux-gnun32/usr/include/c++/6.2.0/mips64-poky-linux/32 single lib configuration: MACHINE="qemumips64" DEFAULTTUNE = "mips64-n32" ignoring nonexistent directory "<path>/sysroots/mips64-n32-poky-linux-gnun32/usr/include/c++/6.2.0/mips64-poky-linux/ To fix this, create a symlink of the name CPP expects and point it to the corresponding "gnun32" directory. [YOCTO#10142] Signed-off-by: Juro Bystricky <juro.bystricky@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc: Update to final 6.2.0 releaseKhem Raj2016-08-251-8/+6
| | | | | Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: Upgrade to 6.2 RC1Khem Raj2016-08-1962-10/+11
| | | | Signed-off-by: Khem Raj <raj.khem@gmail.com>
* gcc: Don't use vectorized builtins when Neon is not thereKhem Raj2016-07-252-0/+93
| | | | | | | Fixes [YOCTO #9991] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: Fix libgcc unresolved symbols with PIE on muslKhem Raj2016-07-252-0/+86
| | | | | | | | | Fixes [YOCTO #9772] Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc-cross: default linker hash style to sysvChristopher Larson2016-07-201-0/+5
| | | | | | | | | | | | | | | | | We explicitly set the hash style to gnu in our LDFLAGS. Setting the default to this in the toolchain, while convenient, actually hides bugs, as a failure to obey LDFLAGS isn't noticed. By removing this, it's not dissimilar to how we poison the sysroot -- rather than relying on the default, notice right away if somoeone isn't obeying the needed flags. This will result in a failure to obey LDFLAGS causing a GNU_HASH QA failure, which is what's often seen with external toolchains. This brings us all on the same page, and makes sure a failure to obey LDFLAGS is seen early. This is limited to cross, to retain ease of use for SDKs. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: CVE-2016-4490Armin Kuster2016-07-122-0/+291
| | | | | | | | | | | | v2: add missing .inc changes add YP bug # to patch [Yocto #9632] not in 6.1.1 so back porting. Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc-runtime: add SUMMARY valuesPaul Eggleton2016-07-121-0/+27
| | | | | | | | It's useful to know what the various libraries are that get produced by gcc-runtime, as well as to have a specific SUMMARY for the recipe. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: add runtime packages to RRECOMMENDSPaul Eggleton2016-07-121-0/+19
| | | | | | | | | | | | | | | | | In order to use certain features of gcc, you need the corresponding runtime library. It seems to me that these ought to be installed by default when installing the compiler since they are required if certain command line options are used, so add them to RRECOMMENDS. I used RRECOMMENDS since some of these packages may or may not exist depending on architecture and build options; additionally it makes it possible to use BAD_RECOMMENDATIONS if you really want to exclude them. The impact of this isn't too bad in the context of an image providing on-target compilation - about a 30MB increase in size for an image containing gcc and g++. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* libgcc: remove duplicate configure optionsAndre McCurdy2016-07-121-7/+0
| | | | | | | | | | The original fix [1] was made redundant by the followup [2]. [1] http://git.openembedded.org/openembedded-core/commit/?id=d774bb2d10f2c05900f87dcc53f073433ca02121 [2] http://git.openembedded.org/openembedded-core/commit/?id=d7799a17d5e802db3f8d16bdc824aae81538e675 Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: remove GCC 4.9Ross Burton2016-07-0880-8761/+0
| | | | Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: remove unused patchRoss Burton2016-07-081-49/+0
| | | | Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc-5.4: Fix hang with mmusl option on cmdlineKhem Raj2016-07-081-36/+36
| | | | | | | | | | | | | | When using -m32 -mmusl options in this order, gcc hangs in parsing the options decode_cmdline_options_to_array() the reason is that we have broken the link when adding mmusl options, the order of specifying libc was not kept in order as a result it was unable to contruct the array correctly and ended in parse hang. We fix the options to specify the order properly. Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc5: Upgrade to gcc 5.4Khem Raj2016-07-0178-701/+6
| | | | | | | | Drop patches which has been applied to gcc5 branch until 5.4 release Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: make sure header path is set correctlyAnuj Mittal2016-06-151-1/+0
| | | | | | | | | | | | | We're setting the native header paths in do_configure_prepend, and don't need to set them again here. This results in gcc-target not being able to locate the headers and not being able to detect glibc version, which in turn results in SSP support not getting detected even though it's available in libc. Signed-off-by: Anuj Mittal <anujx.mittal@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: fix upstream check for 5.x versionAlexander Kanavin2016-06-031-0/+1
| | | | | Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc: Backport nios2 gcc ICE fixMarek Vasut2016-05-302-0/+36
| | | | | | | | | | Backport a patch from mainline gcc 5 branch to fix ICE triggered when cross-compiling libdrm for nios2 architecture. The same ICE is fixed in gcc6 already. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Khem Raj <raj.khem@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
* gcc: Security fix CVE-2016-4490Armin Kuster2016-05-172-0/+271
| | | | | Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc: Security fix CVE-2016-2226Armin Kuster2016-05-172-0/+104
| | | | | Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc: Security fix CVE-2016-4489Armin Kuster2016-05-172-0/+57
| | | | | Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc: Security fix CVE-2016-4488Armin Kuster2016-05-172-0/+74
| | | | | Signed-off-by: Armin Kuster <akuster@mvista.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc 4.9: backport gperf fixesDan McGregor2016-05-142-0/+154
| | | | | | | | | | | | | From: Daniel McGregor <daniel.mcgregor@vecima.com> gperf was being used in a way that generated files don't conform to the language standard. Backport the fix from upstream. This is required to build these GCC versions when the host compiler is GCC 6. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-5.3: backport gperf fixesDan McGregor2016-05-142-0/+154
| | | | | | | | | | | | | From: Daniel McGregor <daniel.mcgregor@vecima.com> gperf was being used in a way that generated files don't conform to the language standard. Backport the fix from upstream. This is required to build these GCC versions when the host compiler is GCC 6. Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* gcc-runtime, libgcc: Symlink c++ header and startup files in target_triplet ↵Khem Raj2016-05-132-0/+24
| | | | | | | | | | | | | | | | | | | | | for SDK use We build SDKs such that gcc-cross-candian is built for only one target *-*-linux and then use -muclibc or -mmusl to let it compile code for other libc variants. This works fine when libc = glibc however it does not work for c++ programs when libc != glibc since there are c++ headers installed under ${includedir}/c++/${BINV}/${TARGET_SYS} which is fine when gcc-runtime and gcc-cross-candian uses same --target options gxx includedir searches in right triplet, but it fails with musl/uclibc since gcc will look for glibc based triplet but gcc-runtime will install them under musl/uclibc triplet. This patch symlinks the musl/uclibc triplet to glibc triplet when libc != glibc This fixes SDKs for musl/uclibc Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libgcc: Ensure that gcc configure options are passed to libgcc tooKhem Raj2016-05-131-1/+1
| | | | | | | | | | libgcc uses certain options from EXTRA_OECONF as well, curently we are ignoring them, as a result we do not configure libgcc to match cross gcc in some cases e.g. ppc/musl should have used 64bit long doubles but it went for 128-ldbls which is default, works on glibc but not on musl Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* libgcc: Ensure that gcc configure options are passed to libgcc tooKhem Raj2016-05-132-0/+9
| | | | | | | | | | libgcc uses certain options from EXTRA_OECONF as well, curently we are ignoring them, as a result we do not configure libgcc to match cross gcc in some cases e.g. ppc/musl should have used 64bit long doubles but it went for 128-ldbls which is default, works on glibc but not on musl Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>