guix-devel/tests
Ludovic Courtès 05962f2958 packages: Implement grafts.
Thanks to Mark H. Weaver <mhw@netris.org> for insightful discussions
and suggestions.

* guix/packages.scm (<package>)[graft]: New field.
  (patch-and-repack): Invoke 'package-derivation' with #:graft? #f.
  (package-source-derivation): Likewise.  Do not use (%guile-for-build)
  in call to 'patch-and-repack', and we could end up using a grafted
  Guile.
  (expand-input): Likewise, also for 'package-cross-derivation' call.
  (package->bag): Add #:graft? parameter.  Honor it.  Use 'strip-append'
  instead of 'package-full-name'.
  (input-graft, input-cross-graft, bag-grafts, package-grafts): New
  procedures.
  (package-derivation, package-cross-derivation): Add #:graft? parameter
  and honor it.
* gnu/packages/bootstrap.scm (package-with-bootstrap-guile): Add
  recursive call on 'graft'.
* guix/build-system/gnu.scm (package-with-explicit-inputs,
  package-with-extra-configure-variable, static-package): Likewise.
  (gnu-build): Use the ungrafted Guile to avoid full rebuilds.
  (gnu-cross-build): Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/ruby.scm (ruby-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* tests/packages.scm ("package-derivation, direct graft",
  "package-cross-derivation, direct graft", "package-grafts,
  indirect grafts", "package-grafts, indirect grafts, cross",
  "package-grafts, indirect grafts, propagated inputs",
  "package-derivation, indirect grafts"): New tests.
  ("bag->derivation", "bag->derivation, cross-compilation"): Wrap in
  'parameterize'.
* doc/guix.texi (Security Updates): New node.
  (Invoking guix build): Document --no-graft.
2014-11-02 21:22:12 +01:00
..
base32.scm Move `sha256' to (guix hash). 2013-07-01 23:28:21 +02:00
base64.scm substitute-binary: Support the Signature field of a narinfo file. 2014-03-30 12:02:10 +02:00
build-utils.scm utils: Allow wrap-program to be called multiple times. 2014-09-13 21:53:21 -05:00
builders.scm build-system: Introduce "bags" as an intermediate representation. 2014-10-05 21:58:42 +02:00
derivations.scm derivations: Add 'derivation-name'. 2014-11-02 21:22:12 +01:00
gexp.scm gexp: Allow use of high-level objects in #:references-graphs. 2014-09-06 23:42:56 +02:00
guix-archive.sh tests: Make sure 'guix archive --import' succeeds. 2014-03-29 22:59:46 +01:00
guix-authenticate.sh authenticate: Allow signatures with binary data to be written to stdout. 2014-04-22 11:30:58 +02:00
guix-build.sh tests: Fix typo in guix-build.sh. 2014-08-27 00:27:12 +02:00
guix-daemon.sh daemon: Add tests for substitutes and --no-substitutes. 2014-03-27 23:56:47 +01:00
guix-download.sh Replace individual scripts with master 'guix' script. 2013-02-16 22:17:37 -05:00
guix-gc.sh guix gc: Add `--references' and `--referrers'. 2013-02-27 23:16:00 +01:00
guix-hash.sh guix hash: Add '--recursive'. 2014-02-21 23:49:52 +01:00
guix-lint.sh build: Adjust lint tests for latest rules. 2014-10-28 09:28:40 -05:00
guix-package.sh guix package: Add '--switch-generation' option. 2014-10-12 08:45:38 +04:00
guix-register.sh guix-register: By default, attempt to deduplicate registered items. 2014-08-25 00:16:49 +02:00
guix-system.sh guix {system,offload}: Improve reporting of syntax errors. 2014-06-27 00:12:40 +02:00
hash.scm hash: Add 'open-sha256-input-port', for Guile > 2.0.9. 2014-01-24 00:01:49 +01:00
lint.scm guix: lint: Make exception for package name starting description. 2014-10-26 13:03:53 -05:00
monads.scm monads: Add 'mbegin'. 2014-10-08 23:35:20 +02:00
nar.scm Break module cycle involving (guix store) and (guix ui). 2014-10-09 23:51:19 +02:00
packages.scm packages: Implement grafts. 2014-11-02 21:22:12 +01:00
pk-crypto.scm authenticate: Allow signatures with binary data to be written to stdout. 2014-04-22 11:30:58 +02:00
pki.scm pki: Add 'signature-case' macro. 2014-03-31 23:34:20 +02:00
profiles.scm ui: Move 'show-manifest-transaction' from (guix profiles). 2014-10-10 00:06:35 +02:00
pypi.scm import: Add PyPI importer. 2014-09-29 19:30:28 -04:00
records.scm records: Report unknown field names in inheriting forms. 2014-07-17 16:45:45 +02:00
signing-key.pub daemon: Implement signed archive import/export. 2013-12-20 17:17:42 +01:00
signing-key.sec daemon: Implement signed archive import/export. 2013-12-20 17:17:42 +01:00
snix.scm import: Add PyPI importer. 2014-09-29 19:30:28 -04:00
store.scm Break module cycle involving (guix store) and (guix ui). 2014-10-09 23:51:19 +02:00
substitute-binary.scm Break module cycle involving (guix store) and (guix ui). 2014-10-09 23:51:19 +02:00
syscalls.scm syscalls: Accept ENOENT in the 'swapoff' test. 2014-10-12 00:14:09 +02:00
test.drv Add unit test for derivation parsing and output. 2012-04-19 23:09:55 +02:00
ui.scm ui: Move 'show-manifest-transaction' from (guix profiles). 2014-10-10 00:06:35 +02:00
union.scm Factorize test suite support in (guix tests). 2014-08-23 22:33:04 +02:00
utils.scm utils: Add 'strip-keyword-arguments'. 2014-10-05 21:57:19 +02:00