aboutsummaryrefslogtreecommitdiff
path: root/packages/gcc
Commit message (Collapse)AuthorAgeFilesLines
* [gcc] Move a patch to the bundled experimental patchesBryan Hundven2023-03-161-0/+0
| | | | | | | | | | | | As mentioned in #1908, we should have patches that are experimental under the CT_EXPERIMENTAL option. This an experimental patch to gcc: https://gcc.gnu.org/pipermail/gcc-patches/2022-August/600452.html And since it may affect production toolchains, we should move this patch to the experimental bundled patches introduced in the previous commit. Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* Support targeting macOS aarch64 in older GCCsSteven Fackler2023-03-1411-0/+506
| | | | | | | | | This adds backports of a couple of patches necessary to support macOS arm64 hosts for gcc. It was ported from https://github.com/richfelker/musl-cross-make/pull/129 with some small fixups to make the patches apply cleanly. Signed-off-by: Steven Fackler <sfackler@gmail.com>
* Merge pull request #1908 from keith-packard/gcc-getenv-defaultBryan Hundven2023-03-091-0/+102
|\ | | | | packages/gcc: Add gcc patch to allow getenv default values
| * packages/gcc: Add gcc patch to allow getenv default valuesKeith Packard2023-02-281-0/+102
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch, submitted upstream but not (yet?) accepted, adds a third parameter to the specs file 'getenv' function that provides a value for when the environment variable is not set, instead of having gcc fail. This seemed like the safest way to provide a mechanism for getting the installed location of the toolchain from inside a specs file as, when not installed in the built-in location, gcc already sets the GCC_EXEC_PREFIX environment variable to a well defined location within that directory hierarchy, but when installed in the location specified at compile time, gcc does not. Providing a default value that matches the compile-time location then allows the specs file to compute paths relative to the current GCC installation location, whereever it is installed. Signed-off-by: Keith Packard <keithp@keithp.com>
* | packages/gcc/12.2.0: Add picolibc patchesKeith Packard2023-03-085-0/+427
|/ | | | | | These patches allow picolibc to act as the system C library within gcc. Signed-off-by: Keith Packard <keithp@keithp.com>
* Backport fixes for glibc and gcc to fix interactions with kernel headersBryan Hundven2022-11-092-0/+246
| | | | | Reported-by: milkylainen (IRC) Signed-off-by: Bryan Hundven <bryanhundven@gmail.com>
* gcc: Add gcc 12.2.0Chris Packham2022-08-238-8/+8
| | | | | | | | https://gcc.gnu.org/pipermail/gcc-announce/2022/000174.html Add gcc 12.2.0. None of the patches needed regenerating. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Add gcc 10.4.0Chris Packham2022-07-1127-80/+21
| | | | | | | | | | | | https://gcc.gnu.org/pipermail/gcc-announce/2022/000173.html Add GCC 10.4.0 and regenerate the ct-ng patches. The powerpc-Fix-asm-machine-directive-for-some-CPUs patch is dropped as the change was applied upstream (and subsequently refactored). Closes #1777 Signed-off-by: Chris Packham <judge.packham@gmail.com>
* Revert "gcc: Bring in fix for libsanitizer on mips64"Chris Packham2022-07-111-31/+0
| | | | | | | | | This reverts commit 1b6ad7cd48e0849072e2372826498c01b56b7fc9. As it turns out libsanitizer isn't supported on mips64 with GCC11 or older (there is support in GCC12). The bug is actually the fact that ct-ng allows configuring libsanitizer for architectures that don't support it. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Add gcc 9.5.0Chris Packham2022-06-0822-11/+11
| | | | | | Add GCC 9.5.0 and regenerate the patches as necessary. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Update fix for sh-unknown-elfChris Packham2022-05-311-64/+0
| | | | | | | | | Extend the fix from commit 6b465e15 ("Remove m1 from multilibs for GCC11 on SH arch.") to cover GCC 12 and future releases. Remove the patch that was added to solve the same problem. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: drop libsanitizer patch for GCC12Chris Packham2022-05-232-26/+0
| | | | | | | | | | | For some reason GCC 12 ends up hitting the _MIPS_SIM_NABI32 case for Linux's arch/mips/include/uapi/asm/stat.h when building libsanitizer. This is basically the opposite of the problem from commit 1b6ad7cd ("gcc: Bring in fix for libsanitizer on mips64"). Dropping the patch resolves the issue for GCC 12. Fixes #1741 Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Add 12.1Chris Packham2022-05-1910-1/+441
| | | | | | | | | | | | | | | | | | | Add GCC 12.1 https://gcc.gnu.org/gcc-12/ The following patches from GCC 11.3.0 are no longer needed: - 0005-arc-Update-ZOL-pattern.patch - 0006-arc-Update-u-maddhisi4-patterns.patch - 0007-arc-Fix-maddhisi-patterns.patch - 0008-Darwin-aarch64-Initial-support-for-the-self-host-dri.patch - 0009-libstdc-Check-for-TLS-support-on-mingw-cross-compile.patch One new patch is needed to avoid issues building sh-unknown-elf: - 0006-sh-Avoid-mb-m1-multilib-combination.patch It is also necessary to build all-build-libcpp. This target exists as far back as GCC 6 so has been done unconditionally. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Bring in fix for libsanitizer on mips64Chris Packham2022-05-181-0/+31
| | | | | | | | | The kernel's struct stat is 104 bytes when compiling for _MIPS_SIM_ABI64. Set struct_kernel_stat_sz to match. Fixes #1733 Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Update vcs URLChris Packham2022-05-081-1/+1
| | | | | | | The GCC project has been using git for a while now. Update the repository field accordingly. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: bump GCC 11 to latest release 11.3.0Hans-Christian Noren Egtvedt2022-05-0817-460/+12
| | | | | | Remove patches applied upstream we no longer need to maintain here. Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
* gcc: add fixes for GCC 11.2. Anon and aggregated struct accessAnton Maklakov2022-03-282-0/+311
|
* gcc: rename patches to orderAnton Maklakov2022-03-281-0/+0
|
* gcc: powerpc: Fix asm machine directive for some CPUscrosstool-ng-1.25.0-rc1Chris Packham2022-02-282-0/+118
| | | | | | | Bring in upstream fix for gcc outputting an incorrect .machine directive. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* Fix MinGW libstdc++ TLS functionalityivanka20122022-02-281-0/+251
| | | | | | Backport of https://github.com/gcc-mirror/gcc/commit/cc1e28878a228b6c4a0872e56d97ac88971b7725 Signed-off-by: Kittenberger Iván <ivanka2012@gmail.com>
* Run patches thru `manage-packages -P`Alexey Neyman2022-02-1143-279/+190
| | | | | | | | This refreshes the line numbers, removes any fuzz (which would make any future forward ports easier) and standardizes the patch/file headers (which makes them easier to read). Signed-off-by: Alexey Neyman <stilor@att.net>
* Run packages through `manage-packages -D`Alexey Neyman2022-02-111-4/+4
| | | | | | | This fixed some typos in the checksum files (please don't edit them manually, this is error-prone!) Signed-off-by: Alexey Neyman <stilor@att.net>
* Retire obsoleted milestonesAlexey Neyman2022-02-111-1/+1
| | | | | | | | | | | | ... and the code dependent on them, after the latest wave of obsolete package removals. This concludes the glorious history of the original uClibc (non-NG) with lots of kludges removed. There was a choice here, whether to call the resulting libc "uClibc" or "uClibc-ng". I opted in favor of giving uClibc-ng the recognition it deserves, although it had some ripple effect in the ct-ng code. Signed-off-by: Alexey Neyman <stilor@att.net>
* Remove gcc-oracle-4.8-44.0.5Alexey Neyman2022-02-112-0/+38
| | | | | | | | | | | | | GCC 4.8 and its prerequisites have been removed by 04dce680, 41d4583a and e4221734; as a result, 4.8-based version of gcc-oracle became unbuildable (no valid versions for the prerequisites). Update the samples to use 4.9.4; which however fails to build on a modern host GCC. Build fix backported to gcc-4.9 and gcc-5 versions. Fix binutils-oracle build with host GCC11. Signed-off-by: Alexey Neyman <stilor@att.net>
* gcc: Use upstream fix for cross-canadian buildsChris Packham2022-01-142-47/+78
| | | | | | Replace the patch from #1600 with the change that landed upstream. Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Fix 11.2.0 build failure on MacOS with Apple M1Kairui Song2021-12-131-0/+99
| | | | | | | | | | | | | | | | | | | | | | | With latest aarch64-unknown-linux-gnu, ct-ng build failed with: [INFO ] Installing pass-1 core C gcc compiler [EXTRA] Configuring core C gcc compiler [EXTRA] Building gcc [ERROR] clang: error: linker command failed with exit code 1 (use -v to see invocation) [ERROR] make[2]: *** [Makefile:2148: xgcc] Error 1 [ERROR] make[2]: *** Waiting for unfinished jobs.... [ERROR] clang: error: linker command failed with exit code 1 (use -v to see invocation) [ERROR] make[2]: *** [Makefile:2157: cpp] Error 1 [ERROR] make[1]: *** [Makefile:4444: all-gcc] Error 2 And in build log: Undefined symbols for architecture arm64: "host_detect_local_cpu(int, char const**)", referenced from: static_spec_functions in gcc.o Just backport a upstream gcc fix. Signed-off-by: Kairui Song <ryncsn@gmail.com>
* gcc11: Fixes for ARCAlexey Brodkin2021-10-103-0/+285
| | | | | | | | | See more details here: 1. https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/issues/398 2. https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/issues/427 3. https://github.com/foss-for-synopsys-dwc-arc-processors/toolchain/issues/429 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* gcc: Remove obsolete versionsChris Packham2021-09-2130-2575/+0
| | | | | | | | | The following versions were marked obsolete in crosstool-ng-1.24.0, remove them. - gcc-linaro-4.8-2015.06 - gcc-4.8.5 Signed-off-by: Chris Packham <judge.packham@gmail.com>
* gcc: Fix cross-canadian builds wih GCC11Alexey Brodkin2021-09-151-0/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With this we may finally build Windows and "native" toolchains if host tools are also GCC11 based. For example: 1. You build cross toolchain with all the recent components by CT-NG 2. You build cross-canadian toolchain for Windows or ARC, ARMm whatever board See upstream bug report [1] for more details. Basically when we do cross-canadian build with use of the same GCC11 as a "host" compiler we're seeing an error like that: ------------------->8------------------- mingw-w64-cross/gcc/x86_64-w64-mingw32/libstdc++-v3/include/fenv.h:58:11: error: 'fenv_t' has not been declared in '::' 58 | using ::fenv_t; ------------------->8------------------- This is a solution proposed by Yujie Yang in [2] Note, though it's not the final fix merged upstream, that's just an attempt to fix this by casual GCC users. There's a hope it will be fixed anyways a bit later, maybe by the time of GCC 11.3... [1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100017 [2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100017#c20 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* gcc: Refresh patches of GCC 11.2.0Alexey Brodkin2021-09-155-69/+24
| | | | | | As simple as: ./maintainer/manage-packages.sh --update-patches --select gcc-11.2.0 Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
* gcc: bump to 11.2graysky2021-07-288-8/+8
| | | | Signed-off-by: John Audia <graysky@archlinux.us>
* gcc: Bump maintenance versionsChris Packham2021-07-0548-16/+16
| | | | | | | 8.4.0 -> 8.5.0 9.3.0 -> 9.4.0 Signed-off-by: Chris Packham <judge.packham@gmail.com>
* packages/gcc/libstdc++: #include_next → #includeKeith Packard2021-06-172-0/+614
| | | | | | | | | | | | | | Some of the installed libstdc++ header files use '#include_next' to work around toolchain oddities that might cause loops in the compiler. However, these also cause mistakes in locating header files when there are multiple C libraries installed as '#include_next' often ends up finding default C library header files. It doesn't seem like this patch could be accepted upstream; there's a long discussion about the use of include_next in these headers which I cannot fully understand. Signed-off-by: Keith Packard <keithp@keithp.com>
* packages: gcc: Add missing milestonesStephanos Ioannidis2021-06-071-1/+1
| | | | | | | This commit adds the missing gcc milestones 9 and 10, so that the helper symbols `GCC_9_or_later` and `GCC_10_or_later` can be used. Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
* Disable -Werror for GLIBC for all ARCH for GCC11.spaun20022021-05-051-1/+1
| | | | | | | | | | | | | This change replicates what GLIBC 2.23 has in the string/rawmemchr.c: // #if __GNUC_PREREQ (11, 0) // /* Likewise GCC 11, with a different warning option. */ // DIAG_IGNORE_NEEDS_COMMENT (11, "-Wstringop-overread"); // #endif With -Werror multiple platforms failing on the string/rawmemchr.c:40 line. Signed-off-by: Nik Konyuchenko <spaun2002mobile@gmail.com>
* Pull patch for macOS from GCC 10.3.0 package.spaun20022021-05-051-0/+18
| | | | | | This should fix linkage error on MacOS. Signed-off-by: Nik Konyuchenko <spaun2002mobile@gmail.com>
* Initial commit for gcc11spaun20022021-04-285-0/+70
| | | | Signed-off-by: Nik Konyuchenko <spaun2002mobile@gmail.com>
* Update to gcc release 10.3.0Kumar Gala2021-04-0829-172/+8
| | | | | | Drop patches already in 10.3.0 that had been backported Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
* Fix depends generation under windowsIvan Kukhta2021-04-061-0/+29
| | | | Signed-off-by: Ivan Kukhta <Ivan.Kukhta@acronis.com>
* Merge branches 'gcc10_shift_numbering' and 'gcc10_fno-rtti'Chris Packham2021-03-241-0/+67
|\
| * gcc: Fix bootstrap with -fno-rttiAnton Maklakov2021-03-231-0/+67
| |
* | gcc: just shift numbering in patch namesAnton Maklakov2021-03-234-0/+0
|/
* gcc: Add support for building libstdc++ with alternate libcKeith Packard2021-01-111-0/+275
| | | | | | | This adds another mode to do_gcc_core_backend that builds libstdc++ against an alternate libc implementation. Signed-off-by: Keith Packard <keithp@keithp.com>
* gcc: Additional build fix for building arm64 toolchain on M1 Mac'sKumar Gala2020-12-081-0/+33
| | | | | | | | If we are targetting an aarch64-none-elf toolchain we end up running into a build issue in gcc/config/aarch64/driver-aarch64.c. This is fixed in upstream gcc so just backport the patch to gcc-10.2.0 Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
* gcc: Add some patches to get gcc 10.2 building on ARM based MacKumar Gala2020-12-042-0/+132
| | | | | | | Pull in a change from upstream GCC and one from the gcc-darwin-arm64 repo that gets an initial cross compiler building on ARM based Mac. Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
* gcc: add build fix for aarch64 toolchain on MacOS XKumar Gala2020-11-111-0/+34
| | | | | | | | When building aarch64-unknown-linux-gnu on MacOS X, aarch64-builtins.c files doesn't build by default with clang on MacOS X. We need to pass -std=gnu++11 when building the file for things to work with clang. Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
* Merge pull request #1342 from DspHack/feature/add_support_for_ti_c6xChris Packham2020-11-101-0/+48
|\ | | | | Experimental: Add support for the Texas Instruments C6X (TMS320C6000 …
| * Experimental: Add support for the Texas Instruments C6X (TMS320C6000 series) ↵Dan Tejada2020-05-201-0/+48
| | | | | | | | | | | | | | | | | | | | DSPs -- c6x: Add support for c6x product families to pass on to uClibC-ng -- c6x: Fix multilib support -- c6x: Add patch fix internal instruction error (GCC 57295) Signed-off-by: Dan Tejada <dan.tejada@cantada.com>
* | Add support for GCC 10.2.0Hans-Christian Noren Egtvedt2020-08-2721-0/+1392
| | | | | | | | | | | | | | | | | | Forward ported patches from GCC 9.x, refreshed to match current sources. Patch 0010-crystax.patch did not apply clean and had minor adjustments to fit new GCC 10.2.0 release. Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
* | Update to GCC 9.x to latest release 9.3.0Hans-Christian Noren Egtvedt2020-08-2722-23/+25
| | | | | | | | | | | | | | | | | | | | Forward ported patches from GCC 9.2.0 to 9.3.0, refreshed to match current sources. Patch 0010-crystax.patch did not apply clean and had minor adjustments to fit new GCC 9.3.0 release. Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>