3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00
Commit graph

131 commits

Author SHA1 Message Date
672036c6df
gnu: 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.
2023-02-16 22:41:03 +02:00
Maxim Cournoyer
2707b6ccd7
gnu: 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.
2023-01-03 16:12:06 -05:00
Maxim Cournoyer
d4c2ea9226
gnu: 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.
2022-12-07 09:41:05 -05:00
5a9e3b7c39
gnu: 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.
2022-09-20 11:26:12 +03:00
Morgan Smith
3f31525546
gnu: 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>
2022-05-30 16:34:39 +02:00
Josselin Poiret
dab819d5c4
Move (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>
2022-05-25 09:27:25 +02:00
Mathieu Othacehe
b55310603f
linux: 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.
2022-05-22 15:15:33 +02:00
Carl Dong
34e9eae68c
gnu: 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.
2022-03-16 22:13:48 -04:00
Carl Dong
2d78b27711
gnu: 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.
2022-02-07 16:37:43 -05:00
637a1e7dcc
utils: 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>
2021-07-14 15:38:03 +02: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
Marius Bakke
4796b5d6d1
gnu: 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.
2021-06-13 01:00:46 +02:00
Marius Bakke
3cf1afb7e7
gnu: cross-kernel-headers: Fix build.
This fixes a regression introduced in
0e2251fcf8, 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.
2021-05-09 20:03:04 +02:00
fcc39864db
Merge 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
2021-04-16 14:39:48 +03:00
Carl Dong
58452d08ff
gnu: 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>
2021-03-28 10:55:49 -07:00
Ludovic Courtès
52beec2d71
gnu: 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
6690b6d1e7.
2020-12-17 21:32:51 +01:00
Ludovic Courtès
4c6824a818
gnu: cross-base: Remove unused Hurd patches from 'inputs'.
* gnu/packages/cross-base.scm (cross-libc)[inputs]: Remove.  They have
been unused since 6690b6d1e7.
2020-12-17 21:32:50 +01:00
Christopher Baines
ff01206345
Merge remote-tracking branch 'origin/master' into core-updates 2020-11-29 17:34:18 +00:00
dftxbs3e
4a914de930
gnu: 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>
2020-11-26 23:39:16 +01:00
Ludovic Courtès
bc47583412
gnu: 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'.
2020-11-08 16:58:30 +01:00
Jan (janneke) Nieuwenhuizen
6690b6d1e7
gnu: 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.
2020-10-26 13:41:25 +01:00
Jan (janneke) Nieuwenhuizen
00410bbeaf
gnu: 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.
2020-06-26 23:29:19 +02:00
Jan (janneke) Nieuwenhuizen
1c4268e414
gnu: cross-libc: Add patch to allow 'gettyent' reading store file names.
* gnu/packages/patches/glibc-hurd-gettyent.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/cross-base.scm (cross-libc): Add it in 'patch-libc/hurd' phase
when 'hurd-target?' is true.
2020-04-11 19:22:27 +02:00
Ludovic Courtès
7aad4609ae
gnu: cross-libc: Add patch to add 'mach_print' symbol on GNU/Hurd.
* gnu/packages/patches/glibc-hurd-mach-print.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/cross-base.scm (cross-libc): Add 'patch-libc/hurd' phase
when 'hurd-target?' is true.
2020-04-11 19:22:25 +02:00
Marius Bakke
bdb90df764
Merge branch 'master' into core-updates 2020-04-11 00:10:23 +02:00
Ludovic Courtès
523280e099
gnu: binutils: Shorten file names of MinGW patches.
This ensures we stay below the POSIX tar file name length limit.

* gnu/packages/patches/binutils-mingw-w64-reproducible-import-libraries.patch:
Rename to...
* gnu/packages/patches/binutils-mingw-w64-deterministic.patch: ... this.
* gnu/packages/patches/binutils-mingw-w64-specify-timestamp.patch:
Rename to...
* gnu/packages/patches/binutils-mingw-w64-timestamp.patch: ... this.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/cross-base.scm (cross-binutils): Likewise.
2020-04-10 16:02:51 +02:00
Marius Bakke
2778302399
Merge branch 'master' into core-updates
Conflicts:
	etc/news.scm
	gnu/local.mk
	gnu/packages/check.scm
	gnu/packages/cross-base.scm
	gnu/packages/gimp.scm
	gnu/packages/java.scm
	gnu/packages/mail.scm
	gnu/packages/sdl.scm
	gnu/packages/texinfo.scm
	gnu/packages/tls.scm
	gnu/packages/version-control.scm
2020-04-08 13:00:50 +02:00
Ludovic Courtès
be1e842ad7
gnu: cross-base: Remove unneeded 'let'.
This is a followup to 102d307520.

* gnu/packages/cross-base.scm (cross-libc): Remove (let ((libc libc)) …).

(cherry picked from commit 524a4e357c)
2020-04-08 12:22:06 +02:00
Carl Dong
b066c25026
gnu: Move PACKAGES-WITH-*PATCHES to (guix packages)
* gnu/packages/cross-base.scm (package-with-extra-patches,
package-with-patches): Move procedures from here...
* guix/packages.scm (package-with-extra-patches, package-with-patches):
...to here, and export.
2020-04-06 14:02:42 -04:00
Ludovic Courtès
524a4e357c
gnu: cross-base: Remove unneeded 'let'.
This is a followup to 102d307520.

* gnu/packages/cross-base.scm (cross-libc): Remove (let ((libc libc)) …).
2020-04-05 00:36:43 +02:00
Ludovic Courtès
b256d13619
gnu: cross-base: Add 'package-with-patches'.
This is a followup to c1c50cb5b0.

* gnu/packages/cross-base.scm (package-with-patch): Rename to...
(package-with-patches): ... this, and take a list of patches.
(package-with-extra-patches): Use it.
(cross-binutils): Use 'search-patches' instead of 'search-patch'.
2020-04-03 23:09:59 +02:00
Carl Dong
c1c50cb5b0
gnu: cross-base: Fix PACKAGE-WITH-EXTRA-PATCHES
This also removes the execute bit from the patches added. Not sure how
or why those were set in the first place.

* gnu/packages/cross-base.scm (package-with-extra-patches): Imitate
PACKAGE-WITH-PATCH instead of using it.
* gnu/packages/patches/binutils-mingw-w64-reproducible-import-libraries.patch:
Remove execute bit.
* gnu/packages/patches/binutils-mingw-w64-specify-timestamp.patch:
Remove execute bit.
2020-04-03 14:13:36 -04:00
Carl Dong
401d28e433
gnu: cross-base: Hotfix for paren
* gnu/packages/cross-base.scm (package-with-extra-patches): Add trailing
paren.
2020-04-02 18:08:33 -04:00
Carl Dong
79825bee07
gnu: cross-base: Add mingw-w64 specific binutils patches.
These patches were originally found at the debian mingw-w64 team's
binutils repo, and should improve the reproducibility of our mingw-w64
toolchain.

* gnu/packages/patches/binutils-mingw-w64-reproducible-import-libraries.patch:
New file.
* gnu/packages/patches/binutils-mingw-w64-specify-timestamp.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
* gnu/packages/cross-base.scm (cross-binutils): Apply relevant patches
if target is mingw-w64.
(package-with-extra-patches): New procedure.
2020-04-02 17:59:53 -04:00
Jan Nieuwenhuizen
b3bd475696
gnu: cross-libc: Build fix for the Hurd.
This fixes cross building of coreutils, e.g.

    ./pre-inst-env guix build --target=i586-pc-gnu coreutils

* gnu/packages/cross-base.scm (cross-libc): Add -lhurduser, -lmachuser for the
Hurd.
2020-04-01 00:12:31 +02:00
Jan Nieuwenhuizen
ee1cf1dd80
gnu: cross-libc: Build fix for the Hurd.
This fixes cross building of coreutils, e.g.

    ./pre-inst-env guix build --target=i586-pc-gnu coreutils

* gnu/packages/cross-base.scm (cross-libc): Add -lhurduser, -lmachuser for the
Hurd.
2020-03-24 23:31:34 +01:00
Mathieu Othacehe
53de3e74fa
gnu: cross-gcc: Add a "lib" output.
Add a "lib" output to cross-gcc. This requires an upstream GCC patch adding
support for --with-toolexeclibdir configure option. This option allows to
install cross-built GCC libraries in a specific location.

This also fixes the computation of TOOLDIR_BASE_PREFIX, that fails when
/gnu/store/... directories are involved.

* gnu/packages/patches/gcc-7-cross-toolexeclibdir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/cross-base.scm (cross-gcc)[source]: Apply it,
[outputs]: add a "lib" output,
(cross-gcc-snippet): fix TOOLDIR_BASE_PREFIX.
2020-03-24 13:55:10 +01:00
Marius Bakke
a493a52646
gnu: ath9k-htc-firmware: Build with binutils@2.33.1.
* gnu/packages/base.scm (binutils-2.33): New public variable.
* gnu/packages/cross-base.scm (cross-binutils): Add optional BINUTILS argument.
* gnu/packages/firmware.scm (ath9k-htc-firmware)[native-inputs]: Build the
xtensa-elf toolchain with BINUTILS-2.33.
2020-02-15 22:02:55 +01:00
Ludovic Courtès
89da127035
gnu: cross-base: Switch back to 'CROSS_C_INCLUDE_PATH' & co.
This is a followup to 2073b55e6b.

* gnu/build/cross-toolchain.scm (%gcc-include-paths): Switch back to
'C_INCLUDE_PATH' & co.
* gnu/packages/cross-base.scm (%gcc-include-paths): Likewise.
(cross-gcc-arguments): Remove 'treat-glibc-as-system-header' phase.
(cross-gcc)[native-inputs]: Reorder so that libc comes last.
[search-paths]: Add "include/c++" for 'CROSS_CPLUS_INCLUDE_PATH'.
* guix/build-system/gnu.scm (standard-cross-packages): Have "cross-gcc"
appear both for 'host and 'target.
2020-02-12 20:35:43 +01:00
Carl Dong
f5d6c88d0f
gnu: mingw-w64: Add -winpthreads variants.
This recursive package definition really demonstrates how magical Guix
can be :-)

