summary refs log tree commit diff
path: root/gnu/packages/gcc.scm
AgeCommit message (Collapse)Author
2021-07-18Merge branch 'master' into core-updatesLudovic Courtès
2021-07-06gnu: gcc: Fix cross-compilation.Ludovic Courtès
This fixes cross-compilation of GCC, as in: guix build --target=aarch64-linux-gnu -e '(@ (gnu packages gcc) gcc-10)' * gnu/packages/gcc.scm (gcc-canadian-cross-objdump-snippet): New variable. (gcc-5)[source]: Use it instead of inline 'snippet'. (gcc-8)[source]: Add 'modules' and 'snippet'. (gcc-9)[source]: Likewise. (gcc-10)[source]: Likewise. (gcc-11)[source]: Likewise.
2021-07-05gnu: custom-gcc: Update regex for removing executables.Sarah Morgensen
Do not match "gccgo". Match "gcov-dump" and "gcov-tool", as well as "lto-dump" (which was introduced in GCC 10). * gnu/packages/gcc.scm (custom-gcc)[arguments]: Update regex used for matching broken or conflicting executables. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-06-28gnu: Add gccgo-10.Sarah Morgensen
Generate gccgo with MAKE-GCCGO to factorize phases, and to fix the cyclic dependency between out and lib (caused by libgo embedding the gotools path) that was worked around in <https://issues.guix.gnu.org/18101>. * gnu/packages/gcc.scm (custom-gcc-gccgo): New procedure. (make-gccgo): New procedure. (gccgo-10): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2021-06-24gnu: Simplify the use of --with-long-double-128.Chris Marusich
Fixes <https://bugs.gnu.org/48825>. In short, this change adds the hard-coded "--with-long-double-128" configure option in one place and removes it from two other places. This changes and simplifies the use of this option for various architectures that start with the string "powerpc". * gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): Add a clause for targets starting with "powerpc64le-" or "powerpc-" which adds the "--with-long-double-128" option. This causes any package using this procedure to be built using this new option on these architectures. In particular, this affects the gcc package and the gcc-final package, in addition to all the other versions of GCC defined in (gnu packages gcc). * gnu/packages/commencement.scm (gcc-boot0)[#:configure-flags]: Remove the code that adds the "--with-long-double-128" configure option for all architectures starting with "powerpc", since it is now redundant on the architectures where it is needed. The gcc-boot0 package uses (and adds to) the gcc package's configure options. This means that the above change in gcc.scm is sufficient to ensure that the gcc-boot0 package's configure options will include "--with-long-double-128" on powerpc64le and powerpc architectures. Additionally, since the option is apparently not required on the big-endian powerpc64 architecture, this change also has the nice effect of omitting the option in that case. * gnu/packages/cross-base.scm (cross-gcc-arguments)[#:configure-flags]: Remove the code that adds the "--with-long-double-128" configure option for powerpc64le, since it is now redundant. The cross-gcc-arguments procedure uses (and adds to) the configure options of its xgcc argument (a package). This means that regardless of which gcc from gcc.scm is used as the xgcc, the above change in gcc.scm is sufficient to ensure that the cross-gcc-arguments procedure's configure options will include "--with-long-double-128" on the powerpc64le and powerpc architectures.
2021-06-19Merge branch 'master' into core-updatesMarius Bakke
Note: this merge actually changes the 'curl' and 'python-attrs' derivations, as part of solving caf4a7a2770ef4d05a6e18f40d602e51da749ddc and 12964df69a99de6190422c752fef65ef813f3b6b respectively. 4604d43c0e (gnu: gnutls@3.6.16: Fix cross-compilation.) was ignored because it cannot currently be tested. Conflicts: gnu/local.mk gnu/packages/aidc.scm gnu/packages/boost.scm gnu/packages/curl.scm gnu/packages/nettle.scm gnu/packages/networking.scm gnu/packages/python-xyz.scm gnu/packages/tls.scm
2021-06-14gnu: gcc-8: Make static libs reproducibleCarl Dong
This fixes the nonreproducibility in gcc documented here: https://reproducible-builds.org/docs/archives/#gnu-libtool * gnu/packages/patches/gcc-8-sort-libtool-find-output.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/gcc.scm (gcc-8)[source]: Apply it.
2021-06-13gnu: GCC: Switch to GCC 10.Marius Bakke
* gnu/packages/patches/gcc-cross-gxx-include-dir.patch: New file. * gnu/packages/patches/gcc-10-cross-environment-variables.patch: New file. * gnu/packages/gcc.scm (gcc): Point to GCC-10. (gcc-objc): Point to GCC-OBJC-10. (gcc-objc++): Point to GCC-OBJC++-10. * gnu/packages/cross-base.scm (cross-gcc)[source](patches): Apply the new patches.
2021-06-06Merge branch 'master' into core-updatesMarius Bakke
Conflicts: gnu/local.mk gnu/packages/algebra.scm gnu/packages/bioinformatics.scm gnu/packages/curl.scm gnu/packages/docbook.scm gnu/packages/emacs-xyz.scm gnu/packages/maths.scm gnu/packages/plotutils.scm gnu/packages/python-web.scm gnu/packages/python-xyz.scm gnu/packages/radio.scm gnu/packages/readline.scm gnu/packages/tls.scm gnu/packages/xml.scm gnu/packages/xorg.scm
2021-06-01gnu: gcc-9: Update to 9.4.0.Efraim Flashner
* gnu/packages/gcc.scm (gcc-9): Update to 9.4.0.
2021-05-22Merge branch 'master' into core-updatesMarius Bakke
2021-05-22gnu: gfortran: Remove obsolete workaround.Marius Bakke
* gnu/packages/gcc.scm (gfortran): Use GCC directly.
2021-05-15gnu: gcc-8: Update to 8.5.0.Efraim Flashner
* gnu/packages/gcc.scm (gcc-8): Update to 8.5.0.
2021-05-09Merge branch 'master' into core-updatesMarius Bakke
Conflicts: gnu/local.mk gnu/packages/bioinformatics.scm gnu/packages/django.scm gnu/packages/gtk.scm gnu/packages/llvm.scm gnu/packages/python-web.scm gnu/packages/python.scm gnu/packages/tex.scm guix/build-system/asdf.scm guix/build/emacs-build-system.scm guix/profiles.scm
2021-04-27gnu: Add gdc-11.Efraim Flashner
* gnu/packages/gcc.scm (gdc-11): New variable.
2021-04-27gnu: Add gcc-toolchain-11.Efraim Flashner
* gnu/packages/gcc.scm (gcc-11): New variable. * gnu/packages/commencement.scm (gcc-toolchain-11): New variable.
2021-04-16Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
Conflicts: gnu/local.mk gnu/packages/boost.scm gnu/packages/chez.scm gnu/packages/compression.scm gnu/packages/crates-io.scm gnu/packages/docbook.scm gnu/packages/engineering.scm gnu/packages/gcc.scm gnu/packages/gl.scm gnu/packages/gtk.scm gnu/packages/nettle.scm gnu/packages/python-check.scm gnu/packages/python-xyz.scm gnu/packages/radio.scm gnu/packages/rust.scm gnu/packages/sqlite.scm guix/build-system/node.scm
2021-04-12gnu: gcc: Update gcc to 8.Efraim Flashner
* gnu/packages/gcc.scm (gcc): Define as gcc-8. * gnu/packages/commencement.scm (gcc-toolchain-7): Use make-gcc-toolchain procedure. (gcc-toolchain-8): Define as gcc-toolchain. * gnu/packages/game-development (python2-renpy)[native-inputs], * gnu/packages/gnome.scm (gnome-commander)[native-inputs], * gnu/packages/wm.scm (waybar)[native-inputs]: Remove gcc-8.
2021-04-09gnu: gcc-10: Update to 10.3.0.Efraim Flashner
* gnu/packages/gcc.scm (gcc-10): Update to 10.3.0.
2021-03-25gnu: gcc: Fix comment about gfortran.Vincent Legoll
Added by: cb4805e34c9997edca14743516b9a0fde6303d1c Fixes: 0681f05486d901c92637c098bb7afddef35068b0 * gnu/packages/gcc.scm (gcc): Fix comment about gfortran. Signed-off-by: Christopher Baines <mail@cbaines.net>
2021-03-24gnu: make-libstdc++: Unconditionally apply powerpc substitution.Efraim Flashner
* gnu/packages/gcc.scm (make-libstdc++)[arguments]: Use modify-phases. Apply powerpc directory substitution on all architectures.
2021-03-24gnu: gcc-4.7: Unconditionally apply powerpc substitution.Efraim Flashner
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Adjust 'pre-configure phase to always apply powerpc substitution.
2021-03-24Merge remote-tracking branch 'origin/master' into core-updatesEfraim Flashner
2021-03-23gnu: gcc-4.7: On powerpc64le, fix /lib64 references.Chris Marusich
Fixes: <https://bugs.gnu.org/46253>. * gnu/packages/gcc.scm (gcc-4.7)[#:phases][pre-configure]: When the gcc/config/rs6000 directory exists, replace "/lib64" with "/lib" in all files within it. Note that this fix will be picked up by any package that re-uses the pre-configure phase from gcc-4.7 (e.g., all the usual gcc packages). (make-libstdc++)[#:phases][fix-rs6000-libdir]: New phase, which does the same as above. It was necessary to duplicate the fix here because make-libstdc++ does not re-use the pre-configure phase from gcc-4.7.
2020-12-17gnu: isl: Update to 0.23.Marius Bakke
* gnu/packages/gcc.scm (isl): Update to 0.23.
2020-11-25gnu: gcc: Phases no longer return a Boolean.Ludovic Courtès
* gnu/packages/gcc.scm (gcc-4.7, gcc-4.9) (make-libiberty, custom-gcc, libgccjit) (make-libstdc++-doc, isl, gnu-c-manual): Remove trailing #t from phases.
2020-11-25gnu: base, gcc: Removing trailing #t from snippets.Ludovic Courtès
* gnu/packages/base.scm (libiconv)[source]: Remove trailing #t from 'snippet'. * gnu/packages/gcc.scm (gcc-4.8)[source]: Likewise. (gcc-4.9)[source]: Likewise. (gcc-5)[source]: Likewise.
2020-09-13gnu: gccgo: Reword synopsis and description.zimoun
Fixes <https://bugs.gnu.org/43303>. Reported by Jeffrey Walton <noloader@gmail.com>. * gnu/packages/gcc.scm: (gccgo-4.9): Add synopsis and description Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13gnu: libgccjit: Reword synopsis and description.zimoun
Fixes <https://bugs.gnu.org/43303>. Reported by Jeffrey Walton <noloader@gmail.com>. * gnu/packages/gcc.scm: (libgccjit)[synopsis,description]: Reword. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-07-24gnu: gcc: Fix libstdc++ misconfiguration.Ludovic Courtès
Fixes <https://bugs.gnu.org/42392>. Reported by Maxim Cournoyer and Erik Garrison. Until now, the generated <bits/c++config.h> would be incorrect (many _GLIBCXX_HAVE macros would be undefined), which in turn would lead to build failures for most C++ programs. * gnu/packages/gcc.scm (gcc-6)[inputs]: Add LIBSTDC++-HEADERS. (libstdc++, libstdc++-headers): New variables. * gnu/packages/gcc.scm (gfortran): Change first argument to 'custom-gcc' to remove dependency on LIBSTDC++-HEADERS.
2020-07-24gnu: gcc@10: Update to 10.2.0.Ludovic Courtès
* gnu/packages/gcc.scm (gcc-10): Update to 10.2.0.
2020-07-19gnu: Add gdc-10.guy fleury iteriteka
* gnu/packages/gcc.scm (gdc-10): New variable. Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2020-06-30gnu: Add gcc-{objc,objc++}-{9,10}.Jakub Kądziołka
* gnu/packages/gcc.scm (%objc-search-paths, %objc++-search-paths): New variables. (gcc-objc-4.8, gcc-objc-4.9, gcc-objc-5, gcc-objc-6, gcc-objc-7, gcc-objc-8, gcc-objc++-4.8, gcc-objc++-4.9, gcc-objc++-5, gcc-objc++-6, gcc-objc++-7, gcc-objc++-8): Don't duplicate the search path list. (gcc-objc-9, gcc-objc-10, gcc-objc++-9, gcc-objc++-10): New variables.
2020-06-30gnu: gfortran: Remove unusable versions.Jakub Kądziołka
The gfortran packages cannot be used without being wrapped with gfortran-toolchain. However, as the comment in (gnu packages commencement) explains, there cannot be more than one gfortran-toolchain package because of ABI issues. Thus, versions of gfortran other than the main one are useless. * gnu/packages/gcc.scm (gfortran-4.8, gfortran-4.9, gfortran-5, gfortran-6, gfortran-7, gfortran-8, gfortran-9): Remove variables. (gfortran): Define the gfortran package based on the gcc variable.
2020-05-08Merge branch 'core-updates'Marius Bakke
2020-05-08gnu: gcc: Add 10.1.0.Ludovic Courtès
* gnu/packages/gcc.scm (gcc-10): New variable.
2020-04-28gnu: custom-gcc: Ensure #:modules are not overridden by the inherited GCC.Marius Bakke
This fixes a regression introduced in 56c833ea287f8f6d3c72f8bddc314960c0164d64 where the #:modules argument became ineffective. Reported by Efraim Flashner in <https://lists.gnu.org/archive/html/guix-devel/2020-04/msg00473.html> * gnu/packages/gcc.scm (custom-gcc)[arguments]: Add #:modules through SUBSTITUTE-KEYWORD-ARGUMENTS.
2020-04-23gnu: GCC@8: Remove obsolete patch.Marius Bakke
This is no longer required since the update to 8.4.0 in 60ce496ad8. * gnu/packages/patches/gcc-8-libsanitizer-mode-size.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/gcc.scm (gcc-8)[source](patches): Remove it.
2020-03-24gnu: bootstrap: gcc-static: Use gcc-5.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (gcc-static): Use gcc-5. This fixes building libstdc++-boot0 with a newly built %bootstrap-gcc. (%gcc-stripped): Likewise. (gcc-for-bootstrap): Likewise. * gnu/packages/patches/gcc-5-hurd.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gcc.scm (gcc-5): Use it.
2020-03-21Merge branch 'master' into core-updatesMarius Bakke
2020-03-20gnu: make-libiberty: Use install-file.guy fleury iteriteka
* gnu/packages/gcc.scm(make-libiberty): In phase install use install-file helper function to install file.
2020-03-20gnu: libiberty: Do not inherit properties from GCC.Marius Bakke
* gnu/packages/gcc.scm (make-libiberty)[properties]: New field.
2020-03-18gnu: GCC@9: Remove obsolete patch.Marius Bakke
This patch became obsolete when the update to 9.3.0 was merged (commit 3dade1d59e7b4caa641670a76c0c48b4c90f6b3c). * gnu/packages/patches/gcc-9-libsanitizer-mode-size.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/gcc.scm (gcc-9)[source](patches): Remove it.
2020-03-18Merge branch 'master' into core-updatesMarius Bakke
2020-03-15gnu: gcc@4.9, gcc@5: Adjust for CPLUS_INCLUDE_PATH changes.Marius Bakke
* gnu/packages/gcc.scm (gcc-4.9): Unless cross-compiling, add ... [arguments]: with a phase to remove glibc and GCC from CPLUS_INCLUDE_PATH. (gcc-6)[arguments]: Inherit from GCC-4.8.
2020-03-16gnu: Add libgccjit.Joseph LaFreniere
* gnu/packages/gcc.scm (libgccjit): New variable. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-03-14gnu: gcc-9: Update to 9.3.0.Efraim Flashner
* gnu/packages/gcc.scm (gcc-9): Update to 9.3.0.
2020-03-04Merge branch 'master' into core-updatesMarius Bakke
2020-03-04gnu: gcc-8: Update to 8.4.0.Efraim Flashner
* gnu/packages/gcc.scm (gcc-8): Update to 8.4.0.
2020-02-15gnu: isl: Move the static library to a separate output.Marius Bakke
* gnu/packages/gcc.scm (isl)[outputs, arguments]: New fields. * gnu/packages/make-bootstrap.scm (%gcc-static)[inputs]: Add ISL:STATIC.