Age | Commit message (Expand) | Author |
2015-04-04 | build-system: Add haskell-build-system....* guix/build-system/haskell.scm: New file.
* guix/build/haskell-build-system.scm: New file.
* doc/guix.texi: Add section on 'haskell-build-system'.
| Federico Beffa |
2015-03-12 | build-system/python: Delay evaluation of the 'python2' package....This fixes a bug whereby uses of 'package-with-python2' at the top-level
in modules other than (gnu packages python) could lead to an "Unbound
variable: python2" error due to the circular references.
Reported by Tomáš Čech.
* guix/build-system/python.scm (package-with-explicit-python)[arguments]:
Check whether PYTHON is a promise, and force it if it is.
(package-with-python2): Wrap 'default-python2' call in 'delay'.
| Ludovic Courtès |
2015-03-04 | Merge branch 'core-updates'. | Ludovic Courtès |
2015-03-02 | build: ruby: Add gitify phase....* guix/build-system/ruby.scm (lower): Add git as implicit input.
* guix/build/ruby-build-system.scm (gitify): New procedure.
(%standard-phases): Add gitify phase.
| David Thompson |
2015-02-26 | build-system/gnu: Add 'install-locale' phase....* guix/build/gnu-build-system.scm (install-locale): New procedure.
(%standard-phases): Add it.
* guix/build-system/gnu.scm (gnu-build): Add #:locale and pass it to
the build script.
(gnu-cross-build): Likewise.
| Ludovic Courtès |
2015-02-18 | build-system/perl: Use Build.PL for builds if present....* guix/build/perl-build-system.scm (configure): Use Build.PL if present.
(build, check, install): New procedures.
(%standard-phases): Replace build, check, and install phases.
* guix/build-system/perl (perl-build): Add make-maker? and module-build-flags
arguments.
* doc/guix.texi (Build Systems)[perl-build-system]: Document behavior rsp.
Build.PL and new arguments.
| Eric Bavier |
2015-02-08 | build: Add 'waf-build-system'....* guix/build-system/waf.scm,
guix/build/waf-build-system.scm: New files.
* Makefile.am (MODULES): Add them.
* doc/guix.texi (Build Systems): Document waf-build-system.
| Ricardo Wurmus |
2015-01-12 | guix: build/glib-or-gtk-build-system: Add support for GIO and XDG theming....* guix/build/glib-or-gtk-build-system.scm (data-directories): Rename
'schemas-directories' to 'data-directories' and add support for XDG theming
data.
* guix/build/glib-or-gtk-build-system.scm (gio-module-directories): New
function.
* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Update names to
reflect that we are dealing with more types of data and not only with
schemas. Add handling of GIO modules.
* guix/build-system/glib-or-gtk.scm (lower): Import the 'bin' output of GLib
instead of 'out'. This was an error since we need the program
'glib-compile-schemas'. Update the description.
| Federico Beffa |
2014-12-23 | build-system/python: Fix 'package-with-explicit-python'....Reported by Federico Beffa <beffa@ieee.org>
and Eric Bavier <ericbavier@gmail.com>.
* guix/build-system/python.scm (package-with-explicit-python): Do
nothing when P's build system is not PYTHON-BUILD-SYSTEM.
| Ludovic Courtès |
2014-12-09 | build-system/glib-or-gtk: Fix default value of #:glib-or-gtk-wrap-excluded-ou......Fixes <http://bugs.gnu.org/19321>.
Reported by Mark H Weaver <mhw@netris.org>.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Change default
value of #:glib-or-gtk-wrap-excluded-outputs to ''().
| Ludovic Courtès |
2014-12-08 | build-system/python: Add handling of 'propagated-inputs' in...'package-with-explicit-python'.
* guix/build-system/python.scm (package-with-explicit-python): Add mapping for
'propagated-inputs'.
| Federico Beffa |
2014-12-01 | build-system/glib-or-gtk: Allow specific outputs to be excluded from wrapping....* guix/build/glib-or-gtk-build-system.scm (wrap-all-programs): Add
#:glib-or-gtk-wrap-excluded-outputs parameter and honor it.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Add
#:glib-or-gtk-wrap-excluded-outputs parameter and pass it in BUILDER.
* doc/guix.texi (Build Systems): Mention it.
| Ludovic Courtès |
2014-11-02 | 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.
| Ludovic Courtès |
2014-10-28 | build-system/gnu: Add #:substitutable? parameter....* guix/build-system/gnu.scm (gnu-build): Add #:substitutable?
parameter. Pass #:local-build? to 'build-expression->derivation'.
(gnu-cross-build): Likewise.
| Ludovic Courtès |
2014-10-08 | gnu: Add the 'glib-or-gtk' build system....* guix/build-system/glib-or-gtk.scm, guix/build/glib-or-gtk-build-system.scm:
New files.
* Makefile.am (MODULES): Add them.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
| Federico Beffa |
2014-10-05 | build-system/trivial: Preserve the cross-compilation target in bags....* guix/build-system/trivial.scm (lower): Initialize the 'target' field.
| Ludovic Courtès |
2014-10-05 | build-system: Bags record their system and target....* guix/build-system.scm (<bag>)[system, target]: New fields.
(make-bag): Add #:system parameter and pass it to LOWER.
* gnu/packages/bootstrap.scm (make-raw-bag): Initialize 'system' field.
* guix/build-system/cmake.scm (lower): Likewise.
* guix/build-system/perl.scm (lower): Likewise.
* guix/build-system/python.scm (lower): Likewise.
* guix/build-system/ruby.scm (lower): Likewise.
* guix/build-system/trivial.scm (lower): Likewise.
* guix/build-system/gnu.scm (lower): Initialize 'system' and 'target'
fields.
* guix/packages.scm (bag->derivation, bag->cross-derivation): New
procedures.
(package-derivation, package-cross-derivation): Use 'bag->derivation'.
* tests/packages.scm ("search paths"): Initialize 'system' and 'target'
fields.
("package->bag", "package->bag, cross-compilation", "bag->derivation",
"bag->derivation, cross-compilation"): New tests.
| Ludovic Courtès |
2014-10-05 | build-system: Introduce "bags" as an intermediate representation....* guix/build-system.scm (<build-system>)[build, cross-build]: Remove.
[lower]: New field.
(<bag>): New record type.
(make-bag): New procedure.
* guix/packages.scm (bag-transitive-inputs, bag-transitive-build-inputs,
bag-transitive-host-inputs, bag-transitive-target-inputs,
package->bag): New procedures.
(package-derivation): Use it; use the bag, apply its build procedure,
etc.
(package-cross-derivation): Likewise.
* gnu/packages/bootstrap.scm (raw-build, make-raw-bag): New procedure.
(%bootstrap-guile): Use them.
* guix/build-system/trivial.scm (lower): New procedure.
(trivial-build, trivial-cross-build): Remove 'source' parameter. Pass
INPUTS as is.
(trivial-build-system): Adjust accordingly.
* guix/build-system/gnu.scm (%store, inputs-search-paths,
standard-search-paths, expand-inputs, standard-inputs): Remove.
(gnu-lower): New procedure.
(gnu-build): Remove 'source' and #:implicit-inputs? parameters.
Remove 'implicit-inputs' and 'implicit-search-paths' variables. Get
the source from INPUT-DRVS.
(gnu-cross-build): Likewise.
(standard-cross-packages): Remove call to 'standard-packages'.
(standard-cross-inputs, standard-cross-search-paths): Remove.
(gnu-build-system): Remove 'build' and 'cross-build'; add 'lower'.
* guix/build-system/cmake.scm (lower): New procedure.
(cmake-build): Remove 'source' and #:cmake parameters. Use INPUTS and
SEARCH-PATHS as is. Get the source from INPUTS.
* guix/build-system/perl.scm: Likewise.
* guix/build-system/python.scm: Likewise.
* guix/build-system/ruby.scm: Likewise.
* gnu/packages/cross-base.scm (cross-gcc): Change "cross-linux-headers"
to "linux-headers".
(cross-libc)[xlinux-headers]: Pass #:implicit-cross-inputs? #f.
Likewise. In 'propagated-inputs', change "cross-linux-headers" to
"linux-headers".
* guix/git-download.scm (git-fetch): Use 'standard-packages' instead of
'standard-inputs'.
* tests/builders.scm ("gnu-build-system"): Remove use of
'build-system-builder'.
("gnu-build"): Remove 'source' and #:implicit-inputs? arguments to
'gnu-build'.
* tests/packages.scm ("search paths"): Adjust to new build system API.
("package-cross-derivation, no cross builder"): Likewise.
* doc/guix.texi (Build Systems): Add paragraph on bags.
| Ludovic Courtès |
2014-10-05 | build-system: Remove irrelevant special case....* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Remove comment
about case where GUILE is a derivation path.
* guix/build-system/cmake.scm (cmake-build): Remove case where GUILE is
a derivation path.
* 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.
| Ludovic Courtès |
2014-10-04 | build-system/cmake: Add #:build-type parameter, default to "RelWithDebInfo"....* guix/build-system/cmake.scm (cmake-build): Add #:build-type. Pass it
in BUILDER.
* guix/build/cmake-build-system.scm (configure): Add #:build-type
parameter and honor it.
* doc/guix.texi (Build Systems): Document #:configure-flags and
#:build-type for CMake.
| Ludovic Courtès |
2014-09-28 | build: Add ruby build system....* guix/build-system/ruby.scm: New file.
* guix/build/ruby-build-system: New file.
* Makefile.am (MODULES): Add new files.
* doc/guix.texi (Build Systems): Document ruby-build-system.
| David Thompson |
2014-08-28 | gnu: Split (gnu packages base), adding (gnu packages commencement)....* gnu/packages/base.scm (gnu-make-boot0, diffutils-boot0,
findutils-boot0, %boot0-inputs, nix-system->gnu-triplet, boot-triplet,
binutils-boot0, gcc-boot0, perl-boot0, linux-libre-headers-boot0,
texinfo-boot0, %boot1-inputs, glibc-final-with-bootstrap-bash,
cross-gcc-wrapper, static-bash-for-glibc, glibc-final,
gcc-boot0-wrapped, %boot2-inputs, binutils-final, libstdc++,
gcc-final, ld-wrapper-boot3, %boot3-inputs, bash-final, %boot4-inputs,
guile-final, gnu-make-final, ld-wrapper, coreutils-final, grep-final,
%boot5-inputs, %final-inputs, canonical-package, gcc-toolchain,
gcc-toolchain-4.8, gcc-toolchain-4.9): Move to...
* gnu/packages/commencement.scm: ... here. New file.
* gnu-system.am (GNU_SYSTEM_MODULES): Add it.
* build-aux/check-final-inputs-self-contained.scm: Adjust accordingly.
* gnu/packages/cross-base.scm: Likewise.
* gnu/packages/make-bootstrap.scm: Likewise.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/gnu.scm (standard-packages, gnu-build,
gnu-cross-build): Likewise.
* guix/build-system/perl.scm (perl-build): Likewise.
* guix/build-system/python.scm (python-build): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Likewise.
* guix/download.scm (url-fetch): Likewise.
* guix/gexp.scm (default-guile): Likewise.
* guix/git-download.scm (git-fetch): Likewise.
* guix/monads.scm (run-with-store): Likewise.
* guix/packages.scm (default-guile): Likewise.
* guix/scripts/package.scm (guix-package): Likewise.
* guix/scripts/refresh.scm: Likewise.
* guix/svn-download.scm (svn-fetch): Likewise.
* tests/builders.scm (%bootstrap-inputs, %bootstrap-search-paths):
Likewise.
* tests/packages.scm ("GNU Make, bootstrap"): Likewise.
* tests/guix-package.sh: Likewise.
* gnu/services/base.scm: Use 'canonical-package' instead of xxx-final.
* gnu/services/xorg.scm: Likewise.
* gnu/system/vm.scm: Likewise.
* guix/scripts/pull.scm (guix-pull): Likewise.
| Ludovic Courtès |
2014-08-27 | build-system/perl: Add handling of flags for parallel build and testing....* guix/build-system/perl.scm (perl-build): Add support for variables
parallel-build? and parallel-tests?.
* guix/build-system/gnu.scm (gnu-build): Add a line break for clarity.
| Andreas Enge |
2014-07-21 | Add comments about global memoization....* guix/build-system/gnu.scm (standard-inputs): Add comment about
misplaced memoization.
* guix/packages.scm (cache): Likewise.
| Ludovic Courtès |
2014-06-07 | build-system/gnu: Add 'package-with-restricted-references'....* guix/build-system/gnu.scm (package-with-restricted-references): New
procedure.
| Ludovic Courtès |
2014-06-06 | build-system/gnu: Add #:allowed-references....* guix/build-system/gnu.scm (gnu-build): Add #:allowed-references.
[canonicalize-reference]: New procedure.
Pass #:allowed-references to 'build-expression->derivation'.
(gnu-cross-build): Likewise.
| Ludovic Courtès |
2013-12-09 | build-system/perl: Honour phases argument in perl build system....* guix/build-system/perl.scm (perl-build): Propagate phases argument to
builder.
| Andreas Enge |
2013-12-04 | build-system/gnu: Fix reference to Gettext in 'dist-package'....* guix/build-system/gnu.scm (dist-package): Change 'gettext' to
'gnu-gettext'.
| Ludovic Courtès |
2013-12-04 | derivations: Use more keyword parameters for 'build-expression->derivation'....* guix/derivations.scm (build-expression->derivation): Turn 'system' and
'inputs' into keyword parameters.
Adjust callers accordingly.
* gnu/system/linux.scm, gnu/system/vm.scm, guix/build-system/cmake.scm,
guix/build-system/gnu.scm, guix/build-system/perl.scm,
guix/build-system/python.scm, guix/build-system/trivial.scm,
guix/download.scm, guix/packages.scm, guix/profiles.scm,
guix/scripts/pull.scm, tests/derivations.scm, tests/guix-build.sh,
tests/monads.scm, tests/store.scm, tests/union.scm: Adjust users of
'build-expression->derivation' and 'derivation-expression'
accordingly.
* doc/guix.texi (Derivations): Adjust 'build-expression->derivation'
documentation accordingly.
(The Store Monad): Likewise for 'derivation-expression'.
| Ludovic Courtès |
2013-11-28 | build-system/cmake: Build out of source tree by default....* guix/build-system/cmake.scm (cmake-build): Change 'out-of-source?' to
default to #t.
* guix/build/cmake-build-system.scm (configure): Add 'out-of-source?'
keyword parameter and honor it.
| Ludovic Courtès |
2013-11-20 | Merge branch 'master' into core-updates...Conflicts:
guix/packages.scm
| Ludovic Courtès |
2013-11-20 | build-system/python: Add #:test-target parameter....* guix/build-system/python.scm (python-build): Add #:test-target
parameter. Reported by Eric Bavier <ericbavier@gmail.com>.
| Ludovic Courtès |
2013-11-01 | Merge branch 'master' into core-updates | Ludovic Courtès |
2013-10-29 | build-system/{cmake,perl}: Don't use (guix build gnu-build-system)....Previously references to '%standard-phases' in builder-side code would
refer to the wrong one.
* guix/build-system/cmake.scm (cmake-build): Remove (guix build
gnu-build-system) from the default MODULES value.
* guix/build-system/perl.scm (perl-build): Likewise.
| Ludovic Courtès |
2013-10-12 | build-system/perl: Lazily resolve (gnu packages perl)....* guix/build-system/perl.scm (default-perl): New procedure.
(perl-build): Use it.
| Ludovic Courtès |
2013-10-10 | build-system/{gnu,cmake}: Remove #:patches and #:patch-flags parameters....* guix/build/gnu-build-system.scm (patch): Remove.
(%standard-phases): Remove 'patch'.
* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Remove
#:patches and #:patch-flags parameters.
* guix/build-system/cmake.scm (cmake-build): Likewise.
* guix/build-system/python.scm (package-with-explicit-python): Update
comment.
| Ludovic Courtès |
2013-09-27 | build-system/trivial: Take the 'source' field into account....* guix/build-system/trivial.scm (trivial-build): When SOURCE is true,
add it to INPUTS.
(trivial-cross-build): Likewise.
* tests/packages.scm ("trivial with source"): New test.
| Ludovic Courtès |
2013-09-18 | derivations: 'derivation' and related procedures return a single value....* guix/derivations.scm (derivation->output-path,
derivation->output-paths): New procedures.
(derivation-path->output-path): Use 'derivation->output-path'.
(derivation-path->output-paths): Use 'derivation->output-paths'.
(derivation): Accept 'derivation?' objects as inputs. Return a single
value.
(build-derivations): New procedure.
(compiled-modules): Use 'derivation->output-paths'.
(build-expression->derivation)[source-path]: Add case for when the
input matches 'derivation?'.
[prologue]: Accept 'derivation?' objects in INPUTS.
[mod-dir, go-dir]: Use 'derivation->output-path'.
* guix/download.scm (url-fetch): Adjust to the single-value return.
* guix/packages.scm (package-output): Use 'derivation->output-path'.
* guix/scripts/build.scm (guix-build): When the argument is
'derivation-path?', pass it through 'read-derivation'.
Use 'derivation-file-name' to print out the .drv file names, and to
register them. Use 'derivation->output-path' instead of
'derivation-path->output-path'.
* guix/scripts/package.scm (roll-back): Adjust to the single-value
return.
(guix-package): Use 'derivation->output-path'.
* guix/ui.scm (show-what-to-build): Adjust to deal with 'derivation?'
objects instead of .drv file names.
* gnu/system/grub.scm (grub-configuration-file): Use
'derivation->output-path' instead of 'derivation-path->output-path'.
* gnu/system/vm.scm (qemu-image, system-qemu-image): Likewise.
* tests/builders.scm, tests/derivations.scm, tests/packages.scm,
tests/store.scm, tests/union.scm: Adjust to the new calling
convention.
* doc/guix.texi (Defining Packages, The Store, Derivations): Adjust
accordingly.
| Ludovic Courtès |
2013-09-14 | Merge branch 'python' | Andreas Enge |
2013-09-10 | guix: python: Do not import %standard-phases from gnu-build-system....* guix/build-system/python.scm (python-build): Drop module gnu-build-system.
Thanks to Ludovic Courtès <ludo@gnu.org>.
| Andreas Enge |
2013-09-10 | guix: python: Add parameter #:phases to build system....* guix/build-system/python.scm (python-build): Use parameter #:phases.
| Andreas Enge |
2013-09-08 | guix: python: Add package-with-python2, a procedure rewriting a package... to compile with Python 2 instead of the default Python 3.
* guix/build-system/python.scm (default-python2, package-with-explicit-python,
package-with-python2): New procedures.
* guix/build-system/python.scm (python2-pytz, python2-babel): Use
package-with-python2.
| Andreas Enge |
2013-09-04 | guix: python: Switch to python-wrapper as the default version for the python... build system (switches to Python 3) and compute python-version instead of
passing it as a parameter.
* guix/build-system/python.scm (default-python): Switch to python-wrapper.
* guix/build-system/python.scm (python-build): Drop parameter #:python-version.
* guix/build/python-build-system.scm (wrap): Compute python version from input.
| Andreas Enge |
2013-09-03 | build-system/cmake: Fix typo....* guix/build-system/cmake.scm (default-cmake): Add missing quote.
| Ludovic Courtès |
2013-09-03 | build-system/gnu: Delay resolution of (@ (gnu packages cmake) cmake)....* guix/build-system/cmake.scm (default-cmake): New procedure.
(cmake-build): Use it.
| Ludovic Courtès |
2013-08-24 | build-system/gnu: Add `dist-package'....* guix/build/gnu-dist.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/build-system/gnu.scm (%default-modules): New variable.
(gnu-build): Use it.
(dist-package): New procedure.
| Ludovic Courtès |
2013-07-04 | build-system/gnu: Remove the "debug" output when `strip-binaries?' is #f....* guix/build-system/gnu.scm (gnu-build, gnu-cross-build): Delete "debug"
from OUTPUTS when STRIP-BINARIES? is false.
* gnu/packages/cross-base.scm (cross-libc): Leave `outputs' unchanged.
This reverts commit a4627d4.
| Ludovic Courtès |
2013-06-25 | build-system/gnu: `package-with-explicit-inputs' skips non-GBS packages....* guix/build-system/gnu.scm (package-with-explicit-inputs)[rewritten-input]:
Leave P unchanged if its build system is not GNU-BUILD-SYSTEM.
| Ludovic Courtès |
2013-06-25 | build-system/gnu: Augment `package-with-explicit-inputs' for cross builds....* guix/build-system/gnu.scm (package-with-explicit-inputs): Add
`native-inputs' keyword parameter. Allow INPUTS and NATIVE-INPUTS to
be thunks.
| Ludovic Courtès |
2013-06-25 | build-system/trivial: Don't bind `%target' in the builder....* guix/build-system/trivial.scm (trivial-cross-build): Don't bind
`%target' here since this causes problem when BUILDER
contains (use-modules ...) clauses, and can be achieved differently
anyway.
| Ludovic Courtès |