Try invoking:
    ./pre-inst-env guix build mingw-w64-{x86_64,i686}{,-winpthreads}

* gnu/packages/mingw.scm (make-mingw-w64): Add XGCC, XBINUTILS optional
arguments to specify using a non-default cross-compiler/binutils.  Add
WITH-WINPTHREADS? optional argument to allow building with winpthreads
support.  Adjust accordingly for the new arguments.
(mingw-w64-i686-winpthreads, mingw-w64-x86_64-winpthreads): Add
variables.
* gnu/packages/cross-base.scm (native-libc): Add XGCC, XBINUTILS
key arugments and pass to MAKE-MINGW-W64.
(cross-libc): Pass XGCC and XBINUTILS to NATIVE-LIBC.
2019-10-21 17:39:08 -04:00
Jan Nieuwenhuizen
43124a5474
gnu: gcc: Fix i686-linux cross compiler.
This resurrects

    ./pre-inst-env guix build --target=i686-unknown-linux-gnu hello

* gnu/packages/cross-base.scm (cross-gcc-arguments): Do not build libmpx;
does not cross-configure.
2019-09-29 16:18:44 +02:00
Jan Nieuwenhuizen
308eb5c11a
gnu: gcc: Fix mingw cross compiler.
* gnu/packages/patches/gcc-7-cross-mingw.patch: New file.
* gnu/packages/cross-base.scm (cross-gcc-patches): Add XGCC parameter; update
caller.  Use it for target mingw and gcc >= 7.
* gnu/local.mk (dist_patch_DATA): Add it.
2019-09-27 06:42:47 +02:00
Mark H Weaver
893c2df00d
Merge branch 'master' into core-updates 2019-08-22 15:53:27 -04:00
Carl Dong
67dac6b892
gnu: mingw: Add x86_64 support.
This patch parameterizes previously hard-coded instances of
i686-w64-mingw32, adding support for x86_64-w64-mingw32.

