summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-05-27packages: Raise an error condition a cross builder is needed but unavailable.Ludovic Courtès
* guix/packages.scm (&package-cross-build-system-error): New condition type. (package-cross-derivation): Raise &package-cross-build-system-error when the build system doesn't support cross builds. * guix/ui.scm (call-with-error-handling): Add package-cross-build-system-error? case. * tests/packages.scm ("package-cross-derivation, no cross builder"): New test.
2013-05-27build-system/gnu: Fix typo in `gnu-cross-build'.Ludovic Courtès
* guix/build-system/gnu.scm (gnu-cross-build)[builder]: When IMPLICIT-TARGET-INPUTS is #f, default to '().
2013-05-27gnu: guile: More cross-compilation tweaks.Ludovic Courtès
* 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.
2013-05-27gnu: pkg-config: Provide a cross-build-friendly wrapper.Ludovic Courtès
* 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.
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-26doc: Improve wording and fix typos in "Introduction" and "Requirements".Nikita Karetnikov
* doc/guix.texi (Introduction, Requirements): Rephrase and fix typos.
2013-05-26gnu: guile: Add Bash as an input, to permit cross-compilation.Ludovic Courtès
* 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.
2013-05-26gnu: bash: Fix cross-compilation.Ludovic Courtès
* gnu/packages/bash.scm (bash): Pass "bash_cv_job_control_missing=no" when (%current-target-system) is true.
2013-05-26build: `hydra.scm' really cross-builds Gettext.Ludovic Courtès
* hydra.scm: Import (gnu packages gettext).
2013-05-25zlib: Add a sourceforge mirror.Cyril Roelandt
This is especially useful since the tarball is deleted from zlib.net as soon as a new version of zlib is released.
2013-05-25build: Add missing import in `hydra.scm'.Ludovic Courtès
* hydra.scm: Import (gnu packages gawk).
2013-05-25build: `hydra.scm' cross-builds a few more packages.Ludovic Courtès
* hydra.scm (%packages-to-cross-build): Add a few packages.
2013-05-25gnu: ncurses, readline: Allow cross-compilation.Ludovic Courtès
* 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.
2013-05-25gnu: libffi: Allow cross-compilation.Ludovic Courtès
* 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.
2013-05-25gnu: libtool: Allow cross-compilation.Ludovic Courtès
* gnu/packages/autotools.scm (libtool)[arguments]: Use #:phases argument only when building natively.
2013-05-25gnu: gawk: Allow cross-compilation.Ludovic Courtès
* 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.
2013-05-25gnu: libsigsegv: Fix mips64el-linux-gnu (cross-)builds.Ludovic Courtès
* gnu/packages/libsigsegv.scm (libsigsegv): New `arguments' field.
2013-05-25gnu: findutils: Fix cross-compilation.Ludovic Courtès
* gnu/packages/base.scm (findutils): Reinstate cross-compilation #:configure-flags.
2013-05-25gnu: sed: Allow cross-compilation.Ludovic Courtès
* gnu/packages/base.scm (sed): Keep the default phases when (%current-target-system) is true.
2013-05-25gnu: coreutils: Allow cross-compilation.Ludovic Courtès
* 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.
2013-05-25gnu: gettext, attr, acl: Disable `check' phase twiddling when cross building.Ludovic Courtès
* 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.
2013-05-25packages: Make `native-inputs' thunked.Ludovic Courtès
* guix/packages.scm (<package>): Make `native-inputs' thunked.
2013-05-25packages: Re-export `%current-target-system'.Ludovic Courtès
* guix/packages.scm: Re-export `%current-target-system'.
2013-05-25build-system/gnu: Make sure build input variables contain pairs.Ludovic Courtès
* guix/build-system/gnu.scm (gnu-cross-build)[builder]: Make sure %build-host-inputs and %build-target-inputs always contain pairs, not lists.
2013-05-25build: `hydra.scm' cross-builds simpler packages.Ludovic Courtès
* hydra.scm (%packages-to-cross-build): Remove things from make-bootstrap for now.
2013-05-24build-system/trivial: Implement the cross-build protocol.Ludovic Courtès
* guix/build-system/trivial.scm (guile-for-build): New procedure. (trivial-build): Use it. (trivial-cross-build): New procedure. (trivial-build-system): Use it.
2013-05-24package: Fix default profile ownership check when it's just been created.Ludovic Courtès
* guix/scripts/package.scm (guix-package)[ensure-default-profile]: Check whether S is true before checking its owner. Fixes the case where we built %PROFILE-DIRECTORY just above.
2013-05-24build: `hydra.scm' adds cross-build jobs.Ludovic Courtès
* hydra.scm (package->alist): Add `package-derivation' argument. (package-cross-job): New procedure. (%packages-to-cross-build, %cross-targets): New variables. (hydra-jobs): Add cross jobs.
2013-05-24build: Add `--target' option.Ludovic Courtès
* guix/scripts/build.scm (derivations-from-package-expressions): Add `package-derivation' parameter. (show-help, %options): Add `--target'. (guix-build): Use `package-cross-derivation' when `--target' is passed. * tests/guix-build.sh: Add dry-run test with `--target'. * doc/guix.texi (Invoking guix build): Document `--target'.
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-24packages: Implement `package-cross-derivation'.Ludovic Courtès
* guix/packages.scm (package-transitive-target-inputs, package-transitive-native-inputs): New procedures. (package-derivation): Parametrize `%current-target-system'. (package-cross-derivation): Implement. * guix/utils.scm (%current-target-system): New variable. * tests/packages.scm ("package-cross-derivation"): New test. * doc/guix.texi (Defining Packages): Document `package-cross-derivation'.
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-05-24gnu: cross-gcc: Change patch so that `CROSS_LIBRARY_PATH' is honored.Ludovic Courtès
* gnu/packages/patches/gcc-cross-environment-variables.patch: Add two hunks, most notably one that changes GCC to honor LIBRARY_PATH_ENV when cross-compiling.
2013-05-24packages: Factorize things common to `package-{,cross-}derivation'.Ludovic Courtès
* guix/packages.scm (expand-input): New procedure, moved out of... (package-derivation): ... here. Adjust accordingly. (package-cross-derivation): Add `cross-system' and `system' parameters.
2013-05-24nls: Add Esperanto translation.Ludovic Courtès
* po/eo.po, po/LINGUAS: New files.
2013-05-24gnu: Add UnRTF.Ludovic Courtès
* gnu/packages/unrtf.scm: New file. * Makefile.am (MODULES): Add it.
2013-05-23gnu: libgc: Add 7.2d.Ludovic Courtès
* gnu/packages/bdw-gc.scm (libgc-7.2): New variable.
2013-05-22gnu: Add GNU Plotutils.Ludovic Courtès
* gnu/packages/plotutils.scm: New file. * Makefile.am (MODULES): Add it.
2013-05-20Update `NEWS'.Ludovic Courtès
2013-05-20gnu: Add CVS.Ludovic Courtès
* gnu/packages/version-control.scm (cvs): New variable.
2013-05-20Add `--max-silent-time' to `guix build' and `guix package'.Ludovic Courtès
* guix/scripts/build.scm (%default-options): Add default `max-silent-time' value. (show-help, %options): Add `--max-silent-time'. (guix-build): Pass `max-silent-time' to `set-build-options'. * guix/scripts/package.scm (%default-options): Add default `max-silent-time' value. (show-help, %options): Add `--max-silent-time'. (guix-package): Pass `max-silent-time' to `set-build-options'. * guix/ui.scm (string->number*): New procedure. * tests/derivations.scm ("build-expression->derivation and max-silent-time"): New test. * doc/guix.texi (Invoking guix package, Invoking guix build): Document `--max-silent-time'.
2013-05-18gnu: Add strace.Ludovic Courtès
* gnu/packages/linux.scm (strace): New variable.
2013-05-18gnu: Improve synopses for Linux-related packages.Ludovic Courtès
* gnu/packages/linux.scm (util-linux, procps, e2fsprogs): Clarify and shrink synopses.
2013-05-18build: Switch to 0.3.Ludovic Courtès
* configure.ac: Bump to 0.3. Use the full URL.
2013-05-17Update `TODO'.Ludovic Courtès
2013-05-17gnu: automake: Update to 1.13.2.Ludovic Courtès
* gnu/packages/autotools.scm (autoconf-wrapper): Wrap `configure' files regardless of the exit code of `autoconf'. Triggered by Automake's `t/am-prog-cc-stdc.sh'. (automake): Update to 1.13.2.
2013-05-16package: Make sure the profile directory is owned by the user.Ludovic Courtès
* guix/scripts/package.scm (guix-package)[ensure-default-profile]: Check the owner of %PROFILE-DIRECTORY. Report an error when the owner is not the current user. Add `rtfm' procedure. * doc/guix.texi (Invoking guix package): Mention the ownership test.
2013-05-15substitute-binary: Pass `filtered-port' an unbuffered port.Ludovic Courtès
This fixes a bug whereby `read-response' would read more than just the response, with the extra data going into the port's buffer; the "bzip2 -dc" process spawned by `filtered-port' would not see the those buffered data, which are definitely lost, and would bail out with "bzip2: (stdin) is not a bzip2 file." * guix/utils.scm (filtered-port): Document that INPUT must be unbuffered. * guix/web.scm (http-fetch): Add `buffered?' parameter. Call `open-socket-for-uri' explicitly, and call `setvbuf' when BUFFERED? is false. Pass the port to `http-get'. Close it upon 301/302. * guix/scripts/substitute-binary.scm (fetch): Add `buffered?' parameter. Pass it to `http-fetch'; honor it for `file' URIs. (guix-substitute-binary): Call `fetch' with #:buffered? #f for port RAW. * tests/utils.scm ("filtered-port, file"): Open FILE as unbuffered.
2013-05-15gnu: texinfo: Don't propagate Perl.Ludovic Courtès
* gnu/packages/texinfo.scm (texinfo): Don't propagate Perl.
2013-05-14substitute-binary: Work around thread-unsafe `regexp-exec'.Ludovic Courtès
* guix/scripts/substitute-binary.scm (%regexp-exec-mutex): New variable. (string->uri): New procedure. (fields->alist): Wrap `regexp-exec' call in `with-mutex'.