aboutsummaryrefslogtreecommitdiff

82e86babf5e26b867233b07c11d11'>packages/cross-base.scm
AgeCommit message (Expand)Author
2024-01-22gnu: cross-gcc-toolchain: Use fixed name....* gnu/packages/cross-base.scm (cross-gcc-toolchain) <name>: Always use gcc-cross- prefix regardless of TARGET having a C standard library or not. Change-Id: I5cbe89c61e5bd324a385db17c27131ea5ef75669 Jean-Pierre De Jesus DIAZ
2023-12-11gnu: Add cross-gcc-toolchain procedure....* gnu/packages/cross-base.scm (cross-gcc-toolchain/implementation, cross-gcc-toolchain): New procedures. Change-Id: I994067eac094d0a50a7399e61bda944eded9187f Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-gcc: Only C and C++ for AVR....* gnu/packages/cross-base.scm (cross-gcc-arguments) <configure-flags> [target-avr?]: Add --enable-languages=c,c++. Change-Id: I1d63bb1b0a3074b9ff8650c5afb93777183c0ea4 Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-gcc: Find AVR Libc files....* gnu/packages/cross-base.scm (cross-gcc-arguments) <configure-flags>: Add --with-native-system-header-dir for AVR. <make-flags>: Add target prefix to /lib to find AVR library. Change-Id: Ie9cae338da241fe987f53463aa3774a890e2af9a Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-gcc: Handle AVR inputs....* gnu/packages/cross-base.scm (cross-gcc)[native-inputs]: Add case to handle AVR. Change-Id: I1ac38b721ed807302747cecb5fb1f6075694a01a Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-libc: Add AVR Libc support....* gnu/packages/avr.scm (make-avr-libc/implementation)[arguments]: Add avr target parameter and disable implicit cross inputs. [native-inputs]: Rename avr-gcc and avr-binutils to cross-gcc and cross-binutils to keep consistency with gnu-build-system. * gnu/packages/cross-base.scm (cross-libc): Add case for avr. Change-Id: I6b087946d1287a82fac61c48c513e7f2d2184794 Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-gcc: Handle target include paths....* gnu/packages/cross-base.scm (cross-gcc-search-paths): New procedure. (cross-gcc)[search-paths]: Convert to and use cross-gcc-search-paths procedure. Change-Id: Id306782eaf928d05cd005b9539087ed631506b5b Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-gcc: Enable multilib for AVR....* gnu/build/cross-toolchain.scm (patch-multilib-shebang): New procedure. * gnu/packages/avr.scm (make-avr-gcc): Remove uneeded phases and flags for multilib. * gnu/packages/cross-base (cross-gcc-arguments) <#:configure-flags> [target-avr?]: Remove --disable-multilib and add --enable-multilib. Change-Id: Id68d803057ac898f0a670f10487b08bf0891ab0b Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-12-11gnu: cross-libc: Return #f if no libc available....* gnu/packages/cross-base.scm (cross-libc): Return #f if no libc is available for the given TARGET. Change-Id: I17d19716373dd5704bb70d805437738fd29bd96b Signed-off-by: Efraim Flashner <efraim@flashner.co.il> Jean-Pierre De Jesus DIAZ
2023-07-13gnu: hurd-minimal: Include libshouldbeinlibc and libstore....* gnu/packages/hurd.scm (hurd-minimal)[inputs]: Add gnumach-headers. [arguments]: Rewrite to include libshouldbeinlibc and libstore. * gnu/packages/cross-base.scm (cross-kernel-headers*): Update xhurd-minimal accordingly: Add xgnumach-headers, add them to cpath, use gexps for modify-phases, add delete-shared-target phase. Signed-off-by: Josselin Poiret <dev@jpoiret.xyz> Janneke Nieuwenhuizen
2023-07-13gnu: Add libc-for-target and glibc/hurd....* gnu/packages/patches/glibc-2.37-hurd-clock_t_centiseconds.patch * gnu/packages/patches/glibc-2.37-hurd-local-clock_gettime_MONOTONIC.patch * gnu/packages/patches/glibc-2.37-versioned-locpath.patch: New patches. * gnu/local.mk (dist_patch_DATA): Register them. * gnu/packages/base.scm (glibc/hurd, libc-for-target): New variables. (glibc/hurd-headers): Use glibc/hurd. * gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[outputs, source, arguments] (glibc-final)[source]: Use libc-for-target instead of glibc. * gnu/packages/cross-base.scm (cross-libc/deprecated, cross-libc*): Use libc-for-target. This part fixes https://issues.guix.gnu.org/63641#25 * gnu/packages/commencement.scm (%final-inputs): Change to memoized lambda taking "system". * gnu/packages/commencement.scm (canonical-package): Likewise, and update user, passing (%current-system). (make-gcc-toolchain): Update user, passing (%current-system). * gnu/packages/base.scm (%final-inputs): Likewise. * guix/scripts/refresh.scm (options->update-specs): Likewise. * guix/build-system/gnu.scm (standard-packages): Add optional "system" parameter. (lower): Update caller. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Co-authored-by: Janneke Nieuwenhuizen <janneke@gnu.org> Josselin Poiret
2023-07-13gnu: gnumach-headers: Cross-build without relying on x86....* gnu/packages/hurd.scm (gnumach-headers): Remove configure flags where we say the builder is running x86. * gnu/packages/cross-base.scm (cross-gnumach-headers): Work around limitation of build system, by manually changing the target host_cpu without relying on --host, because we don't have a working cross-compiler yet. Josselin Poiret
2023-07-13gnu: glibc/hurd-headers: Properly cross-build....* gnu/packages/base.scm (glibc/hurd-headers): Rely on cross-mig, and remove hardcoded configure flag `--host=i586-pc-gnu`. * gnu/packages/cross-base.scm (cross-kernel-headers*): Add `--host` and `--build` configure flags. Josselin Poiret
2023-03-30gnu: cross-base: Removed useless inputs to xhurd-core-headers....* gnu/packages/cross-base.scm (cross-kernel-headers*): Remove them. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2023-03-30gnu: cross-base: Add cross arguments to hurd derivatives....* gnu/packages/cross-base.scm (cross-kernel-headers*): Add --build and --host to xhurd-headers and xhurd-minimal. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2023-03-30gnu: cross-base: Factor out cross-mig....* gnu/packages/cross-base.scm (cross-mig): New exported procedure. (cross-gnumach-headers): New procedure. (cross-kernel-headers*): Factor them out. (cross-libc*): Use them there. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Josselin Poiret
2023-03-30gnu: cross-base: Use gexps for 'cross-gcc-arguments'....* gnu/packages/cross-base.scm (cross-gcc-arguments): Switch to gexps. Ludovic Courtès
2023-03-30gnu: glibc: Work around broken GNU Mach header detection....* gnu/packages/base.scm (%glibc/hurd-configure-flags): New variable. (glibc)[arguments]: Use it. (glibc/hurd-headers)[arguments]: likewise. * gnu/packages/cross-base.scm (cross-libc*): Likewise. Co-authored-by: Josselin Poiret <dev@jpoiret.xyz> Ludovic Courtès
2023-03-04gnu: cross-base: Inherit arguments from 'mig'....That way, 'xmig' inherits the 'avoid-perl-dependency' build phase. * gnu/packages/hurd.scm (mig)[arguments]: In 'avoid-perl-dependency', use 'find-files' to locate the "mig" executable(s). * gnu/packages/cross-base.scm (cross-kernel-headers*)[xmig]: Use 'substitute-keyword-arguments'. Ludovic Courtès
2023-03-04gnu: cross-base: Remove input labels for GNU Mach and MiG....* gnu/packages/cross-base.scm (cross-kernel-headers*)[xgnumach-headers] [xmig]: Remove input labels; use gexps and 'modify-inputs'. [xgnumach-headers-name]: New variable. Ludovic Courtès
2023-02-16gnu: Remove unneeded module imports....* gnu/packages/abiword.scm, * gnu/packages/ada.scm, * gnu/packages/agda.scm, * gnu/packages/backup.scm, * gnu/packages/barrier.scm, * gnu/packages/bioinformatics.scm, * gnu/packages/bootstrap.scm, * gnu/packages/bqn.scm, * gnu/packages/c.scm, * gnu/packages/chemistry.scm, * gnu/packages/coq.scm, * gnu/packages/cross-base.scm, * gnu/packages/databases.scm, * gnu/packages/emacs-xyz.scm, * gnu/packages/enlightenment.scm, * gnu/packages/games.scm, * gnu/packages/geo.scm, * gnu/packages/ghostscript.scm, * gnu/packages/gl.scm, * gnu/packages/golang.scm, * gnu/packages/jami.scm, * gnu/packages/java-maths.scm, * gnu/packages/kde-frameworks.scm, * gnu/packages/kde-plasma.scm, * gnu/packages/language.scm, * gnu/packages/libreoffice.scm, * gnu/packages/linphone.scm, * gnu/packages/lisp.scm, * gnu/packages/llvm.scm, * gnu/packages/machine-learning.scm, * gnu/packages/minetest.scm, * gnu/packages/monitoring.scm, * gnu/packages/nfs.scm, * gnu/packages/ocr.scm, * gnu/packages/opencl.scm, * gnu/packages/pdf.scm, * gnu/packages/python-xyz.scm, * gnu/packages/racket.scm, * gnu/packages/rust.scm, * gnu/packages/syncthing.scm, * gnu/packages/syndication.scm, * gnu/packages/telegram.scm, * gnu/packages/vulkan.scm, * gnu/packages/web-browsers.scm, * gnu/packages/web.scm, * gnu/packages/webkit.scm: Remove some unecessary module imports. Efraim Flashner
2023-01-03gnu: cross-base: Standardize API to use keyword arguments....This makes it possible to invoke the procedures with a single or fewer optional arguments. * gnu/packages/cross-base.scm (contains-keyword?): New procedure. (cross-binutils): Dispatch to either... (cross-binutils/deprecated): ... this renamed procedure or ... (cross-binutils*): ... this new procedure. (cross-kernel-headers, cross-libc/deprecated): Likewise. Maxim Cournoyer
2022-12-07gnu: cross-base: Fix some indentation problems....* gnu/packages/cross-base.scm (cross-binutils): Fix indentation. (cross-kernel-headers): Align 'inherit' fields of nested package variables. (cross-gcc): Fix indentation. Maxim Cournoyer
2022-09-20gnu: cross: Add default configure-flags....Reported by Arun Isaac <arunisaac@systemreboot.net>. * gnu/packages/cross-base.scm (cross)[arguments]: Add a default for configure-flags so '--target=' is always added. Efraim Flashner
2022-05-30gnu: GCC: Add cross environment variables patch to GCC 12....* gnu/packages/patches/gcc-12-cross-environment-variables.patch : New file. * gnu/local.mk (dist_patch_DATA): Add gcc-12-cross-environment-variables.patch. * gnu/packages/cross-base.scm (cross-gcc)[source](patches): Apply the patch. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Morgan Smith
2022-05-25Move (gnu platform) and (gnu platforms ...) to guix/....* gnu/platform.scm: * gnu/platforms/arm.scm: * gnu/platforms/hurd.scm: * gnu/platforms/mips.scm: * gnu/platforms/powerpc.scm: * gnu/platforms/riscv.scm: * gnu/platforms/s390.scm: * gnu/platforms/x86.scm: Move to guix/. * Makefile.am: * doc/guix.texi (Porting to a New Platform): * etc/release-manifest.scm: * gnu/ci.scm: * gnu/image.scm: * gnu/local.mk: * gnu/packages/bioinformatics.scm: * gnu/packages/bootstrap.scm: * gnu/packages/cross-base.scm: * gnu/packages/instrumentation.scm: * gnu/packages/linux.scm: * gnu/system/image.scm: * gnu/system/images/hurd.scm: * gnu/system/images/novena.scm: * gnu/system/images/pine64.scm: * gnu/system/images/pinebook-pro.scm: * gnu/system/images/rock64.scm: * guix/scripts/build.scm: * guix/scripts/system.scm: * guix/self.scm: Update (gnu platform...) to (guix platform...). Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Josselin Poiret
2022-05-22linux: Remove system->linux-architecture procedure....* gnu/packages/linux.scm (system->linux-architecture): Remove it. (make-linux-libre-headers*, make-linux-libre*): Adapt them. * guix/build-system/linux-module.scm (system->arch): Adapt it. * gnu/packages/instrumentation.scm (uftrace): Ditto. * gnu/packages/cross-base.scm (cross-kernel-headers): Ditto. * gnu/packages/bioinformatics.scm (ncbi-vdb): Ditto. * doc/guix.texi (Porting to a new platform): Update it. Mathieu Othacehe
2022-03-16gnu: cross-base: Don't specify mingw --with-newlib...Previous to this commit, we added a --with-newlib configure flag to cross-gcc when cross-newlib?, but cross-newlib? is true only when target-mingw?. It turns out that specifying --with-newlib disables the GLIBCXX_CROSSCONFIG check, which is used to detect _GLIBCXX_HAVE__WFOPEN, which is required in C++17 std::filesystem for mingw-w64 systems. Additional context: In gnu/packages/embedded.scm, --with-newlib is specified explicitly when we're actually using newlib, which seems like the correct way of handling it. Situation in other distros: - Debian's gcc-mingw-w64 doesn't specify --with-newlib - Fedora's mingw64-gcc-c++ explicitly specifies --without-newlib Chesterton's fence: Chatting with janneke, who originally added this mechanism, reveals that this flag is not only no longer required, but also that removing it doesn't break his guile-mingw builds. See IRC logs of #guix for 2022-02-15. * gnu/packages/cross-base.scm (cross-gcc-arguments): Don't check for and specify --with-newlib. (cross-libc): Check for mingw and use mingw-w64 directly. (cross-newlib?): Remove, unexport. (native-libc): Remove. Carl Dong
2022-02-07gnu: Disable compressed debug sections for mingw-w64...The newly introduced --enable-compressed-debug-section=all configure flag in the base binutils package makes the mingw-w64 build system unusable. For example: $ guix build --target=x86_64-w64-mingw32 hello and $ guix build mingw-w64-x86_64-winpthreads Will fail to build with an error: "x86_64-w64-mingw32-ld: final link failed: bad value" Turning off this flag seems to fix the problem, but perhaps it'd also be worthwhile to investigate the root cause. * gnu/packages/cross-base.scm (cross-binutils): When building for mingw targets, append "--enable-compressed-debug-section=no" to configure flags. Carl Dong
2021-07-14utils: Define 'target-hurd?' predicate....It behaves similarily to the other target-...? procedures. The usage of hurd-triplet? / target-hurd? in libgc appears incorrect to me, as (%current-system) is normally never false. * gnu/packages/hurd.scm (hurd-triplet?): Move to ... * guix/util.scm (target-hurd?): ... here, let its argument default to (%current-target-system) or (%current-system), and write a docstring. * gnu/packages/hurd.scm (hurd-target?, hurd-system?): Use target-hurd? instead of hurd-triplet?. * gnu/packages/bdw-gc.scm (libgc): Likewise. * gnu/packages/cross-base.scm (cross-libc)[arguments]<#:configure-flags>: Likewise. (cross-libc)[arguments]<#:phases>: Likewise. (cross-libc)[arguments]<#:native-inputs>: Likewise. * gnu/packages/make-boostrap.scm (%glibc-stripped)[inputs]: Likewise. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Maxime Devos
2021-06-24gnu: 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. Chris Marusich
2021-06-13gnu: GCC: Switch to GCC 10....* 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. Marius Bakke
2021-05-09gnu: cross-kernel-headers: Fix build....This fixes a regression introduced in 0e2251fcf8189a4f642074d3aa898221b29c3a55, as "make headers_check" does not actually build the headers in newer versions, instead "make headers_install" built them as a side effect. * gnu/packages/cross-base.scm (cross-kernel-headers)[arguments]: Adjust build phase to call the correct Make target. While at it, migrate to MODIFY-PHASES. Marius Bakke
2021-04-16Merge remote-tracking branch 'origin/master' into core-updates... 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 Efraim Flashner
2021-03-28gnu: cross-base: Relax check for powerpc64le....* gnu/packages/cross-base.scm (cross-gcc-arguments): When conditionally adding "--with-long-double-128", check for "powerpc64le-" prefix instead of matching full target. Signed-off-by: Chris Marusich <cmmarusich@gmail.com> Carl Dong
2020-12-17gnu: cross-base: Re-add cross-MIG as an input for GNU/Hurd....* gnu/packages/cross-base.scm (cross-libc)[native-inputs]: Re-add "cross-mig", erroneously removed in 6690b6d1e7333137e4731ec5e4bb30d6637c3237. Ludovic Courtès
2020-12-17gnu: cross-base: Remove unused Hurd patches from 'inputs'....* gnu/packages/cross-base.scm (cross-libc)[inputs]: Remove. They have been unused since 6690b6d1e7333137e4731ec5e4bb30d6637c3237. Ludovic Courtès
2020-11-29Merge remote-tracking branch 'origin/master' into core-updatesChristopher Baines
2020-11-26gnu: gcc-boot0, cross-base: Enable 128-bit long double for POWER9....* gnu/packages/cross-base.scm (cross-gcc-arguments): Add "--with-long-double-128" when TARGET is "powerpc64le-linux-gnu". * gnu/packages/commencement.scm (gcc-boot0): Likewise for (boot-triplet). Signed-off-by: Ludovic Courtès <ludo@gnu.org> dftxbs3e
2020-11-08gnu: cross-base: Move glibc Hurd patches to 'inputs'....Fixes "guix build --target=i586-pc-gnu bootstrap-tarballs". * gnu/packages/cross-base.scm (cross-libc): Move Hurd patches from 'native-inputs' to 'inputs'. Ludovic Courtès
2020-10-26gnu: glibc: Move patches for the Hurd from cross-libc....* gnu/packages/cross-base.scm (cross-libc)[arguments]: Remove "patch-libc/hurd" stage. [native-inputs]: Move hurd patches to... * gnu/packages/base.scm (glibc)[source]: ...here. Jan (janneke) Nieuwenhuizen
2020-06-26gnu: mig: Do not assume "perl" to be available....* gnu/packages/hurd.scm (mig)[inputs]: Include perl. [arguments]: Substitute "perl" with full store file name in bin/mig. * gnu/packages/cross-base.scm (cross-kernel-headers): Adjust mig-cross accordingly. Jan (janneke) Nieuwenhuizen