* gnu/packages/mingw.scm (make-mingw-w64): New procedure.
(mingw-w64-i686, mingw-w64-x86_64): New variables.
(%mingw-triplet): Remove.
(mingw-w64): Update to point to 'mingw-w64-i686'.
* gnu/packages/cross-base.scm (cross-gcc): Use 'libc' keyword argument
if specified, instead of treating it as a boolean.
(native-libc): Return the correct mingw-w64 depending on machine
specified in target.
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add "x86_64-mingw".
* gnu/build/cross-toolchain.scm (set-cross-path/mingw): Replace
hardcoded 'i686-w64-mingw32' instances with 'target' keyword argument.
(cross-gcc-build-phases): Update accordingly; use 'target-mingw?'
implementation of target checking and add commentary.
* gnu/ci.scm (%cross-targets): Add "x86_64-w64-mingw32".
2019-08-14 21:29:53 +02:00
Marius Bakke
871dbd6c6e
gnu: cross-base: Fix C++ cross-compilation problems with GCC 7.
* gnu/packages/cross-base.scm (cross-gcc-arguments)[#:configure-flags]: Add
"--with-sysroot=/".
2019-06-16 09:34:39 +02:00
Ludovic Courtès
d9bbfe042e
Merge branch 'master' into core-updates 2019-06-13 13:24:35 +02:00
Carl Dong
2ea77d48a7
gnu: cross-base: Allow non-default linux-headers.
* gnu/packages/cross-base.scm (cross-kernel-headers): Add
LINUX-HEADERS optional argument.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-05-29 15:44:54 +02:00
Marius Bakke
57df83e07d
Merge branch 'staging' into core-updates 2019-05-25 00:25:15 +02:00
Carl Dong
102d307520
gnu: cross-base: Allow using non-default glibc.
* gnu/packages/cross-base.scm (cross-libc, native-libc, cross-newlib?):
  Add 'libc' optional argument to specify using a non-default glibc
  package.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-13 09:46:58 +02:00
Carl Dong
83b0a7f41b
gnu: cross-base: Apply gcc 8 patch to gcc >= 8.
* gnu/packages/cross-base.scm (cross-gcc): Apply gcc 8 patch to gcc >= 8.
* gnu/packages/patches/gcc-8-cross-environment-variables.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add the patch.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-06 10:21:38 +02:00