summaryrefslogtreecommitdiff
path: root/guix/build-system
Commit message (Collapse)AuthorAge
...
| * guix: python: Do not import %standard-phases from gnu-build-system.Andreas Enge2013-09-10
| | | | | | | | | | * guix/build-system/python.scm (python-build): Drop module gnu-build-system. Thanks to Ludovic Courtès <ludo@gnu.org>.
| * guix: python: Add parameter #:phases to build system.Andreas Enge2013-09-10
| | | | | | | | * guix/build-system/python.scm (python-build): Use parameter #:phases.
| * guix: python: Add package-with-python2, a procedure rewriting a packageAndreas Enge2013-09-08
| | | | | | | | | | | | | | | | | | 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.
| * guix: python: Switch to python-wrapper as the default version for the pythonAndreas Enge2013-09-04
| | | | | | | | | | | | | | | | | | 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.
* | build-system/cmake: Fix typo.Ludovic Courtès2013-09-03
| | | | | | | | * guix/build-system/cmake.scm (default-cmake): Add missing quote.
* | build-system/gnu: Delay resolution of (@ (gnu packages cmake) cmake).Ludovic Courtès2013-09-03
|/ | | | | * guix/build-system/cmake.scm (default-cmake): New procedure. (cmake-build): Use it.
* build-system/gnu: Add `dist-package'.Ludovic Courtès2013-08-24
| | | | | | | | * 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.
* build-system/gnu: Remove the "debug" output when `strip-binaries?' is #f.Ludovic Courtès2013-07-04
| | | | | | | * 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.
* build-system/gnu: `package-with-explicit-inputs' skips non-GBS packages.Ludovic Courtès2013-06-25
| | | | | * guix/build-system/gnu.scm (package-with-explicit-inputs)[rewritten-input]: Leave P unchanged if its build system is not GNU-BUILD-SYSTEM.
* build-system/gnu: Augment `package-with-explicit-inputs' for cross builds.Ludovic Courtès2013-06-25
| | | | | | * guix/build-system/gnu.scm (package-with-explicit-inputs): Add `native-inputs' keyword parameter. Allow INPUTS and NATIVE-INPUTS to be thunks.
* build-system/trivial: Don't bind `%target' in the builder.Ludovic Courtès2013-06-25
| | | | | | | * 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.
* build-system/gnu: Disable test suite when cross building.Ludovic Courtès2013-06-24
| | | | | * guix/build-system/gnu.scm (gnu-cross-build): Change #:tests? to default to #f.
* build-system/gnu: Unify with (guix build-system gnu-cross-build).Ludovic Courtès2013-06-21
| | | | | | | | | | | | | | | | | | | * guix/build/gnu-build-system.scm (set-paths): Add `native-inputs' and `native-search-paths' keyword parameters. Honor them. (configure): Add `target' and `native-inputs' keyword parameters. Look for Bash in NATIVE-INPUTS or INPUTS. Pass `--host' when TARGET is true. (strip): Add `strip-command' keyword parameter. Use it. * guix/build/gnu-cross-build.scm: Remove. * Makefile.am (MODULES): Adjust accordingly. * gnu/packages/acl.scm, gnu/packages/attr.scm, gnu/packages/base.scm, gnu/packages/bash.scm, gnu/packages/gawk.scm, gnu/packages/gettext.scm, gnu/packages/guile.scm, gnu/packages/libffi.scm, gnu/packages/libsigsegv.scm, gnu/packages/linux.scm, gnu/packages/ncurses.scm, gnu/packages/readline.scm, guix/build-system/gnu.scm: Replace `%standard-cross-phases' by `%standard-phases'. Remove references to (guix build gnu-cross-build).
* build-system/trivial: Fix introduction of `%target' when cross-building.Ludovic Courtès2013-06-15
| | | | | * guix/build-system/trivial.scm (trivial-cross-build): Wrap BUILDER in a `let' rather than in `begin'.
* gnu: Fix `static-package' arguments overriding.Ludovic Courtès2013-06-05
| | | | | | * guix/build-system/gnu.scm (static-package): Call `package-arguments' from within the `arguments' field, so it see the right (%current-target-system).
* build-system/python: Avoid circular dependency.Ludovic Courtès2013-05-30
| | | | | | | | 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.
* build-system/gnu: Fix typo in `gnu-cross-build'.Ludovic Courtès2013-05-27
| | | | | * guix/build-system/gnu.scm (gnu-cross-build)[builder]: When IMPLICIT-TARGET-INPUTS is #f, default to '().
* build-system/gnu: Make sure build input variables contain pairs.Ludovic Courtès2013-05-25
| | | | | | * guix/build-system/gnu.scm (gnu-cross-build)[builder]: Make sure %build-host-inputs and %build-target-inputs always contain pairs, not lists.
* build-system/trivial: Implement the cross-build protocol.Ludovic Courtès2013-05-24
| | | | | | | * guix/build-system/trivial.scm (guile-for-build): New procedure. (trivial-build): Use it. (trivial-cross-build): New procedure. (trivial-build-system): Use it.
* build-system/gnu: Implement cross build.Ludovic Courtès2013-05-24
| | | | | | | | | | | | | | * 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.
* Add 'python-build-system'.Nikita Karetnikov2013-05-08
| | | | | * guix/build-system/python.scm, guix/build/python-build-system.scm: New files. * Makefile.am (MODULES): Add them.
* build-system/{perl,cmake}: Keep the standard search paths of gnu-build-system.Ludovic Courtès2013-04-16
| | | | | | | | | | | Reported by Andreas Enge <andreas@enge.fr>. * guix/build-system/gnu.scm (standard-search-paths): New procedure. (gnu-build): Use it. * guix/build-system/perl.scm (perl-build): Append (standard-search-paths) to the search paths of PERL. * guix/build-system/cmake.scm (cmake-build): Append (standard-search-paths) to SEARCH-PATHS.
* build-system/gnu: Fix search path computation with implicit inputs.Ludovic Courtès2013-04-09
| | | | | | | | | Reported by Andreas Enge <andreas@enge.fr>. * guix/build-system/gnu.scm (standard-packages): New procedure. (standard-inputs): Use it instead of resolving things locally. (gnu-build)[implicit-search-paths]: Map over (standard-packages), not over STANDARD-INPUTS.
* packages: Add `native-search-paths' field and honor it.Ludovic Courtès2013-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/packages.scm (<search-path-specification>): New record type. (search-path-specification->sexp): New procedure. (<package>)[native-search-paths]: New field. (package-derivation): Accumulate the search paths, and pass them as #:search-paths toe BUILDER. * guix/build-system/gnu.scm (gnu-build): Add #:search-paths. Compute `implicit-search-paths'. Pass #:search-paths in BUILDER. * guix/build-system/perl.scm (perl-build): Add #:search-paths, pass it to BUILDER with the search paths of PERL. * guix/build-system/cmake.scm (cmake-build): Add #:search-paths, pass it to BUILDER. * guix/build-system/trivial.scm (trivial-build): Add #:search-paths, ignore it. * guix/build/gnu-build-system.scm (set-paths): Add #:search-paths. Remove explicit settings of CPATH, LIBRARY_PATH, and PKG_CONFIG_PATH. Instead, walk SEARCH-PATHS and call `set-path-environment-variable' for them. * guix/build/perl-build-system.scm (perl-build): Remove PERL5LIB setting. * tests/packages.scm ("search paths"): New test. * gnu/packages/bootstrap.scm (%bootstrap-guile)[raw]: Add #:search-paths. (%bootstrap-gcc): Add `native-search-paths' field. * gnu/packages/perl.scm (perl): Likewise. * gnu/packages/pkg-config.scm (pkg-config): Likewise. * gnu/packages/glib.scm (intltool): Remove `arguments'. * gnu/packages/avahi.scm (avahi): Remove #:phases.
* build-system/gnu: Remove #:path-exclusions parameter.Ludovic Courtès2013-03-30
| | | | | | | | | * guix/build/gnu-build-system.scm (set-paths): Remove `path-exclusions' parameter. Replace `relevant-input-directories' by `input-directories'. * guix/build-system/gnu.scm (gnu-build): Remove `path-exclusions' parameter; don't pass it in BUILDER. * guix/build-system/cmake.scm (cmake-build): Likewise.
* Add (guix build-system cmake).Cyril Roelandt2013-03-28
| | | | | * guix/build/cmake-build-system.scm, guix/build-system/cmake.scm: New files. * Makefile.am (MODULES): Add them.
* Add (guix build-system perl).Ludovic Courtès2013-03-04
| | | | | | * guix/build-system/perl.scm, guix/build/perl-build-system.scm: New files. * Makefile.am (MODULES): Add them. * guix/build-system/gnu.scm (standard-inputs): Make public.
* build-system/gnu: Make the strip behavior of `static-package' configurable.Ludovic Courtès2013-02-14
| | | | | * guix/build-system/gnu.scm (static-package): Add #:strip-all? keyword parameter.
* build-system/gnu: Clarify docstring of `package-with-extra-configure-variable'.Ludovic Courtès2013-02-08
| | | | | * guix/build-system/gnu.scm (package-with-extra-configure-variable): Add "recursively" in the docstring.
* packages: Mark the `arguments' field of <package> as thunked.Ludovic Courtès2013-01-23
| | | | | | | | | | | | | | | | | | | | | | | | | | * guix/packages.scm (<package>): Mark `arguments' as thunked. (package-derivation): Adjust accordingly. Parameterize %CURRENT-SYSTEM to SYSTEM, so that arguments can refer to it. * guix/build-system/gnu.scm (package-with-explicit-inputs): Expect `package-arguments' to always return a list, and return a list. (package-with-extra-configure-variable): Likewise. (static-package): Likewise. * gnu/packages/base.scm (patch, findutils, gcc-4.7, binutils-boot0, gcc-boot0, glibc-final-with-bootstrap-bash, cross-gcc-wrapper, static-bash-for-glibc, binutils-final, gcc-final): Change `arguments' from a lambda to a list, and use (%current-system) as needed. (nix-system->gnu-triplet, boot-triplet): Have the first argument default to (%current-system). * gnu/packages/bootstrap.scm (glibc-dynamic-linker): Have `system' default to (%current-system). (%bootstrap-gcc): Change `arguments' to a list. * gnu/packages/gawk.scm (gawk): Likewise. * gnu/packages/m4.scm (m4): Likewise. * gnu/packages/make-bootstrap.scm (%glibc-for-bootstrap): Likewise, and expect `package-arguments' to return a list. (%static-inputs, %gcc-static, tarball-package): Likewise. * gnu/packages/ncurses.scm (ncurses): Likewise.
* distro: Change the module name space to (gnu ...).Ludovic Courtès2013-01-18
| | | | | | | | | | * distro: Rename to... * gnu: ... this. Update module names accordingly. * Makefile.am: Adjust accordingly. * po/POTFILES.in: Likewise. * distro.scm: Search for files under /gnu/packages instead of /distro/packages. * gnu/packages/base.scm (ld-wrapper-boot3): Likewise.
* build-system/gnu: Allow the `source' argument to be #f.Ludovic Courtès2013-01-15
| | | | * guix/build-system/gnu.scm (gnu-build): Allow SOURCE to be #f.
* Merge branch 'master' into core-updatesLudovic Courtès2013-01-06
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: build-aux/download.scm distro/packages/autotools.scm distro/packages/base.scm distro/packages/bootstrap.scm distro/packages/lsh.scm distro/packages/make-bootstrap.scm distro/packages/ncurses.scm distro/packages/perl.scm tests/derivations.scm tests/union.scm
| * Update license headers.Ludovic Courtès2013-01-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change all license headers, except guix/build/* and ld-wrapper.scm, with this code: (use-modules (guix build utils) (srfi srfi-1)) (fluid-set! %default-port-encoding "UTF-8") (substitute* (remove (lambda (f) (or (string-contains f ".tar.") (string-contains f ".git/") (string-contains f ".so") (string-suffix? ".o" f) (string-suffix? ".a" f) (string-suffix? ".go" f) (string-suffix? ".pdf" f) (string-suffix? ".png" f) (string-suffix? ".info" f) (equal? (basename f) "guix-daemon") (equal? (basename f) "nix-setuid-helper") (string-contains f "nix-upstream/") (string-contains f "distro/packages/bootstrap/"))) (find-files "." "\\.[a-z]+$")) (("^([[:graph:]]+) This file is part of Guix." _ comment-start) (string-append comment-start " This file is part of GNU Guix.")) (("^([[:graph:]]+) Guix --- Nix package management.*" _ comment-start) (string-append comment-start " GNU Guix --- Functional package management for GNU\n")) (("^([[:graph:]]+) Guix is " _ comment-start) (string-append comment-start " GNU Guix is ")) (("^([[:graph:]]+) along with Guix." _ comment-start) (string-append comment-start " along with GNU Guix.")) (("^([[:graph:]]+) Copyright \\(C\\)" _ comment-start) (string-append comment-start " Copyright ©"))) Change headers using C-style comments manually.
* | build-system/gnu: Add `static-package'.Ludovic Courtès2013-01-01
| | | | | | | | | | * distro/packages/make-bootstrap.scm (static-package): Move to... * guix/build-system/gnu.scm (static-package): ... here. New procedure.
* | build-system/gnu: enable test-target during the check phaseAndreas Enge2012-12-30
|/ | | | * guix/build-system/gnu.scm: add variable test-target
* build-system/gnu: Add `static-libgcc-package' & supporting procedure.Ludovic Courtès2012-11-05
| | | | | * guix/build-system/gnu.scm (package-with-extra-configure-variable, static-libgcc-package): New procedures.
* build-system/gnu: Distinguish between imported modules and used modules.Ludovic Courtès2012-10-31
| | | | | * guix/build-system/gnu.scm (gnu-build): Add the `imported-modules' keyword parameter. Pass it to `build-expression->derivation'.
* build-system/gnu: Pass the system type to the builder.Ludovic Courtès2012-10-17
| | | | | * guix/build-system/gnu.scm (gnu-build)[builder]: Pass SYSTEM to `gnu-build' as a keyword argument.
* build-system/{gnu,trivial-build}: Fix handling of #:guile argument.Ludovic Courtès2012-10-07
| | | | | | | | * guix/build-system/gnu.scm (gnu-build)[guile-for-build]: Check whether GUILE matches string? before checking whether it matches derivation-path?. * guix/build-system/trivial.scm (trivial-build)[guile-for-build]: Likewise.
* build-system/{gnu,trivial}: Add a `#:guile' keyword parameter.Ludovic Courtès2012-10-06
| | | | | | | | | | | * guix/build-system/gnu.scm (package-with-explicit-inputs): New `guile' keyword parameter. Add it to P's arguments, and pass it in recursive calls. (gnu-build): New `guile' keyword parameter; new `guile-for-build' variable. Pass it as the `#:guile-for-build' parameter of `build-expression->derivation'. * guix/build-system/trivial.scm (trivial-build): Likewise.
* distro: Rename (distro ...) to (distro packages ...).Ludovic Courtès2012-09-26
| | | | | | | | | | * distro/base.scm, distro/ld-wrapper.scm: Move to `distro/packages'. Adjust LD-WRAPPER-BOOT3 input file name accordingly. * Makefile.am (MODULES): Adjust accordingly. * distro.scm (%distro-module-directory): Change to "/distro/packages". * guix/build-system/gnu.scm (standard-inputs): Change module name to (distro packages base). * tests/packages.scm (test-packages): Likewise.
* Add (guix build-system trivial).Ludovic Courtès2012-09-10
| | | | | | | | * guix/build-system/trivial.scm: New file. * Makefile.am (MODULES): Add it. * tests/packages.scm ("trivial"): New test. * guix/packages.scm (package-derivation): Allow SOURCE to be #f.
* build-system/gnu: Relax location handling in `package-with-explicit-inputs'.Ludovic Courtès2012-09-05
| | | | | * guix/build-system/gnu.scm (package-with-explicit-inputs): Convert LOC when it is a source-property list.
* distro: Bootstrap standard inputs from Nixpkgs.Ludovic Courtès2012-09-02
| | | | | | | | | | | | | | | | | | | This is a first step towards bootstrapping from a set of pre-built, statically-linked binaries. * guix/build-system/gnu.scm (package-with-explicit-inputs, standard-inputs): New procedure. (%store): New variable. (%standard-inputs): Remove. (gnu-build): New `implicit-inputs?' keyword parameter. Use it to choose whether to use `(standard-inputs SYSTEM)' or the empty list. * distro/base.scm (guile-2.0): Remove dependency on XZ, which is now implicit. (%bootstrap-inputs, gcc-boot0, binutils-boot0, linux-headers-boot0, %boot1-inputs, glibc-final, %boot2-inputs, m4-boot2, gmp-boot2, mpfr-boot2, mpc-boot2, %boot3-inputs, gcc-final, %boot4-inputs, %final-inputs): New variables.
* build-system/gnu: Add `path-exclusions' parameter.Ludovic Courtès2012-09-01
| | | | | | | | | * guix/build/gnu-build-system.scm (set-paths): Add new `path-exclusions' parameter; honor it. * guix/build-system/gnu.scm (gnu-build): New `path-exclusions' keyword parameter; pass it to BUILDER. * distro/base.scm (gcc-4.7): Exclude "libc" from $LIBRARY_PATH.
* build-system/gnu: Add a `strip' phase.Ludovic Courtès2012-08-31
| | | | | | | | | * guix/build/gnu-build-system.scm (strip): New procedure. (%standard-phases): Add it. * guix/build-system/gnu.scm (gnu-build): New `strip-binaries?', `strip-flags', and `strip-directories' keyword parameters. Pass them to BUILDER.
* build-system/gnu: Add `out-of-source?' keyword parameter.Ludovic Courtès2012-08-23
| | | | | | | * guix/build/gnu-build-system.scm (configure): Add an `out-of-source?' keyword parameter; build out-of-source-tree when #t. * guix/build-system/gnu.scm (gnu-build): Add `out-of-source?' keyword parameter. Pass it in BUILDER.
* build-system/gnu: Add a `patch-shebangs' phase.Ludovic Courtès2012-08-19
| | | | | | | | * guix/build/gnu-build-system.scm (patch-shebangs): New procedure. (%standard-phases): Add it. * guix/build-system/gnu.scm (gnu-build): New `patch-shebangs?' keyword parameter. Pass it to the builder's `gnu-build'.
* build-system/gnu: Add dependency on GNU Findutils.Ludovic Courtès2012-07-07
| | | | * guix/build-system/gnu.scm (%standard-inputs): Add "findutils".