gnu: Add Rubber. * gnu/packages/texlive.scm (rubber): New variable.
gnu: Add pytz. * gnu/packages/python.scm (pytz): New package.
gnu: Add torsocks. * gnu/packages/tor.scm (torsocks): New variable.
gnu: guile: More cross-compilation tweaks. * gnu/packages/guile.scm (guile-2.0): When cross-compiling, unset GUILE_LOAD_PATH and GUILE_LOAD_COMPILED_PATH, and set CC_FOR_BUILD=gcc.
gnu: pkg-config: Provide a cross-build-friendly wrapper. * gnu/packages/pkg-config.scm (pkg-config): Rename to... (%pkg-config): ... this. Make private. (cross-pkg-config, pkg-config-for-target): New procedures. (pkg-config): New macro.
gnu: cross-binutils: Build with `--with-sysroot'. 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'.
gnu: guile: Add Bash as an input, to permit cross-compilation. * gnu/packages/guile.scm (guile-2.0): Add Bash as an input when (%current-target-system) is true. Use %standard-cross-phases as a basis when (%current-target-system) is true.
gnu: bash: Fix cross-compilation. * gnu/packages/bash.scm (bash): Pass "bash_cv_job_control_missing=no" when (%current-target-system) is true.
zlib: Add a sourceforge mirror. This is especially useful since the tarball is deleted from zlib.net as soon as a new version of zlib is released.
gnu: ncurses, readline: Allow cross-compilation. * gnu/packages/ncurses.scm (ncurses): Add `cross-pre-install-phase'. Use different phases when (%current-target-system) is true. * gnu/packages/readline.scm (readline): Use %standard-cross-phases as the base when (%current-target-system) is true.
gnu: libffi: Allow cross-compilation. * gnu/packages/libffi.scm (libffi): Use %standard-cross-phases as the base when cross-compiling. Add (guix build gnu-cross-build) to the #:modules when cross-compiling. Improve synopsis.
gnu: libtool: Allow cross-compilation. * gnu/packages/autotools.scm (libtool)[arguments]: Use #:phases argument only when building natively.
gnu: gawk: Allow cross-compilation. * gnu/packages/gawk.scm (gawk)[arguments]: Use `set-shell-file-name' phase that works when cross-compiling; use `%standard-cross-phases' as the base when (%current-target-system) is true.
gnu: libsigsegv: Fix mips64el-linux-gnu (cross-)builds. * gnu/packages/libsigsegv.scm (libsigsegv): New `arguments' field.
gnu: findutils: Fix cross-compilation. * gnu/packages/base.scm (findutils): Reinstate cross-compilation #:configure-flags.
gnu: sed: Allow cross-compilation. * gnu/packages/base.scm (sed): Keep the default phases when (%current-target-system) is true.
gnu: coreutils: Allow cross-compilation. * gnu/packages/base.scm (coreutils): Remove Perl input when (%current-target-system) is true. Use %standard-cross-phases as the base when (%current-target-system) is true.
gnu: gettext, attr, acl: Disable `check' phase twiddling when cross building. * gnu/packages/gettext.scm (gettext)[arguments]: Disable `check' phase manipulations when (%current-target-system) is true. * gnu/packages/attr.scm (attr)[arguments]: Likewise. * gnu/packages/acl.scm (acl)[arguments]: Likewise.
build-system/gnu: Implement cross build. * 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.
gnu: cross-gcc: Set the right search paths. * gnu/packages/cross-base.scm (cross-gcc): Override `search-paths' and `native-search-paths'.