Age | Commit message (Collapse) | Author |
|
gnu/packages/cross-base.scm (cross-kernel-headers/deprecated,
cross-kernel-headers*): When target loongarch64, use
linux-libre-headers-5.19.17.
Change-Id: Ib144ebf86428dddd92f5b899dc241a428f8dc374
|
|
Gcc-14 adds support for the 64bit Hurd.
* gnu/packages/cross-base.scm (%xgcc): Bump to gcc-14.
Change-Id: Idf7696c50532aa4def2b2d37cdb5c70715125123
|
|
* gnu/packages/base.scm (glibc)[arguments]: When building for the Hurd, in
phase "create-machine-symlink", do not assume CPU is i386, also cater for
x86_64.
* gnu/packages/cross-base.scm (cross-libc*)[arguments]: Likewise.
Change-Id: Ib009b7bd301b543b8629382330cca9d963b7a812
|
|
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Update comment on where
to find shared linker name.
(make-raw-bag): Also use raw-build-guile3 when building for the 64bit Hurd.
* gnu/packages/cross-base.scm (cross-kernel-headers*): Use target-hurd?
instead of custom "i586..." matching to also use xhurd-core-headers for
target-hurd64.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc)
[native-inputs]: Move final-inputs before cross-packages.
(%binutils-static)[arguments]: When building for the 64bit Hurd, add
"lt_cv_prog_compiler_static_works=yes", "lt_cv_prog_compiler_static_works_CXX=yes"
to #:make-flags to convince to actually link the binaries statically.
(make-guile-static)[arguments]: When building for the 64bit Hurd, add
"lt_cv_prog_compiler_static_works=yes" to #:configure-flags to convince
libtool to actually link guile statically.
* guix/platforms/x86.scm (x86_64-gnu): New exported variable.
* guix/utils.scm (target-hurd64? system-hurd64?): New procedures.
|
|
* gnu/packages/base.scm (glibc)[arguments]: When building for the Hurd, in
phase "create-machine-symlink", only create symlink if it is missing.
* gnu/packages/cross-base.scm (cross-libc*)[arguments]: Likewise.
Change-Id: Ib009b7bd301b543b8629382330cca9d963b7a812
|
|
When ‘cross-libc’ is used in a context where it’s not a native input, as
is the case with ‘package-with-relocatable-glibc’ when cross-compiling,
the target objdump is to be found in the native inputs.
* gnu/packages/cross-base.scm (cross-libc*): In
‘add-cross-binutils-to-PATH’ phase, look for TARGET’s objdump in
NATIVE-INPUTS in addition to INPUTS.
Change-Id: Ic0e9ee720cf4211edc95be59903b4bd1d94b1e3f
|
|
This is a followup to 901b3c2a9db1935149d6ee366bf6f2a325391740.
* gnu/packages/base.scm (glibc/hurd-headers): Remove reference to
‘%glibc/hurd-configure-flags’.
* gnu/packages/cross-base.scm (cross-libc*): Likewise.
Change-Id: Iac43d84e3407c16a0f3f926d795b55c7b7ac73fd
|
|
gnumach-headers[-cross] are contained in the toolchain; it was only the
`include/mach/machine' symlink that was missing.
This reverts commit 2dd16f46766997c0b3e4ee973ce6e792a4d84fcb.
|
|
* gnu/packages/base.scm (glibc): When building for the Hurd, add phase
`create-machine-symlink'.
* gnu/packages/cross-base.scm (cross-libc*): Likewise.
Change-Id: I61fa081ce081f05bed918a438fd9d4eec94ef4bf
|
|
This provides the include/mach/machine/mach_i386.h.
* gnu/packages/hurd.scm (hurd)[native-inputs]: Add gnumach-headers, or
gnumach-headers-cross when cross-building.
[arguments]: Remove #t from phases.
Change-Id: Id57e0cf184c7793be52192bdc5587c6e6ef2a312
|
|
This fixes a regression introduced in
d21d596f72ad491937123980e65d3efedc903bd6 where the cross-compiler would
fail to build with:
checking dynamic linker characteristics... configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES.
make[1]: *** [Makefile:13129: configure-target-libobjc] Error 1
* gnu/packages/cross-base.scm (cross-gcc-arguments): Clear
‘--enable-languages’ flag unconditionally.
Change-Id: I2bb38bac42e0791cad617893343c0d3dfc963450
|
|
This is the result of applying ‘guix style -S arguments’ and making
small adjustments.
* gnu/packages/base.scm (binutils)[arguments]: Use gexps.
(binutils-2.33, binutils-gold): Likewise.
* gnu/packages/commencement.scm (binutils-mesboot0, binutils-mesboot1)
(binutils-boot0, binutils-final): Likewise.
* gnu/packages/cross-base.scm (cross-binutils*): Adjust accordingly.
* gnu/packages/embedded.scm (make-propeller-binutils): Use gexps.
* gnu/packages/make-bootstrap.scm (%binutils-static): Use gexps.
Change-Id: I59cbe29760784b09e6d4e80beca9153cb9b495a7
|
|
This is required in cases where P uses gexps.
* gnu/packages/cross-base.scm (cross): Use gexps.
Change-Id: Ie038cbec67a53700f31791ee2d171918788111d2
|
|
* gnu/packages/cross-base.scm (cross-libc*): Remove
‘install-utf8-c-locale’ phase.
Change-Id: I47cf555548335491f06443dd921a457f458801f4
|
|
This replaces ‘glibc-cross-objdump.patch’ and
‘glibc-cross-objcopy.patch’ (not applied to glibc@2.38): these patches
were committed upstream and later reverted on the grounds that ‘gcc
-print-prog-name=objdump’ should find the cross ‘objdump’:
https://inbox.sourceware.org/libc-alpha/d72f5f6f-cc3a-bd89-0800-ffb068928e0f@linaro.org/t/
* gnu/packages/cross-base.scm (cross-libc*): Add
‘add-cross-binutils-to-PATH’ phase.
Change-Id: I38dc7a6134177ec73313c0a9c8b0a12c85c60e26
|
|
%default-gnu-modules.
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
|
|
* gnu/packages/cross-base.scm (cross-binutils-package): New procedure.
* gnu/packages/cross-base.scm (cross-binutils): Select binutils default
value with cross-binutils-package.
* gnu/packages/firmware.scm (ath9k-htc-firmware) <native-inputs>: Do not
explicitly set the #:xbinutils keyword argument.
Change-Id: I0eb25eb2b494241c205286837bfa79a61de8e0b7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/packages/firmware.scm (ath9k-htc-firmware): Use the
xtensa-ath9k-elf target for the cross toolchain.
Change-Id: Ic1a7c4088312290a86a508f371f4f0e784e301a5
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* gnu/local.mk (dist_patch_DATA): Add gcc-13-cross-system-header-dir.patch.
* gnu/packages/cross-base.scm (cross-gcc) <source>: Add patch for
GCC 13.
* gnu/packages/patches/gcc-13-cross-system-header-dir.patch: New patch.
Change-Id: Ib4771ff78222fb7b7df58891d25938d338bd5df8
Signed-off-by: Christopher Baines <mail@cbaines.net>
|
|
* gnu/packages/cross-base.scm (cross-gcc-patches): Avoid
gcc-4.9.3-mingw-gthr-default.patch patch for GCC 13+ versions since it
does not apply.
Change-Id: I4bb14d687c53733d77099a761844815900b1266a
Signed-off-by: Christopher Baines <mail@cbaines.net>
|
|
* 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
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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>
|
|
* 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.
|
|
* 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.
|
|
* gnu/packages/cross-base.scm (cross-kernel-headers*): Remove them.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
|
|
* 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>
|
|
* 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>
|
|
* gnu/packages/cross-base.scm (cross-gcc-arguments): Switch to gexps.
|
|
* 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>
|
|
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'.
|
|
* gnu/packages/cross-base.scm (cross-kernel-headers*)[xgnumach-headers]
[xmig]: Remove input labels; use gexps and 'modify-inputs'.
[xgnumach-headers-name]: New variable.
|
|
* 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.
|
|
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.
|
|
* gnu/packages/cross-base.scm (cross-binutils): Fix indentation.
(cross-kernel-headers): Align 'inherit' fields
of nested package variables.
(cross-gcc): Fix indentation.
|
|
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.
|
|
* 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>
|
|
* 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>
|
|
* 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.
|
|
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.
|
|
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.
|
|
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>
|