Commit Graph

46777 Commits

Author SHA1 Message Date
Ludovic Courtès ae3b6bb0f4 substitute-binary: Don't cache .narinfo lookups when lacking networking.
* guix/scripts/substitute-binary.scm (lookup-narinfo): Don't cache
  NARINFO when CACHE is #f.
2013-06-04 09:43:38 +02:00
Ludovic Courtès bdbb6fbb19 Update `NEWS'. 2013-06-04 00:45:57 +02:00
Nikita Karetnikov 94e4ddd508 gnu: Add Grue Hunter.
* gnu/packages/grue-hunter.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-03 11:55:43 +00:00
Nikita Karetnikov ef7cf2917a licenses: Add 'agpl3' and 'agpl3+'.
* guix/licenses.scm (agpl3, agpl3+): New variables.
2013-06-03 11:39:38 +00:00
Cyril Roelandt 5ace6e2fa8 gnu: Add Babel.
* gnu/packages/babel.scm (babel): New package.
2013-06-01 01:50:34 +02:00
Ludovic Courtès 1890a149cc gnu: Add XLockMore.
* gnu/packages/xlockmore.scm: New file.
* Makefile.am (MODULES): Add it.
2013-06-01 00:14:13 +02:00
Ludovic Courtès 63c0c19a64 gnu: gawk: Refer to the target Bash in io.c.
* gnu/packages/gawk.scm (gawk): Add Bash as an input
  when (%current-target-system) is true.
2013-06-01 00:07:26 +02:00
Ludovic Courtès 8caa6152d0 Fix name of Alexandru. 2013-06-01 00:06:30 +02:00
Ludovic Courtès 231eae53c2 gnu: Add Rubber.
* gnu/packages/texlive.scm (rubber): New variable.
2013-05-30 21:15:45 +02:00
Ludovic Courtès 44fbbf4c5f Thanks, Cojocaru. 2013-05-30 21:15:22 +02:00
Ludovic Courtès 89d02b98f9 ui: define-diagnostic: Don't mark `_' and `N_' as literals.
* guix/ui.scm (define-diagnostic): Use `free-identifier=?' to compare
  the user's input with `_' and `N-".  This should fix builds with Guile 2.1.
  Reported by Cojocaru Alexandru <xojoc@gmx.com>.
