~ruther/guix-local

dba6b34b — Ludovic Courtès 13 years ago
Add a sha256 fallback that uses Coreutils instead of libchop.

* guix/utils.scm (compile-time-value): Move to the top.
  (sha256): Add an implementation that uses Coreutils, for when libchop
  is unavailable.
900f7267 — Ludovic Courtès 13 years ago
Introduce `compile-time-value' and use it.

* guix/utils.scm (compile-time-value): New macro.
  (%nixpkgs-directory): Use it.

* guix/build-system/gnu.scm (%standard-inputs): Likewise.
e3ce5d70 — Ludovic Courtès 13 years ago
Add a declarative packaging layer.

* Makefile.am (MODULES): Add `guix/packages.scm' and `distro/base.scm'.
  (TESTS): Add `tests/packages.scm'.
  (EXTRA_DIST): New variable.

* guix/packages.scm, distro/base.scm, tests/packages.scm: New files.

* guix/http.scm (http-fetch): Make `name' an optional argument, to match
  the expectations of `package-source-derivation'.
e1e8874e — Ludovic Courtès 13 years ago
build-system/gnu: Have `configure-flags' and `make-flags' evaluated.

* guix/build-system/gnu.scm (gnu-build): Double-quote the default value
  of MAKE-FLAGS and CONFIGURE-FLAGS.  Don't quote them in BUILDER.
04a0b857 — Ludovic Courtès 13 years ago
build: Define $NIXPKGS when compiling.

* Makefile.am (.scm.go): Define $NIXPKGS.
208f7cd1 — Ludovic Courtès 13 years ago
Abstract build systems.

* Makefile.am (MODULES): Add `guix/build-system.scm' and
  `guix/build-system/gnu.scm'.  Remove `guix/gnu-build-system.scm'.

* guix/build-system.scm: New file.
* guix/gnu-build-system.scm: Rename to...
* guix/build-system/gnu.scm: ... this.
  (gnu-build-system): New variable.

* tests/builders.scm: Adjust `use-module' clauses.
  ("gnu-build-system"): New test.
72d86963 — Ludovic Courtès 13 years ago
Add `define-record-type*'.

* guix/utils.scm (define-record-type*): New macro.

* tests/utils.scm ("define-record-type*"): New test.
0d56a551 — Ludovic Courtès 13 years ago
build-expression->derivation: Move module forms at the top-level.

* guix/derivations.scm (build-expression->derivation)[module-form?]: New
  procedure.
  [prologue]: Add any form of EXP that matches MODULE-FORM?.
  [builder]: Remove any MODULE-FORM? from EXP.
5dcfdcaa — Ludovic Courtès 13 years ago
gnu-build-system: Structure as a customizable sequence of phases.

* guix/build/gnu-build-system.scm (set-paths, build, check, install):
  New procedures.
  (unpack): Make `source' a keyword arg; add `#:allow-other-keys'.
  (configure): Likewise.
  (%standard-phases): New variable.
  (gnu-build): Make `source', `outputs', and `inputs' keyword arguments;
  add `phases' keyword argument; #:allow-other-keys; add rest arguments
  `args'.  Invoke each of PHASES in order within `every'.

* guix/gnu-build-system.scm (gnu-build): Add `make-flags' and `phases'
  keyword arguments.  Update builder's `gnu-build' call to match the new
  convention.
3ab892ff — Ludovic Courtès 13 years ago
gnu-build-system: Add GNU Diffutils and GNU Path to the standard inputs.

* guix/gnu-build-system.scm (%standard-inputs): Add Diffutils and Patch.
db393b33 — Ludovic Courtès 13 years ago
build-expression->derivation: Have the build fail when EXP returns #f.

* guix/derivations.scm (build-expression->derivation)[builder]: Pass the
  result of EXP to `exit'.

* tests/derivations.scm ("build-expression->derivation with expression
  returning #f"): New test.
9f55cf8d — Ludovic Courtès 13 years ago
Remove leftover debugging expressions.

* guix/build/utils.scm (directory-exists?): Remove leftover debugging
  expressions.
dcee50c1 — Ludovic Courtès 13 years ago
store: Wait for the server to be done sending output.

* guix/store.scm (current-build-output-port): New variable.
  (process-stderr): Add docstring.  Always return #f, except upon
  %STDERR-LAST.  Upon %STDERR-NEXT, write to
  `current-build-output-port', not `current-error-port'.
  (set-build-options): Loop until `process-stderr' returns true.
  (define-operation): Likewise.
  (build-derivations): Update docstring to mention that it's
  synchronous.
73d96596 — Ludovic Courtès 13 years ago
build: Be cross-compilation-ready.

* Makefile.am (.scm.go): Pass `--target=$(host)'.

* configure.ac: Use `AC_CANONICAL_HOST'.
48e8333d — Ludovic Courtès 13 years ago
build: Provide the right include path when building modules.

* Makefile.am (.scm.go): Add missing `-L $(top_srcdir)'.
1273d44a — Ludovic Courtès 13 years ago
Build (guix) last.

* Makefile.am (MODULES): Move `guix.scm' last.
af51c820 — Ludovic Courtès 13 years ago
Add a build system.

* configure.ac, Makefile.am: New files.
2acb2cb6 — Ludovic Courtès 13 years ago
Change `build-expression->derivation' to support sub-derivation inputs.

* guix/derivations.scm (build-expression->derivation): Change to expect
  INPUTS to have the form (NAME DRV-PATH SUB-DRV) or (NAME DRV-PATH),
  instead of (NAME . DRV-PATH).  Update callers accordingly.

* guix/gnu-build-system.scm, tests/builders.scm, tests/derivations.scm:
  Update accordingly.
c36db98c — Ludovic Courtès 13 years ago
Add supporting tools for the GNU Build System.

* guix/derivations.scm (build-expression->derivation): Add all of INPUTS
  as inputs to the final derivation.

* guix/build/gnu-build-system.scm, guix/build/utils.scm,
  guix/gnu-build-system.scm: New files.

* tests/builders.scm ("gnu-build"): New test.
bcdd83ec — Ludovic Courtès 13 years ago
Fix the order of the derivation's sources in `derivation-hash'.

* guix/derivations.scm (derivation-hash): Sort SOURCES alphabetically as
  well.
Next