Commit Graph

325 Commits

Author SHA1 Message Date
Josselin Poiret
6cdd444a56
gnu: gcc@11: Patch libpthread on GNU/Hurd.
* gnu/packages/gcc.scm (gcc-11)[arguments]: Add 'patch-hurd-libpthread'
phase.
* gnu/packages/patches/gcc-11-libstdc++-hurd-libpthread.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2023-03-30 12:44:18 +02:00
Ludovic Courtès
0ad86e94f5
gnu: libstdc++: Fix cross-compilation.
* gnu/packages/gcc.scm (make-libstdc++): Adjust 'hide-gcc-headers' for
cross-compiled libstdc++.
2023-03-09 13:08:53 +01:00
Ludovic Courtès
0aed5bf512
gnu: gcc@4.9, gcc@5.5: Build with '-std=c++11'.
These two compilers would fail to build with GCC 11.3.0 because it
defaults to C++17, which triggers some incompatibilities.

* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Augment #:configure-flags
for 4.9 and 5.0.
(gcc-4.9)[arguments]: Define 'parent' so that (package-arguments parent)
correctly evaluates the version-dependent parts.
2023-03-03 22:37:40 +01:00
Christopher Baines
7df09ee0ab
Merge remote-tracking branch 'savannah/master' into core-updates
Conflicts:
	gnu/local.mk
	gnu/packages/autotools.scm
	gnu/packages/cmake.scm
	gnu/packages/gnuzilla.scm
	gnu/packages/haskell.scm
	gnu/packages/pdf.scm
	gnu/packages/python-xyz.scm
	gnu/packages/samba.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/wxwidgets.scm
2023-03-02 10:55:08 +00:00
Efraim Flashner
315359a4f3
gnu: Add gccgo-12.
* gnu/packages/gcc.scm (gccgo-12): New variable.
(make-gccgo)[arguments]: Adapt custom 'remove-tool-reference-from-libgo
to changes in the source.
2023-02-09 21:58:08 +02:00
Efraim Flashner
4cf1acc7f3
Merge remote-tracking branch 'origin/master' into core-updates
Conflicts:
	doc/guix.texi
	gnu/local.mk
	gnu/packages/admin.scm
	gnu/packages/base.scm
	gnu/packages/chromium.scm
	gnu/packages/compression.scm
	gnu/packages/databases.scm
	gnu/packages/diffoscope.scm
	gnu/packages/freedesktop.scm
	gnu/packages/gnome.scm
	gnu/packages/gnupg.scm
	gnu/packages/guile.scm
	gnu/packages/inkscape.scm
	gnu/packages/llvm.scm
	gnu/packages/openldap.scm
	gnu/packages/pciutils.scm
	gnu/packages/ruby.scm
	gnu/packages/samba.scm
	gnu/packages/sqlite.scm
	gnu/packages/statistics.scm
	gnu/packages/syndication.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/version-control.scm
	gnu/packages/xml.scm
	guix/build-system/copy.scm
	guix/scripts/home.scm
2023-01-30 12:39:40 +02:00
Efraim Flashner
b41ff1a00d
gnu: gcc-2.95: Add initial work toward building for arm.
* gnu/packages/gcc.scm (gcc-2.95)[source]: Adjust source to use newer
macros from more recent versions of GCC.
2022-10-18 08:41:48 +03:00
Efraim Flashner
96f8945425
gnu: gcc-2.95: Add substitution for the Hurd's linker.
* gnu/packages/gcc.scm (gcc-2.95)[arguments]: Adjust custom
'set-dynamic-linker-file-name phase to also substitute the Hurd's
linker.
2022-10-18 08:41:44 +03:00
Maxim Cournoyer
efb974a6fa
gnu: isl: Remove outdated comment.
* gnu/packages/gcc.scm (isl) [source]: Remove outdated comment.
2022-10-03 11:16:14 -04:00
Maxim Cournoyer
4920f6e634
Merge branch 'staging' into core-updates
Conflicts resolved in:
	gnu/local.mk
	gnu/packages/cmake.scm
	gnu/packages/glib.scm
	gnu/packages/gnome.scm
	gnu/packages/gtk.scm
	gnu/packages/sdl.scm

