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.
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.
* 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.
This patch became obsolete when the update to 9.3.0 was merged (commit 3dade1d59e).
* 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.
* 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.
Fixes <https://bugs.gnu.org/30756>.
Initially reported by Julien Lepiller <julien@lepiller.eu>.
* gnu/packages/base.scm (make-gcc-libc): Remove
'treat-glibc-as-system-header' phase from 'arguments'.
* gnu/packages/commencement.scm (gcc-final): Likewise.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Add "include/c++" to
'CPLUS_INCLUDE_PATH'.
(gcc-6)[native-search-paths]: Remove.
* gnu/packages/make-bootstrap.scm (gcc-for-bootstrap): Remove
'native-search-paths' and 'arguments'.
* gnu/packages/patches/python-2.7-search-paths.patch,
gnu/packages/patches/python-3-search-paths.patch: Replace "CPATH" with
"C_INCLUDE_PATH".
* guix/build-system/cmake.scm (lower): When not cross-compiling, move
INPUTS from the 'host-inputs' field to the 'build-inputs' field of the
bag, right after NATIVE-INPUTS.
* guix/build-system/glib-or-gtk.scm (lower): Likewise.
* guix/build-system/gnu.scm (lower): Likewise.
* guix/build-system/meson.scm (lower): Likewise.
This is a follow-up to commit d78010b81e. While
the plain "gcc" packages should be hidden by default, gcc-derived packages
like "gfortran" should not.
* gnu/packages/gcc.scm (custom-gcc)[properties]: Remove the 'hidden? property.
This allows us to supply gcc-9 as an optional argument to cross-gcc,
successfully constructing gcc-9-based cross-compilers.
* gnu/packages/gcc.scm (gcc-9)[source](patches): Add
"gcc-9-asan-fix-limits-include.patch".
* gnu/packages/patches/gcc-9-asan-fix-limits-include.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add the patch.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/cross-base.scm (%gcc-cross-include-paths): Remove
CROSS_C_INCLUDE_PATH & co in favor of CROSS_CPATH.
* gnu/build/cross-toolchain.scm (%gcc-cross-include-paths): Likewise.
(cross-gcc-build-phases): Set CROSS_C_INCLUDE_PATH and
CROSS_CPLUS_INCLUDE_PATH when building the cross GCC.
* gnu/packages/commencement.scm (libstdc++): Add
"--disable-libstdcxx-dual-abi" to #:configure-flags.
(gcc-boot0)[arguments]: Add "--disable-libmpx"
to #:configure-flags.
(gcc-final): Add phase to set C_INCLUDE_PATH and CPLUS_INCLUDE_PATH before
building GCC.
(gcc-toolchain-5): Use MAKE-GCC-TOOLCHAIN.
(gcc-toolchain-7): Change to GCC-TOOLCHAIN.
* gnu/packages/gcc.scm (gcc): Change from GCC-5 to GCC-7.
(gfortran): Change to GFORTRAN-7.
(gcc-objc): Change to GCC-OBJC-7.
(gcc-objc++): Change to GCC-OBJC++-7.
* gnu/packages/rust.scm (rust-1.19.0)[native-search-paths]: Change from
C_INCLUDE_PATH & co to CPATH.
* gnu/packages/gcc.scm (gcc-7): Update to 7.4.0.
[source](patches): Drop 'gcc-libsanitizer-ustat.patch'.
* gnu/packages/storage.scm (ceph)[inputs]: Change from BOOST to BOOST-CXX14,
as GCC 7.4.0 triggers <https://bugs.gnu.org/33605>.
* gnu/packages/patches/gcc-libsanitizer-ustat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gcc.scm (gcc-5)[source](patches): Add it.
Fixes <https://bugs.gnu.org/32397>.
Reported by fis trivial <ybbs.daans@hotmail.com>.
* gnu/packages/patches/gcc-4.8-libsanitizer-fix.patch: New file.
* gnu/packages/gcc.scm (gcc-4.8)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.