summaryrefslogtreecommitdiff
path: root/gnu/packages/cross-base.scm
AgeCommit message (Collapse)Author
2014-11-21gnu: Add AVR-Libc.Manolis Ragkousis
* gnu/packages/avr.scm: New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add avr.scm. * gnu/packages/cross-base.scm (xgcc-avr): New variable. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add case for "avr". Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2014-11-11gnu: cross-base: Apply Qualcomm's patches for Binutils and GCC.Ludovic Courtès
This fixes compilation of the ath9k-htc firmware. Before that, loading it would result in "Target is unresponsive". The patches come from the ath9k-htc firmware source. * gnu/packages/patches/ath9k-htc-firmware-binutils.patch, gnu/packages/patches/ath9k-htc-firmware-gcc.patch: New files. * gnu-system.am (dist_patch_DATA): Add them. * gnu/packages/cross-base.scm (package-with-patch): New procedure. (cross-binutils): Check whether TARGET starts with "xtensa-", and call 'package-with-patch' when it does. (cross-gcc-patches): New procedure. (cross-gcc): Use it to add patches.
2014-10-29gnu: Add Xtensa bare-bones cross-compiler.Ludovic Courtès
* gnu/packages/cross-base.scm (xgcc-xtensa): New variable. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add case for "xtensa-elf".
2014-10-05gnu: cross-base: Use the right dynamic linker name.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-gcc-arguments): Parametrize %CURRENT-TARGET-SYSTEM. * tests/monads.scm ("package-file + package->cross-derivation"): Replace "foo64-gnu" with "mips64el-linux-gnu".
2014-10-05gnu: cross-base: Externalize cross-gcc arguments.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-gcc-arguments): New procedure. (cross-gcc): Use it. [No functional change.]
2014-10-05build-system: Introduce "bags" as an intermediate representation.Ludovic Courtès
* guix/build-system.scm (<build-system>)[build, cross-build]: Remove. [lower]: New field. (<bag>): New record type. (make-bag): New procedure. * guix/packages.scm (bag-transitive-inputs, bag-transitive-build-inputs, bag-transitive-host-inputs, bag-transitive-target-inputs, package->bag): New procedures. (package-derivation): Use it; use the bag, apply its build procedure, etc. (package-cross-derivation): Likewise. * gnu/packages/bootstrap.scm (raw-build, make-raw-bag): New procedure. (%bootstrap-guile): Use them. * guix/build-system/trivial.scm (lower): New procedure. (trivial-build, trivial-cross-build): Remove 'source' parameter. Pass INPUTS as is. (trivial-build-system): Adjust accordingly. * guix/build-system/gnu.scm (%store, inputs-search-paths, standard-search-paths, expand-inputs, standard-inputs): Remove. (gnu-lower): New procedure. (gnu-build): Remove 'source' and #:implicit-inputs? parameters. Remove 'implicit-inputs' and 'implicit-search-paths' variables. Get the source from INPUT-DRVS. (gnu-cross-build): Likewise. (standard-cross-packages): Remove call to 'standard-packages'. (standard-cross-inputs, standard-cross-search-paths): Remove. (gnu-build-system): Remove 'build' and 'cross-build'; add 'lower'. * guix/build-system/cmake.scm (lower): New procedure. (cmake-build): Remove 'source' and #:cmake parameters. Use INPUTS and SEARCH-PATHS as is. Get the source from INPUTS. * guix/build-system/perl.scm: Likewise. * guix/build-system/python.scm: Likewise. * guix/build-system/ruby.scm: Likewise. * gnu/packages/cross-base.scm (cross-gcc): Change "cross-linux-headers" to "linux-headers". (cross-libc)[xlinux-headers]: Pass #:implicit-cross-inputs? #f. Likewise. In 'propagated-inputs', change "cross-linux-headers" to "linux-headers". * guix/git-download.scm (git-fetch): Use 'standard-packages' instead of 'standard-inputs'. * tests/builders.scm ("gnu-build-system"): Remove use of 'build-system-builder'. ("gnu-build"): Remove 'source' and #:implicit-inputs? arguments to 'gnu-build'. * tests/packages.scm ("search paths"): Adjust to new build system API. ("package-cross-derivation, no cross builder"): Likewise. * doc/guix.texi (Build Systems): Add paragraph on bags.
2014-08-28gnu: Split (gnu packages base), adding (gnu packages commencement).Ludovic Courtès
* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0, findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet, binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0, texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash, cross-gcc-wrapper, static-bash-for-glibc, glibc-final, gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++, gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs, guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final, %boot5-inputs, %final-inputs, canonical-package, gcc-toolchain, gcc-toolchain-4.8, gcc-toolchain-4.9): Move to... * gnu/packages/commencement.scm: ... here. New file. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. * build-aux/check-final-inputs-self-contained.scm: Adjust accordingly. * gnu/packages/cross-base.scm: Likewise. * gnu/packages/make-bootstrap.scm: Likewise. * guix/build-system/cmake.scm (cmake-build): Likewise. * guix/build-system/gnu.scm (standard-packages, gnu-build, gnu-cross-build): Likewise. * guix/build-system/perl.scm (perl-build): Likewise. * guix/build-system/python.scm (python-build): Likewise. * guix/build-system/trivial.scm (guile-for-build): Likewise. * guix/download.scm (url-fetch): Likewise. * guix/gexp.scm (default-guile): Likewise. * guix/git-download.scm (git-fetch): Likewise. * guix/monads.scm (run-with-store): Likewise. * guix/packages.scm (default-guile): Likewise. * guix/scripts/package.scm (guix-package): Likewise. * guix/scripts/refresh.scm: Likewise. * guix/svn-download.scm (svn-fetch): Likewise. * tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths): Likewise. * tests/packages.scm ("GNU Make, bootstrap"): Likewise. * tests/guix-package.sh: Likewise. * gnu/services/base.scm: Use 'canonical-package' instead of xxx-final. * gnu/services/xorg.scm: Likewise. * gnu/system/vm.scm: Likewise. * guix/scripts/pull.scm (guix-pull): Likewise.
2014-06-09gnu: cross-gcc: Use a single output.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-gcc): Add 'outputs' field.
2013-11-02gnu: cross-gcc: Fix build of 'gcc-cross-sans-libc'.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-gcc): Add "--disable-libatomic".
2013-11-01gnu: Switch to GCC 4.8 as the default compiler.Ludovic Courtès
* gnu/packages/base.scm (gcc-boot0, cross-gcc-wrapper, gcc-final): Base on GCC-4.8. * gnu/packages/cross-base.scm (cross-gcc): Likewise. * gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc, %gcc-static, %gcc-stripped): Likewise.
2013-10-09gnu: Use the 'patches' field of <origin>.Ludovic Courtès
* gnu/packages/apr.scm, gnu/packages/autotools.scm, gnu/packages/avahi.scm, gnu/packages/cdrom.scm, gnu/packages/cmake.scm, gnu/packages/cpio.scm, gnu/packages/cross-base.scm, gnu/packages/emacs.scm, gnu/packages/flex.scm, gnu/packages/fontutils.scm, gnu/packages/glib.scm, gnu/packages/grub.scm, gnu/packages/guile.scm, gnu/packages/idutils.scm, gnu/packages/libevent.scm, gnu/packages/linux.scm, gnu/packages/mail.scm, gnu/packages/make-bootstrap.scm, gnu/packages/mp3.scm, gnu/packages/oggvorbis.scm, gnu/packages/pdf.scm, gnu/packages/plotutils.scm, gnu/packages/qemu.scm, gnu/packages/recutils.scm, gnu/packages/rush.scm, gnu/packages/scheme.scm, gnu/packages/system.scm, gnu/packages/tcsh.scm, gnu/packages/valgrind.scm, gnu/packages/vpn.scm, gnu/packages/w3m: Use the 'patches' field of <origin> instead of adding a patch as input plus using #:patches.
2013-07-04build-system/gnu: Remove the "debug" output when `strip-binaries?' is #f.Ludovic Courtès
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Delete "debug" from OUTPUTS when STRIP-BINARIES? is false. * gnu/packages/cross-base.scm (cross-libc): Leave `outputs' unchanged. This reverts commit a4627d4.
2013-07-04gnu: cross-libc: Remove the "debug" output.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-libc): Remove "debug" from the `outputs' field.
2013-06-26gnu: gcc: Use `gcc-configure-flags-for-triplet' when cross-compiling GCC.Ludovic Courtès
* gnu/packages/cross-base.scm (gcc-configure-flags-for-triplet): Move to... * gnu/packages/gcc.scm (gcc-configure-flags-for-triplet): ... here. New procedure. (gcc-4.7): Use it when (%current-target-system) is true.
2013-06-26gnu: cross-base: Add support for `mips64el-linux-gnu-gnuabi64' (N64 ABI).Ludovic Courtès
* gnu/packages/cross-base.scm (gcc-configure-flags-for-triplet): New procedure. (cross-gcc): Use it. (xgcc-mips64el): Use *-gnuabi64 instead of the N32 ABI.
2013-06-26gnu: cross-base: Make `glibc-dynamic-linker' do the right thing.Ludovic Courtès
* gnu/packages/bootstrap.scm (glibc-dynamic-linker): Determine SYSTEM based on (%current-target-system) when it's true. * gnu/packages/cross-base.scm (cross-gcc): Directly call (package-arguments gcc-4.7) from the body of `arguments'.
2013-06-26gnu: cross-base: Build Binutils with `--with-sysroot=/'.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-binutils): Use `--with-sysroot=/'.
2013-06-25gnu: cross-base: Make the cross tools native inputs.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-gcc): Change `inputs' to `native-inputs', and set `inputs' to the empty list. (cross-libc): Likewise.
2013-05-27gnu: cross-binutils: Build with `--with-sysroot'.Ludovic Courtès
This fixes resolution of DT_NEEDED entries in cross-built libraries. For instance, if ltdl.so needs libdl.so and has it in its RUNPATH, then libdl.so is searched for in the right place. * gnu/packages/cross-base.scm (cross-binutils): Pass `--with-sysroot=/no-such-path'.
2013-05-24build-system/gnu: Implement cross build.Ludovic Courtès
* guix/build-system/gnu.scm (inputs-search-paths): New procedure. (standard-search-paths): Use it. (expand-inputs): New procedure. (standard-inputs): Use it. (standard-cross-packages, standard-cross-inputs, standard-cross-search-paths, gnu-cross-build): New procedures. (gnu-build-system): Set `cross-build' field to `gnu-cross-build'. * gnu/packages/cross-base.scm: Export `cross-gcc', `cross-binutils', and `cross-libc'. * guix/build/gnu-cross-build.scm: New file. * Makefile.am (MODULES): Add it.
2013-05-24gnu: cross-gcc: Set the right search paths.Ludovic Courtès
* gnu/packages/cross-base.scm (cross-gcc): Override `search-paths' and `native-search-paths'.
2013-04-17gnu: Add missing import in (gnu packages cross-base).Ludovic Courtès
* gnu/packages/cross-base.scm: Use (gnu packages gcc). Reported by Nikita Karetnikov <nikita@karetnikov.org>.
2013-02-27gnu: Add cross tool chain.Ludovic Courtès
* gnu/packages/cross-base.scm: New file. * gnu/packages/patches/gcc-cross-environment-variables.patch: New file. * Makefile.am (MODULES): Add cross-base.scm. (dist_patch_DATA): Add gcc-cross-environment-variables.patch. * gnu/packages/base.scm (gcc-4.7): Use `LDFLAGS_FOR_TARGET' instead of `LDFLAGS_FOR_BUILD', and use `-B' instead of `-L'. * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Add case for "mips64el-linux".