2013-05-30 00:49:34 +02:00
Ludovic Courtès 5282181d51 build-system/python: Avoid circular dependency.
This fixes a circular dependency introduced in commit acc26ff ("gnu: Add
pytz.").

* guix/build-system/python.scm (default-python): New procedure.
  (python-build): Use it.
2013-05-30 00:47:34 +02:00
Ludovic Courtès cf5d2ca329 substitute-binary: Gracefully exit upon networking errors.
Suggested by Andreas Enge <andreas@enge.fr>.

* guix/scripts/substitute-binary.scm (with-networking): New macro.
  (guix-substitute-binary): Wrap the body in `with-networking'.
2013-05-29 23:22:05 +02:00
Ludovic Courtès 56b1f4b780 build, package: Add `--fallback' option.
* guix/scripts/build.scm (%options, show-help): Add `--fallback'.
  (guix-build): Call `set-build-options' with #:fallback?.
* guix/scripts/package.scm (%options, show-help): Add `--fallback'.
  (guix-package): Call `set-build-options' with #:fallback?.
* doc/guix.texi (Invoking guix package, Invoking guix build): Document
  `--fallback'.
2013-05-29 23:22:05 +02:00
Ludovic Courtès c3eb878f0b store: Test the `fallback?' store option.
* guix/store.scm (set-build-options): Rename #:try-fallback? to #:fallback?.
* tests/store.scm ("substitute --fallback"): New test.
2013-05-29 23:22:05 +02:00
Cyril Roelandt acc26ff148 gnu: Add pytz.
* gnu/packages/python.scm (pytz): New package.
2013-05-29 01:47:16 +02:00
Ludovic Courtès 4f7e152b34 gnu: Add torsocks.
* gnu/packages/tor.scm (torsocks): New variable.
2013-05-29 00:03:12 +02:00
Cyril Roelandt 842ded334f python-build-system: add a check phase.
* guix/build/python-build-system.scm (check): New procedure.
  (%standard-phases): Use it.
2013-05-28 22:53:35 +02:00
Ludovic Courtès 9b222abe03 packages: Raise an error condition a cross builder is needed but unavailable.
* 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-27 23:43:00 +02:00
Ludovic Courtès ea84ec7711 build-system/gnu: Fix typo in `gnu-cross-build'.
* guix/build-system/gnu.scm (gnu-cross-build)[builder]: When
  IMPLICIT-TARGET-INPUTS is #f, default to '().
2013-05-27 23:43:00 +02:00
Ludovic Courtès 58b4e8e877 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.
2013-05-27 23:43:00 +02:00
Ludovic Courtès d581acee5b 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.
2013-05-27 23:43:00 +02:00
Ludovic Courtès 47e74d6e9d 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'.
2013-05-27 23:43:00 +02:00
Nikita Karetnikov 4bfc4ea349 doc: Improve wording and fix typos in "Introduction" and "Requirements".
* doc/guix.texi (Introduction, Requirements): Rephrase and fix typos.
2013-05-26 23:25:01 +00:00
Ludovic Courtès 9c782445fb 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.
2013-05-26 23:46:11 +02:00
Ludovic Courtès 9a97b8144d gnu: bash: Fix cross-compilation.
* gnu/packages/bash.scm (bash): Pass "bash_cv_job_control_missing=no"
  when (%current-target-system) is true.
2013-05-26 23:46:11 +02:00
Ludovic Courtès aa289a3e82 build: `hydra.scm' really cross-builds Gettext.
* hydra.scm: Import (gnu packages gettext).
2013-05-26 23:46:10 +02:00
Cyril Roelandt a67f97fea1 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.
2013-05-25 23:17:53 +02:00
Ludovic Courtès 923fbae1f0 build: Add missing import in `hydra.scm'.
* hydra.scm: Import (gnu packages gawk).
2013-05-25 23:24:51 +02:00
Ludovic Courtès 598608c7ee build: `hydra.scm' cross-builds a few more packages.
* hydra.scm (%packages-to-cross-build): Add a few packages.
2013-05-25 22:39:51 +02:00
Ludovic Courtès f755aa3f7a 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.
2013-05-25 20:16:45 +02:00
Ludovic Courtès 089b06348e 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.
2013-05-25 18:03:52 +02:00
Ludovic Courtès 1984b43895 gnu: libtool: Allow cross-compilation.
* gnu/packages/autotools.scm (libtool)[arguments]: Use #:phases argument
  only when building natively.
2013-05-25 18:00:01 +02:00
Ludovic Courtès 3871c9f500 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.
2013-05-25 17:54:27 +02:00
Ludovic Courtès 9aa949a4b6 gnu: libsigsegv: Fix mips64el-linux-gnu (cross-)builds.
* gnu/packages/libsigsegv.scm (libsigsegv): New `arguments' field.
2013-05-25 16:56:22 +02:00
Ludovic Courtès cf9fd501ea gnu: findutils: Fix cross-compilation.
* gnu/packages/base.scm (findutils): Reinstate cross-compilation
  #:configure-flags.
2013-05-25 16:36:11 +02:00
Ludovic Courtès c8c6bba5a7 gnu: sed: Allow cross-compilation.
* gnu/packages/base.scm (sed): Keep the default phases
  when (%current-target-system) is true.
2013-05-25 16:26:16 +02:00
Ludovic Courtès de59af4d6d 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.
2013-05-25 16:24:21 +02:00
Ludovic Courtès 2a552f1177 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.
2013-05-25 16:19:06 +02:00
Ludovic Courtès a7dc055bb5 packages: Make `native-inputs' thunked.
* guix/packages.scm (<package>): Make `native-inputs' thunked.
2013-05-25 16:14:57 +02:00
Ludovic Courtès cd52703ace packages: Re-export `%current-target-system'.
* guix/packages.scm: Re-export `%current-target-system'.
2013-05-25 16:14:37 +02:00
Ludovic Courtès ee4d736881 build-system/gnu: Make sure build input variables contain pairs.
* 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-25 15:35:36 +02:00
Ludovic Courtès 2ee5f56b4d build: `hydra.scm' cross-builds simpler packages.
* hydra.scm (%packages-to-cross-build): Remove things from
  make-bootstrap for now.
2013-05-25 00:03:28 +02:00
Ludovic Courtès 5dce82180b build-system/trivial: Implement the cross-build protocol.
* 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-24 23:53:06 +02:00
Ludovic Courtès cba363bea8 package: Fix default profile ownership check when it's just been created.
* 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-24 23:14:19 +02:00
Ludovic Courtès 929c0f69de build: `hydra.scm' adds cross-build jobs.
* 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-24 23:12:56 +02:00
Ludovic Courtès e55ec43d8b build: Add `--target' option.
* 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-24 22:52:52 +02:00
Ludovic Courtès 264218a47e 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.
2013-05-24 22:44:15 +02:00
Ludovic Courtès 9c1edabd8b packages: Implement `package-cross-derivation'.
* 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-24 22:30:58 +02:00
Ludovic Courtès 17bb886ff4 gnu: cross-gcc: Set the right search paths.
* gnu/packages/cross-base.scm (cross-gcc): Override `search-paths' and
  `native-search-paths'.
2013-05-24 21:55:52 +02:00