summaryrefslogtreecommitdiff
path: root/gnu/packages/gcc.scm
Commit message (Expand)AuthorAgeFilesLines
* gnu: Use gcc-14, gcc-toolchain-14 on the 64bit Hurd.•••This enables building packages in a 64bit childhurd. It will not enable offloading to a childhurd. * guix/utils.scm (host-hurd?, host-x86-64, host-hurd64?): New procedures. * gnu/packages/commencement.scm (gcc-toolchain): Use them to determine if the host is a 64bit Hurd, and use gcc-toolchain-14. * gnu/packages/gcc.scm (gcc): Likewise, to use gcc-14. Change-Id: I55e43fdc61e3ea5fc13065fc7ca854b951c94930 Janneke Nieuwenhuizen2024-12-031-1/+4
* gnu: gcc-14: Force libdir /lib instead of /lib64 for the 64bit Hurd.•••* gnu/packages/gcc.scm (gcc-14)[arguments]: In stage "pre-x86-configure", also patch "gcc/config/i386/t-gnu64". Change-Id: Ib2607c5f315c49696596fdcbcbbcc2895b6a9775 Janneke Nieuwenhuizen2024-12-031-1/+2
* gnu: libstdc++: Support the 64bit Hurd.•••* gnu/packages/gcc.scm (make-libstdc++)[arguments]: When building for the 64bit Hurd, add stage patch-hurd64. Change-Id: I795a591ef8282ee5b760fec43bd4ad849007f602 Janneke Nieuwenhuizen2024-12-031-1/+9
* gnu: gcc@9: Add libsanitizer fsconfig command patch.•••Since newer glibc version there is a conflict in names between kernel module and glibc module. This uses a patch that was used upstream in llvm to bypass it. Without this, the build fails with a redefinition error. * gnu/packages/gcc.scm (gcc-9)[source]: Add ‘gcc-7-libsanitizer-fsconfig-command.patch’. Change-Id: Ibb8446b7bba52f72d82fcf69804cae09215daeed Signed-off-by: Ludovic Courtès <ludo@gnu.org> Rutherther2024-10-151-1/+2
* gnu: gcc-14: Add tuning target.•••* gnu/packages/gcc.scm (%gcc-14-x86_64-micro-architectures): New variable. (gcc-14)[properties]: Use it. Change-Id: I00f9e2a4c9d590f97977275b157002ac330b895b Efraim Flashner2024-09-301-1/+13
* gnu: make-libiberty: Build with -fPIC.•••Since iberty is a static library, linking a PIC-enabled target to it requires it to also have been built with PIC. (The target is Dyninst in this case.) This `-fPIC' flag is appended to the default CFLAGS of `-O2 -g'. * gnu/packages/gcc.scm (make-libiberty)[arguments]: Adjust make-flags to add -fPIC to CFLAGS. Change-Id: I155045d05f4434cb68be933a95b7bc9fdec98818 Signed-off-by: Ludovic Courtès <ludo@gnu.org> Nguyễn Gia Phong2024-09-191-0/+1
* gnu: make-libiberty: Install the header demangle.h.•••This header is wanted by Dyninst. * gnu/packages/gcc.scm (make-libiberty): Add include/demangle.h to install phase. Change-Id: I01235071b75b412f55785d240cda248315b7a93e Signed-off-by: Ludovic Courtès <ludo@gnu.org> Nguyễn Gia Phong2024-09-191-0/+2
* gnu: gcc@8: Add missing patch.•••This fixes compilation with glibc 2.39. * gnu/packages/gcc.scm (gcc-8)[source]: Add “gcc-7-libsanitizer-fsconfig-command.patch”. Change-Id: If8f99972278b90f37e104da3b3ca414be6f34140 Ludovic Courtès2024-09-171-0/+1
* gnu: libgccjit: Remove duplicate libgccjit@11 package.•••Fixes a regression introduced in bfeccd3db9446d45d04d9144698506a61321e1c6 and caught by ‘tests/packages.scm’, whereby two equivalent but not ‘eq?’ libgccjit@11 packages would be exported. * gnu/packages/gcc.scm (libgccjit): Make an alias for ‘libgccjit-11’. Change-Id: I9aeacb7588af5f78af0941e80715665572567958 Ludovic Courtès2024-09-171-2/+3
* gnu: gcc-6: Fix libsanitizer build.•••* gnu/packages/gcc.scm (gcc-6, gcc-5): Also apply gcc-7's libsanitizer patch. Change-Id: I2f5699480574721dc32389b7c2c3c45043d28b51 Josselin Poiret2024-08-311-0/+2
* gnu: gcc: Patch crypt out of bundled libsanitizer.•••* gnu/packages/patches/gcc-10-libsanitizer-no-crypt.patch: * gnu/packages/patches/gcc-12-libsanitizer-no-crypt.patch: * gnu/packages/patches/gcc-13-libsanitizer-no-crypt.patch: New patches. * gnu/local.mk (dist_patch_DATA): Register them. * gnu/packages/gcc.scm (gcc-10, gcc-11, gcc-12, gcc-13): Use them. Change-Id: Idc450c5a468e07c4ea78c8ca7bb1c5ee379231bb Josselin Poiret2024-08-311-2/+6
* gnu: gcc: Simplify application of Hurd-specific pthread patch.•••* gnu/packages/gcc.scm (gcc-11): Apply gcc-11-libstdc++-hurd-libpthread.patch unconditionally. (gcc-12): Also apply gcc-11-libstdc++-hurd-libpthread.patch. Change-Id: I80e2b2adb5636e1bff4536c5a0a348955454e81d Josselin Poiret2024-08-311-14/+4
* gnu: gcc@7: Allow compilation with glibc 2.38.•••* gnu/packages/patches/gcc-7-libsanitizer-fsconfig-command.patch: New file. * gnu/packages/gcc.scm (gcc-7)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it. Change-Id: Ifa273b92573281c34d83e5fb8cd68734ef02c7fd Ludovic Courtès2024-08-311-0/+1
* gnu: gcc: Support objc, objc++ by default.•••* gnu/packages/gcc.scm (gcc-4.7)[configure-flags]: Adjust the enable-languages flag to also enable objc, obj-c++. (gcc-objc-4.8, gcc-objc-4.9, gcc-objc-5, gcc-objc-6, gcc-objc-7, gcc-objc-8, gcc-objc-9, gcc-objc-10, gcc-objc-11, gcc-objc-12, gcc-objc, gcc-objc++-4.8, gcc-objc++-4.9, gcc-objc++-5, gcc-objc++-6, gcc-objc++-7, gcc-objc++-8, gcc-objc++-9, gcc-objc++-10, gcc-objc++-11, gcc-objc++-12, gcc-objc++, %objc-search-paths, %objc++-search-paths): Remove variables. * guix/search-paths.scm ($OBJC_INCLUDE_PATH, $OBJCPLUS_INCLUDE_PATH): New variables. (%gcc-search-paths): Include $OBJC_INCLUDE_PATH, $OBJCPLUS_INCLUDE_PATH. Change-Id: Ib4cd176eb88c733a82f2d31e8cc45b9c61720f8f Efraim Flashner2024-08-311-97/+1
* gnu: gcc@11: Update to 11.4.0.•••* gnu/packages/gcc.scm (gcc-11): Update to 11.4.0. Remove ‘gcc-10-tree-sra-union-handling.patch’. Change-Id: Iff8c9151326c87cb13db9c5b1a00c44b8eef95e3 Co-authored-by: Janneke Nieuwenhuizen <janneke@gnu.org> Signed-off-by: Ludovic Courtès <ludo@gnu.org> Greg Hogan2024-08-311-4/+3
* gnu: custom-gcc: Import the correct set of modules.•••* gnu/packages/gcc.scm (custom-gcc) [arguments] <modules>: Replace %default-gnu-imported-modules with %default-gnu-modules. Change-Id: I133daad4e05d5daa98fadd5acf2d0f4606b6e056 Maxim Cournoyer2024-08-311-1/+1
* gnu: make-libstdc++: Import the correct set of modules.•••* gnu/packages/gcc.scm (make-libstdc++) [arguments] <modules>: Replace %default-gnu-imported-modules with %default-gnu-modules. Change-Id: I3fe29766f767765e966c189395f618b7779f1e0d Maxim Cournoyer2024-08-311-1/+1
* gnu: gcc-4.8: Import the correct set of modules.•••* gnu/packages/gcc.scm (gcc-4.8) [arguments] <modules>: Replace %default-gnu-imported-modules with %default-gnu-modules. Change-Id: I8482661bd49a94adefc772fda0449023bdd5927e Maxim Cournoyer2024-08-311-1/+1
* build-systems: gnu: Export %default-gnu-imported-modules and %default-gnu-mod...•••Until now users would have to cargo cult or inspect the private %default-modules variable of (guix build-systems gnu) to discover which modules to include when extending the used modules via the #:modules argument. The renaming was automated via the command: $ git grep -l %gnu-build-system-modules | xargs sed 's/%gnu-build-system-modules/%default-gnu-imported-modules/' -i * guix/build-system/gnu.scm (%gnu-build-system-modules): Rename to... (%default-gnu-imported-modules): ... this. (%default-modules): Rename to... (%default-gnu-modules): ... this. Export. (dist-package, gnu-build, gnu-cross-build): Adjust accordingly. Change-Id: Idef307fff13cb76f3182d782b26e1cd3a5c757ee Maxim Cournoyer2024-08-311-3/+3
* gnu: make-libstdc++: Adjust order of phases.•••* gnu/packages/gcc.scm (make-libstdc++)[arguments]: Move custom 'fix-rs6000-libdir phase to after the 'unpack phase. Efraim Flashner2024-08-311-1/+1
* gnu: libstdc++-doc: Build libstdc++ info documentation.•••* gnu/packages/patches/gcc-13.2.0-libstdc++-docbook-xsl-uri.patch: New file. * gnu/packages/patches/gcc-13.2.0-libstdc++-info-install-fix.patch: Ditto. * gnu/packages/patches/gcc-5.5.0-libstdc++-xmlcatalog.patch: Ditto. * gnu/local.mk: Register them. * gnu/packages/gcc.scm (gcc-5)[source]: Use gcc-5.5.0-libstdc++-xmlcatalog.patch, gcc-13.2.0-libstdc++-docbook-xsl-uri.patch and gcc-13.2.0-libstdc++-info-install-fix.patch. (gcc-9)[source]: Use gcc-13.2.0-libstdc++-docbook-xsl-uri.patch and gcc-13.2.0-libstdc++-info-install-fix.patch. (make-libstdc++-doc)[arguments]<#:phases>: Remove 'set-xsl-directory. Adjust 'build and 'install for info documentation and to respect make-flags. [native-inputs]: Add docbook2x. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: Ie3b9de0328a10efadb28d211c3fe03f9b7aaf87f Bruno Victal2024-08-311-21/+17
* gnu: libstdc++-doc: Rewrite with G-Expressions.•••* gnu/packages/gcc.scm (make-libstdc++-doc): Rewrite arguments with G-Expressions. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: Idc8da964b7d777e0459c731625296ccd96546fa7 Bruno Victal2024-08-311-30/+31
* gnu: %objc++-search-paths: Express using $LIBRARY_PATH.•••* gnu/packages/gcc.scm (%objc++-search-paths): Express using $LIBRARY_PATH. Maxim Cournoyer2024-08-311-3/+1
* gnu: gccgo-4.9: Express search paths via (guix search-paths) variables.•••* gnu/packages/gcc.scm (gccgo-4.9) [native-search-paths]: Express search paths via (guix search-paths) variables. Maxim Cournoyer2024-08-311-3/+1
* gnu: gcc-2.95: Express search paths via (guix search-paths) variables.•••* gnu/packages/gcc.scm (gcc-2.95) [native-search-paths]: Express search paths via (guix search-paths) variables. Maxim Cournoyer2024-08-311-6/+2
* gnu: gcc-4.7: Use %gcc-search-paths for native-search-paths.•••* gnu/packages/gcc.scm (gcc-4.7) [native-search-paths]: Use %gcc-search-paths. Change-Id: Ia9acc98c2f7c7bc101ac43a4288ee4368c2b3dfa Maxim Cournoyer2024-08-311-19/+3
* gnu: libgccjit: Track the default GCC version.•••* gnu/packages/gcc.scm (libgccjit): Rewrite to use the default gcc version. Efraim Flashner2024-08-311-1/+2
* gnu: Add gfortran 13.•••* gnu/packages/gcc.scm (gfortran-13): New variable. Change-Id: Idf9a35548a9a80251cc70154c7d70f5b3a316db9 Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn> Romain GARBAGE2024-08-281-0/+6
* gnu: gcc@12: Update to 12.4.0.•••* gnu/packages/gcc.scm (gcc-12): Update to 12.4.0. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: Ibdd003d5b61eb4b9e6a1b56428d01d51cca97b44 fanquake2024-08-191-2/+2
* gnu: gcc-14: Update to 14.2.0.•••* gnu/packages/gcc.scm (gcc-14): Update to 14.2.0. Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn> Change-Id: I250bf04c04233aa449f70701a238bfb4d4d07933 Michael Ford2024-08-051-2/+2
* gnu: Add libgccjit-14.•••* gnu/packages/gcc.scm (libgccjit-14): New variable. Change-Id: I9c5be52e4e07ca48ae7191b6ff0c163541544700 Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Zheng Junjie2024-07-021-0/+1
* gnu: Add gccgo-14.•••* gnu/packages/gcc.scm (gccgo-14): New variable. Change-Id: I065373047eb186ac410813b7eea0af3b44d8aaa7 Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Zheng Junjie2024-07-021-0/+4
* gnu: Add gcc-14.•••* gnu/packages/gcc.scm (gcc-14): New variable. Change-Id: I7eca4e35e010a69c13489c10c72c29d6e628bb72 Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Zheng Junjie2024-07-021-0/+23
* gnu: gcc: Add tuning targets for powerpc64le-linux.•••* gnu/packages/gcc.scm (%gcc-10-ppc64le-micro-architectures): New variable. (gcc-10, gcc-11, gcc-12, gcc-13)[properties]: Add entry in compiler-cpu-architectures for powerpc64le. Change-Id: I3f5d0f5949eea7ac1b1914ac1db2867f5d14aee6 Efraim Flashner2024-06-111-0/+7
* gnu: gcc-13: Remove unneeded patch for i586-gnu.•••* gnu/packages/gcc.scm (gcc-13)[arguments]: When building for i586-gnu delete the inherited phase 'patch-hurd-libpthread as it exists upstream. Change-Id: I0837dcff325b15b6975b34dbd7268faaa223ecdd Efraim Flashner2024-05-301-0/+7
* gnu: gccgo-12: Fix building on riscv64-linux.•••* gnu/packages/gcc.scm (make-gccgo)[arguments]: When building gccgo-12 for riscv64-linux don't add a phase to adjust the order of libgo dependencies. Change-Id: I600c744ce33ad802a5c466c19df41dcbb29a2be0 Efraim Flashner2024-05-301-1/+6
* gnu: gcc-13: Update to 13.3.0.•••* gnu/packages/gcc.scm (gcc-13): Update to 13.3.0. Signed-off-by: Zheng Junjie <zhengjunjie@iscas.ac.cn> Change-Id: Ia2dc3185acbb6671b2719e2d88d55b7d2b8fb92e Michael Ford2024-05-221-2/+2
* gnu: libstdc++: Support cross-compilation to powerpc64le-linux-gnu.•••Previously the phase would fail when cross-compiling because the patch could not be found in ‘inputs’. * gnu/packages/gcc.scm (make-libstdc++): Add alternative ‘patch-powerpc’ phase for when (%current-target-system) is true. Change-Id: Ia503d761d34596d95cc9d33edd911cebcc2e0d9e Ludovic Courtès2024-04-041-5/+13
* cpu: Enable tuning for i686-linux.•••* gnu/packages/gcc.scm (gcc-7, gcc-10, gcc-11, gcc-12, gcc-13) [properties]: In compiler-cpu-architectures use the x86_64-micro-architectures list for i686. * guix/cpu.scm (cpu->gcc-architecture): Expand the x86_64 case to also support i686. Change-Id: I0b820ceb715960db5e702814fa278dc8c619a836 Efraim Flashner2024-03-071-0/+5
* cpu: Rename x86-64-v1 to x86-64.•••This is the actual micro-architecture designation used by compilers. * gnu/packages/gcc.scm (%gcc-11-x86_64-micro-architectures): Rename x86-64-v1 to x86-64. * gnu/packages/golang.scm (%go-1.18-x86_64-micro-architectures): Same. * guix/cpu.scm (cpu->micro-architecture-level): Same. (gcc-architecture->micro-architecture-level): Same. Change-Id: I19ed556a7e8deb4a77f4c63fca3b794f25092788 Efraim Flashner2024-03-071-1/+1
* gnu: gcc@11: fix 'compiler-cpu-architectures' property.•••* gnu/packages/gcc.scm (%gcc-11-x86_64-micro-architectures): fix typo `alterlake' to `alderlake'. Change-Id: Ia1a7af3f25040101f6995b6a4df5f298bfbbeb44 Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Zheng Junjie2024-03-051-1/+2
* gnu: gcc-4.8: Fix building.•••* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Adjust configure-flags to build gcc-4.8 using the C++03 standard. (gcc-4.8)[arguments]: Add a phase to remove the current gcc's C++ headers from the CPLUS_INCLUDE_PATH. (gcc-4.9)[arguments]: Inherit from gcc-4.8. (gcc-6)[arguments]: Inherit from gcc-4.7. Change-Id: Ibec0683e8385ae011e6a809c664cb679f1a35b80 Efraim Flashner2024-02-131-40/+43
* gnu: Add gdc alias.•••* gnu/packages/gcc.scm (gdc): New variable. Change-Id: I38447e46ffba44d3a9d3757d34fe9ff081803457 Reviewed-by: Ludovic Courtès <ludo@gnu.org> Maxim Cournoyer2024-01-261-0/+6
* gnu: Add gfortran-9.•••* gnu/packages/gcc.scm (gfortran-9): New variable. Change-Id: Icac0eeef445dcac72b8709ed81367a718116fd87 Ricardo Wurmus2024-01-181-0/+6
* gnu: Add support for x86_64-linux-gnux32.•••* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add entry for x86_64-linux-gnux32. * gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): Add configure-flag for x86_64-linux-gnux32. * guix/platforms/x86.scm (x86_64-linux-gnux32): New variable. * guix/utils.scm (gnu-triplet->nix-system): Force x86_64-linux-gnux32 to output a different nix-system than x86_64-linux-gnu. Change-Id: I519fea2f8357e4b9895ede05fe8a5e373e9b034a Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Efraim Flashner2024-01-041-1/+4
* gnu: gccgo-12: Fix building with 1 core.•••* gnu/packages/gcc.scm (make-gccgo)[arguments]: When building gccgo-12 or higher add a phase to build libbacktrace before libgo. Change-Id: I9bb225b58ffa439f9461e4126f51ab453683efbe Efraim Flashner2024-01-011-0/+15
* gnu: custom-gcc: Set upstream name.•••* gnu/packages/gcc.scm (custom-gcc)[properties]: Add upstream name. Change-Id: I30326dc7952b11451a86f7f026aa1a97364a89e4 Efraim Flashner2023-10-281-2/+3
* gnu: Add gccgo-13.•••* gnu/packages/crates-io.scm (gccgo-13): New variable. Change-Id: I4b1ed0657518b9113a5ce89221189b9dd60f4347 Efraim Flashner2023-10-281-0/+4
* gnu: gccgo: Add note about provided go version.•••* gnu/packages/gcc.scm (gccgo-10, gccgo-11, gccgo-12): Add notes about what version of is provided by these packages. Change-Id: Id483319e606fdebe1820abeb7e129c580bf2c165 Efraim Flashner2023-10-281-0/+3
* gnu: gcc@10: Update to 10.5.0.•••* gnu/packages/gcc.scm (gcc-10): Update to 10.5.0. Remove ‘gcc-10-tree-sra-union-handling.patch’. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Change-Id: Id1121cde63c8f5572fbe6a2b0d18b2df5a1eaa68 fanquake2023-10-241-4/+3