pango-next, vala-next and librsvg-bootstrap were removed in the process.
2022-09-15 11:43:21 -04:00
Liliana Marie Prikler
80a9b757e8
gnu: libgccjit: Build multiple versions.
* gnu/packages/gcc.scm (libgccjit-9, libgccjit-10, libgccjit-11)
(libgccjit-12): New variables.
(libgccjit): Update to libgccjit-10.
2022-09-11 15:46:31 +02:00
Liliana Marie Prikler
6b63571557
gnu: libgccjit: Build with bootstrapped gcc.
* gnu/packages/gcc.scm (make-libgccjit)[#:configure-flags]: Add
“--disable-bootstrap”, “--disable-libatomic”, “--disable-libgomp”,
“--disable-libquadmath”, “--disable-libssp”, and “--enable-checking=release”.
[inputs]: Remove libstdc++.
[native-inputs]: Add gcc.
2022-09-11 15:46:31 +02:00
Liliana Marie Prikler
bf33a77ea7
gnu: Parameterize libgccjit.
* gnu/packages/gcc.scm (make-libgccjit): New variable.
(libgccjit): Define in terms of make-libgccjit.
2022-09-11 15:46:31 +02:00
Marius Bakke
56759d30d9
gnu: Switch to GCC 11.
* gnu/packages/commencement.scm (gcc-boot0)[source]: Delete offending files
from GCC.
(libstdc++-boot0)[arguments]: Add #:modules.
(libstdc++): Inherit from from GCC-BOOT0 rather than GCC.
(gcc-final)[arguments]: Add phase to workaround libstdc++ build system issue.
Add #:modules.
* gnu/packages/gcc.scm (make-libstdc++): Likewise.
2022-09-08 21:40:00 +02:00
Marius Bakke
ad384816fe
Merge branch 'staging' into core-updates 2022-08-27 17:10:55 +02:00
Greg Hogan
9f7236e3ba
gnu: gcc-12: Update to 12.2.0.
* gnu/packages/gcc.scm (gcc-12): Update to 12.2.0.

Signed-off-by: Marius Bakke <marius@gnu.org>
2022-08-27 00:09:03 +02:00
Marius Bakke
8a2b5f3f58
gnu: GCC: Fix union optimization issue.
* gnu/packages/patches/gcc-10-tree-sra-union-handling.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/gcc.scm (gcc-10, gcc-11)[source](patches): Add it.
* gnu/packages/rust.scm (rust-bootstrap)[native-inputs]: Remove GCC-9.
2022-07-27 17:53:49 +02:00
Marius Bakke
b791e09b92
gnu: GCC: Build with Elfutils instead of libelf.
* gnu/packages/gcc.scm (gcc-4.7)[inputs]: Change from LIBELF to ELFUTILS.
2022-07-23 19:43:11 +02:00
Efraim Flashner
7476a910a1
gnu: gcc: Patch gcc for riscv unconditionally.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: In custom 'pre-configure
phase unconditionally remove STARTFILE_PREFIX_SPEC in all locations it
may exist.
2022-07-10 08:44:55 +03:00
Efraim Flashner
4bc6888f5e
gnu: gcc-10: Update to 10.4.0.
* gnu/packages/gcc.scm (gcc-10): Update to 10.4.0.
2022-06-29 13:06:48 +03:00
Marius Bakke
2a7648774f
Merge branch 'master' into core-updates 2022-06-27 19:23:48 +02:00
Marius Bakke
6c80f4949f
gnu: isl: Update to 0.24.
* gnu/packages/gcc.scm (isl): Update to 0.24.
[source](uri): Use new .xz tarball.
2022-06-26 22:58:33 +02:00
Marius Bakke
b36c41ee54
gnu: gcc-objc, gcc-objc++: Declare variants for GCC 11 and GCC 12.
* gnu/packages/gcc.scm (gcc-objc-11, gcc-objc-12, gcc-objc++-11,
gcc-objc++-12): New variables.
2022-06-26 22:22:34 +02:00
Efraim Flashner
d2a9142852
gnu: gcc-9: Update to 9.5.0.
* gnu/packages/gcc.scm (gcc-9): Update to 9.5.0.
2022-05-30 15:28:04 +03:00
Ludovic Courtès
37e29ccd33
gnu: gcc: Add 12.1.0.
* gnu/packages/gcc.scm (gcc-12): New variable.
2022-05-24 17:17:30 +02:00
Ludovic Courtès
dc9503dd5e
gnu: gcc@11: Update 'compiler-cpu-architectures' property.
* gnu/packages/gcc.scm (%gcc-11-aarch64-micro-architectures)
(%gcc-11-armhf-micro-architectures)
(%gcc-11-x86_64-micro-architectures): New variables.
(gcc-11)[properties]: Use them.
2022-05-24 17:17:30 +02:00
Greg Hogan
9017c2406b
gnu: gcc-11: Update to 11.3.0.
* gnu/packages/gcc.scm (gcc-11): Update to 11.3.0.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2022-05-09 11:02:14 +03:00
Ludovic Courtès
d93706aded
gnu: isl: Add 'release-monitoring-url' property.
* gnu/packages/gcc.scm (isl)[properties]: New field.
2022-03-19 22:44:31 +01:00
Ludovic Courtès
75431d509b
gnu: isl: Get source from SourceForge.
Reported by Artyom V. Poptsov <poptsov.artyom@gmail.com>.

* gnu/packages/gcc.scm (isl)[home-page]: Update.
[source]: Replace gforge.inria.fr URL with mirror://sourceforge URL.
(isl-0.18)[source]: Likewise.
(isl-0.11)[source]: Likewise.
2022-03-19 22:44:03 +01:00
Efraim Flashner
32f52f82b3
gnu: gcc: For riscv64-linux remove STARTFILE_PREFIX_SPEC.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: When building for
riscv64-linux and the 'gcc/configure/riscv' directory exists adjust the
STARTFILE_PREFIX_SPEC so it doesn't do anything.
2022-03-16 12:09:42 +02:00
Ludovic Courtès
15bb35d0c4
gnu: gcc@11: Inherit supported micro-architectures from gcc@10.
Previously, gcc@11 would inherit the 'compiler-cpu-architectures'
property from gcc@8.

* gnu/packages/gcc.scm (gcc-11)[properties]: New field.
2022-03-14 23:32:26 +01:00
Efraim Flashner
e4779e0610
gnu: custom-gcc-gccgo: Remove procedure.
* gnu/packages/gcc.scm (custom-gcc-gccgo): Remove procedure.
(make-gccgo): Use custom-gcc procedure.
2022-02-22 13:09:15 +02:00
Efraim Flashner
5cc9d41d86
gnu: Add gccgo-11.
* gnu/packages/gcc.scm (gccgo-11): New variable.
2022-02-22 13:09:14 +02:00
Efraim Flashner
3f929203cf
gnu: gcc-2.95: Support more systems.
* gnu/packages/gcc.scm (gcc-2.95)[supported-systems]: Allow all except
powerpc64le-linux and riscv64-linux.
[arguments]: Set #:system to the 32-bit version of our supported 64-bit
architectures. Modify custom 'set-dynamic-linker-file-name phase to use
the glibc-dynamic-linker for the selected system, and to substitute more
locations.
2022-02-15 11:43:23 +02:00
Ludovic Courtès
66f12401d4
gnu: gcc: Add 2.95.
* gnu/packages/gcc.scm (gcc-2.95): New variable.
2022-02-14 15:52:35 +01:00
Efraim Flashner
1ddef634b0
gnu: gcc: Add compiler-cpu-architectures for armhf.
* gnu/packages/gcc.scm (%gcc-7.5-armhf-micro-architectures,
%gcc-10-armhf-micro-architectures): New variables.
(gcc-7, gcc-10)[properties]: Add armhf compiler-cpu-architectures.
2022-02-13 14:47:03 +02:00
Efraim Flashner
c31eed7107
gnu: gcc: Add compiler-cpu-architectures for aarch64.
* gnu/packages/gcc.scm (%gcc-7.5-aarch64-micro-architectures,
%gcc-10-aarch64-micro-architectures): New variables.
(gcc-7, gcc-10)[properties]: Add aarch64 compiler-cpu-architectures.
2022-02-13 14:47:01 +02:00
Ludovic Courtès
2576e2019d
gnu: gcc: Add 'compiler-cpu-architectures' property.
* gnu/packages/gcc.scm (%gcc-7.5-x86_64-micro-architectures)
(%gcc-10-x86_64-micro-architectures): New variables.
(gcc-7, gcc-10): Add 'properties' field.
* gnu/packages/commencement.scm (make-gcc-toolchain): Likewise.
2022-01-01 15:23:24 +01:00
Ludovic Courtès
8394619bac
gnu: Simplify package inputs.
This commit was obtained by running:

  ./pre-inst-env guix style

without any additional argument.
2021-12-13 17:48:25 +01:00
Mathieu Othacehe
32750e8c3e
Merge remote-tracking branch 'signed/master' into core-updates 2021-12-10 21:49:25 +01:00
Ricardo Wurmus
b69156ef30
gnu: Add gfortran-7.
* gnu/packages/gcc.scm (gfortran-7): New variable.
2021-12-09 11:17:45 +01:00
Sarah Morgensen
68d15fcf20
gnu: make-gccgo: Override empty GOROOT/GCCGOTOOLDIR
gnu/packages/gcc.scm (make-gccgo)[arguments]: Set tool paths
(GOROOT and GCCGOTOOLDIR) even if they are already set to "".

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2021-12-07 15:25:54 +02:00
Thiago Jung Bauermann
b04a20f77f
gnu: gcc-5: Fix powerpc64le-linux build
GCC 5 has a misaligned access to a vector pointer which causes a build failure
when using GCC 8 and later.  Backport upstream fix that was applied on the GCC
6 branch.

* gnu/packages/gcc.scm (gcc-5)[source]: Apply
gcc-5-fix-powerpc64le-build.patch.
* gnu/packages/patches/gcc-5-fix-powerpc64le-build.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2021-11-11 10:31:31 -05:00
Marius Bakke
c4133c43c7
Merge branch 'master' into core-updates-frozen
Conflicts:
	gnu/packages/algebra.scm
	gnu/packages/games.scm
	gnu/packages/golang.scm
	gnu/packages/kerberos.scm
	gnu/packages/mail.scm
	gnu/packages/python.scm
	gnu/packages/ruby.scm
	gnu/packages/scheme.scm
	gnu/packages/tex.scm
	gnu/packages/tls.scm
	gnu/packages/version-control.scm
2021-08-12 00:30:27 +02:00
Efraim Flashner
a75cc5f463
gnu: gcc-11: Update to 11.2.0.
* gnu/packages/gcc.scm (gcc-11): Update to 11.2.0.
2021-08-08 16:48:27 +03:00
Ludovic Courtès
0e47fcced4
Merge branch 'master' into core-updates 2021-07-18 19:50:01 +02:00
Ludovic Courtès
eeedb328da
gnu: gcc: Fix cross-compilation.
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-06 08:50:31 +02:00
Sarah Morgensen
5318bade32
gnu: custom-gcc: Update regex for removing executables.
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-07-05 13:12:03 +02:00
Sarah Morgensen
ef590de692
gnu: Add gccgo-10.
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-28 22:19:48 +03:00
Chris Marusich
45dd2b4505
gnu: Simplify the use of --with-long-double-128.
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-24 20:45:48 -07:00