Commit graph

338 commits

Author SHA1 Message Date
Ludovic Courtès
7d873f194c
build-system: Rewrite using gexps.
* guix/packages.scm (expand-input): Remove 'store', 'system', and
  'cross-system' parameters; add #:native?.  Rewrite to return
  name/gexp-input tuples.
  (bag->derivation): Adjust accordingly.  Lower (bag-build bag).
  (bag->cross-derivation): Ditto.  Instead of #:native-drvs and
  #:target-drvs, pass #:build-inputs, #:host-inputs, and #:target-inputs.
  (%derivation-cache): Remove.
* gnu/packages/bootstrap.scm (raw-build): Turn into a monadic procedure.
* gnu/packages/commencement.scm (glibc-final)[arguments]: Use
  'gexp-input' for the #:allowed-references argument.
* guix/build-system/cmake.scm (cmake-build): Remove 'store' parameter.
  Switch to the use of gexps and 'gexp->derivation'.
  (lower): Remove #:source from 'private-keywords'.
* guix/build-system/glib-or-gtk.scm (glib-or-gtk-build, lower):
  Likewise.
* guix/build-system/font.scm (font-build): Likewise.
* guix/build-system/gnu.scm (gnu-build): Likewise, and remove
  'canonicalize-reference'.
  (gnu-cross-build): Likewise, and expect #:build-inputs, #:host-inputs,
  and #:target-inputs instead of #:native-drvs and #:target-drvs.
  (lower): Likewise.
* guix/build-system/perl.scm (perl-build, lower): Likewise.
* guix/build-system/python.scm (python-build, lower): Likewise.
* guix/build-system/ruby.scm (ruby-build, lower): Likewise.
* guix/build-system/waf.scm (waf-build, lower): Likewise.
* guix/build-system/trivial.scm (guile-for-build): Remove.
  (trivial-build): Remove 'store' parameter, change to gexps.
  (trivial-cross-build): Ditto, and change to #:build-inputs & co.
* guix/build-system/cargo.scm (cargo-build): Change to 'gexp->derivation'.
* guix/build-system/copy.scm (copy-build): Likewise.
* guix/build-system/dune.scm (dune-build): Likewise.
* guix/build-system/guile.scm (guile-build, guile-cross-build):
  Likewise.
* guix/build-system/meson.scm (meson-build): Likewise.
* guix/build-system/ocaml.scm (ocaml-build): Likewise.
* guix/build-system/scons.scm (scons-build): Likewise.
* guix/build-system/texlive.scm (texlive-build): Likewise.
* guix/build-system/android-ndk.scm (android-ndk-build): Likewise.
* guix/build-system/ant.scm (ant-build): Likewise.
* guix/build-system/asdf.scm (asdf-build/source, asdf-build): Likewise.
* guix/build-system/chicken.scm (chicken-build): Likewise.
* guix/build-system/clojure.scm (clojure-build): Likewise.
(source->output-path, maybe-guile->guile): Remove.
* guix/build-system/dub.scm (dub-build): Likewise.
* guix/build-system/emacs.scm (emacs-build): Likewise.
* guix/build-system/go.scm (go-build): Likewise.
* guix/build-system/haskell.scm (haskell-build): Likewise.
* guix/build-system/julia.scm (julia-build): Likewise.
* guix/build-system/linux-module.scm (linux-module-build)
(linux-module-build-cross): Likewise.
* guix/build-system/maven.scm (maven-build): Likewise.
* guix/build-system/minify.scm (minify-build): Likewise.
* guix/build-system/node.scm (node-build): Likewise.
* guix/build-system/qt.scm (qt-build, qt-cross-build): Likewise.
* guix/build-system/r.scm (r-build): Likewise.
* guix/build-system/rakudo.scm (rakudo-build): Likewise.
* guix/build-system/renpy.scm (renpy-build): Likewise.
* tests/builders.scm ("gnu-build"): Call 'store-lower' on 'gnu-build'.
  Pass #:source parameter.
* tests/packages.scm ("search paths"): Use 'abort-to-prompt' instead of
  a normal return from the 'build' method.
  ("package->bag, sensitivity to %current-target-system"): Change 'build'
  to match the new build system signature.

squash! build-system: Rewrite using gexps.

squash! build-system: Rewrite using gexps.
2021-03-30 22:48:43 +02:00
Efraim Flashner
f08b070019
gnu: findutils-boot0: Fix test suite on some systems.
This is a follow-up to 3a0c7e7d1e.

* gnu/packages/commencement.scm (findutils-boot0)[arguments]: Only add
custom 'skip-fnmatch-test phase on x86_64-linux and i686-linux.
2021-03-24 20:57:29 +02:00
Efraim Flashner
0e2b817732
gnu: glibc: Absorb powerpc patch.
* gnu/packages/base.scm (glibc)[source]: Add patch.
[arguments]: Remove 'apply-patch phase.
[native-inputs]: Remove patch file.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash,
glibc-final)[native-inputs]: Remove patch file.
2021-03-24 20:50:44 +02:00
Efraim Flashner
2aab587f84
Merge remote-tracking branch 'origin/master' into core-updates 2021-03-24 20:50:44 +02:00
Chris Marusich
be4b1cf53b
gnu: binutils-final: Support more Power architectures.
* gnu/packages/commencement.scm (binutils-final)[arguments]: When checking if
the system is a Power architecture, instead of hard-coding "powerpc-linux",
use the target-powerpc? procedure so it works on more Power architectures.
[inputs]: Likewise.
2021-03-23 23:19:56 -07:00
Efraim Flashner
060478c32c
gnu: binutils-final: Provide bash for binary on powerpc-linux.
* gnu/packages/commencement.scm (binutils-final)[arguments]: On
powerpc-linux allow a reference to static-bash-for-glibc.
[inputs]: On powerpc-linux add static-bash-for-glibc.
2021-03-23 23:19:56 -07:00
Chris Marusich
b2135b5d57
gnu: gcc-boot0: Enable 128-bit long double for POWER9.
* gnu/packages/commencement.scm (gcc-boot0) [#:configure-flags]: Add
--with-long-double-128 when the boot triplet is "powerpc64le-guix-linux-gnu",
instead of "powerpc64le-linux-gnu", which is incorrect.  The actual triplet
used during bootstrapping is "powerpc64le-guix-linux-gnu".
2021-03-23 23:19:56 -07:00
Leo Le Bouter
6e98e9ca92
gnu: glibc: Fix ldd path on powerpc*.
This should avoid some problems, such as "not a dynamic executable" errors.

* gnu/packages/patches/glibc-ldd-powerpc.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/base.scm: (glibc)[native-inputs]: Add it.
[arguments]: When building for powerpc* apply it.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash,
glibc-final)[native-inputs]: Add patch conditionally.

This patch has been adjusted to apply to master.

Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2021-03-23 23:19:55 -07:00
Efraim Flashner
d4d132bc84
gnu: glibc-final-with-bootstrap-bash-boot0: Don't include debug output.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash-boot0)
[outputs]: Remove debug from inherited outputs.
2021-03-10 21:51:39 +02:00
Efraim Flashner
282a159a4b
gnu: gcc-boot0: Don't include debug output.
* gnu/packages/commencement.scm (gcc-boot0)[outputs]: Remove debug
from inherited outputs.
2021-03-10 21:51:39 +02:00
Efraim Flashner
870cca7260
gnu: coreutils-boot0: Don't include debug output.
* gnu/packages/commencement.scm (coreutils-boot0)[outputs]: Remove debug
from inherited outputs.
2021-03-10 21:51:36 +02:00
Efraim Flashner
21ec74fc14
gnu: gnu-make-boot0: Don't include debug output.
* gnu/packages/commencement.scm (gnu-make-boot0)[outputs]: Remove debug
from inherited outputs.
2021-03-10 21:43:25 +02:00
Efraim Flashner
c0ec128b8b
gnu: findutils-boot0: Skip tests on armhf, aarch64.
* gnu/packages/commencement.scm (findutils-boot0)[arguments]: Skip tests
on armhf-linux, aarch64-linux.
2021-02-10 10:17:42 +02:00
Maxim Cournoyer
cb72f9a773
gnu: python: Replace PYTHONPATH by GUIX_PYTHONPATH.
Using PYTHONPATH as a mean to discover the Python packages had the following
issues:

        1. It is not versioned, so different versions of Python would clash if
        installed in a shared profile.

        2. It would interfere with the host Python site on foreign
        distributions, sometimes preventing a a user to login their GDM
        session (!).

        3. It would take precedence over user installed Python packages
        installed through pip.

        4. It would leak into Python virtualenvs, which are supposed to create
        isolated Python environments.

This changes fixes the above issues by making use of a sitecustomize.py
module.  The newly introduced GUIX_PYTHONPATH environment variable is read
from the environment, filtered for the current Python version of the
interpreter, and spliced in 'sys.path' just before Python's own site location,
which provides the expected behavior.

* gnu/packages/aux-files/python/sitecustomize.py: New file.
* Makefile.am: Register it.
* gnu/packages/python.scm (customize-site)
(guix-pythonpath-search-path): New procedures.
(python-2.7)[phases]{install-sitecustomize.py}: New phase.
[native-inputs]{sitecustomize.py}: New input.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
(python-3.9)[native-search-paths]: Likewise.
[phases]{install-sitecustomize}: Override with correct version.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
* gnu/packages/commencement.scm (python-boot0):
[phases]{install-sitecustomize}: Likewise.
[native-inputs]{sitecustomize.py}: New input.
[native-search-paths]: Replace PYTHONPATH with GUIX_PYTHONPATH.
* guix/build/python-build-system.scm (site-packages): Do not add a trailing
'/'.

squash! gnu: python: Replace PYTHONPATH by GUIX_PYTHONPATH.
2021-02-01 11:53:42 -05:00
Efraim Flashner
6688d94ddb
gnu: %boot-tcc-inputs: Use gash-utils.
* gnu/packages/commencement.scm (%boot-tcc-inputs): Remove
diffutils-mesboot. Add gash-utils-boot.
(diffutils-mesboot): Remove variable.
2021-01-24 15:55:38 +02:00
Ludovic Courtès
3a0c7e7d1e
gnu: findutils: Update to 4.8.0.
* gnu/packages/base.scm (findutils): Update to 4.8.0.
[source](patches): Remove "findutils-test-rwlock-threads.patch".
* gnu/packages/patches/findutils-test-rwlock-threads.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/commencement.scm (findutils-boot0)[arguments]: Add
'skip-fnmatch-test' phase.
2021-01-15 14:06:13 +01:00
Christopher Baines
ff01206345
Merge remote-tracking branch 'origin/master' into core-updates 2020-11-29 17:34:18 +00:00
dftxbs3e
4a914de930
gnu: gcc-boot0, cross-base: Enable 128-bit long double for POWER9.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Add
"--with-long-double-128" when TARGET is "powerpc64le-linux-gnu".
* gnu/packages/commencement.scm (gcc-boot0): Likewise for (boot-triplet).

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-11-26 23:39:16 +01:00
Ludovic Courtès
112982526f
gnu: base, commencement: Remove trailing #t from build phases.
* gnu/packages/base.scm (grep, tar, findutils)
(coreutils, coreutils-8.30, gnu-make, gnu-make-4.2)
(binutils-gold, glibc, make-glibc-locales):
(glibc/hurd-headers, tzdata): Remove trailing #t in build phases.
* gnu/packages/commencement.scm (bootar)
(gash-boot, gash-utils-boot, mes-boot):
(gzip-mesboot, gnu-make-mesboot0, bzip2-mesboot)
(bash-mesboot0, tcc-boot, diffutils-mesboot)
(patch-mesboot, sed-mesboot0, binutils-mesboot0)
(gcc-core-mesboot0, mesboot-headers, gawk-mesboot0)
(glibc-mesboot0, gcc-mesboot0, tar-mesboot)
(grep-mesboot, binutils-mesboot1, gnu-make-mesboot)
(gawk-mesboot, sed-mesboot, bash-mesboot)
(gcc-core-mesboot1, gcc-mesboot1, binutils-mesboot)
(glibc-headers-mesboot, glibc-mesboot, gcc-mesboot1-wrapper)
(gcc-mesboot, gnu-make-boot0, binutils-boot0)
(libstdc++-boot0, gcc-boot0, perl-boot0, python-boot0)
(glibc-final-with-bootstrap-bash)
(cross-gcc-wrapper, gettext-boot0, gcc-final): Remove trailing #t in
build phases.
2020-11-25 00:02:30 +01:00
Maxim Cournoyer
5e2140511c
Merge branch 'staging'
Conflicts:
	gnu/packages/admin.scm
	gnu/packages/commencement.scm
	gnu/packages/gdb.scm
	gnu/packages/llvm.scm
	gnu/packages/package-management.scm
	gnu/packages/tls.scm
2020-10-19 13:11:40 -04:00
Ludovic Courtès
f848c276f0
gnu: gcc-toolchain: Add 'GUIX_LOCPATH' to the search paths.
This allows 'gcc-toolchain' to be used as a drop-in replacement for the
default tool chain through '--with-toolchain=gcc-toolchain'.

* gnu/packages/commencement.scm (make-gcc-toolchain)[native-search-paths]
[search-paths]: Append LIBC's search paths.
2020-10-12 18:23:47 +02:00
Ludovic Courtès
4e896da45d
gnu: nyacc: Add 1.03.0.
* gnu/packages/mes.scm (nyacc): Rename to...
(nyacc-0.99): ... this.
(nyacc): New variable.
(mes)[propagated-inputs]: Replace NYACC with NYACC-0.99.
(mes-rb5)[native-inputs]: Likewise.
* gnu/packages/commencement.scm (mes-boot)[native-inputs]: Likewise.
(tcc-boot0)[native-inputs]: Likewise.
2020-09-25 23:26:22 +02:00
Ludovic Courtès
3b49071fd1
gnu: gawk-boot0: Inherit from gawk.
Until now the version number would be wrong.

* gnu/packages/commencement.scm (gawk-boot0): Inherit from GAWK, not
PATCH.
2020-09-20 13:07:55 +02:00
Ludovic Courtès
18fa433bf5
gnu: gcc-mesboot: Remove redundant input.
Fixes <https://bugs.gnu.org/43508>.

* gnu/packages/commencement.scm (gcc-mesboot)[native-inputs]: Remove
GCC-MESBOOT1, which is already in %BOOT-MESBOOT4-INPUTS.
2020-09-19 17:28:47 +02:00
Vagrant Cascadian
7467f9857d
gnu: commencement: bash-mesboot0: Remove store file name.
This is a follow-up to commit d9484fba91, and
fixes "make dist".

* gnu/packages/commencement (bash-mesboot0): Remove reference to store item.
2020-09-16 23:30:01 +02:00
Jan (janneke) Nieuwenhuizen
b85863f7ce
gnu: commencement: bash-mesboot0: Break store file-name in comment.
Fixes <https://bugs.gnu.org/43005>.
Reported by Vagrant Cascadian <vagrant@debian.org>.

* gnu/packages/commencement.scm (bash-mesboot0)[arguments]: Break store file
name in comment and add unquoted string-append to silence the
’assert-no-store-file-names’ check.  The store file name check is really meant
for code; this file name was unfortunately used is a comment.
2020-09-16 12:43:36 +02:00
Maxim Cournoyer
fa8fe90edb
Merge remote-tracking branch 'origin/master' into core-updates 2020-09-14 16:17:19 -04:00
zimoun
0214d5dd84
gnu: gcc-toolchain: Reword description.
* gnu/packages/commencement.scm (make-gcc-toolchain)[description]: Reword.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-09-13 23:34:22 +02:00
Ludovic Courtès
f17e1802ec
gnu: gcc-toolchain: Make "gcc" a "deprecated" alias for "gcc-toolchain".
Fixes <https://bugs.gnu.org/43303>.
Reported by Jeffrey Walton <noloader@gmail.com>.

* gnu/packages/commencement.scm (gcc-toolchain-aka-gcc): New variable.
2020-09-10 12:27:20 +02:00
Jakub Kądziołka
d726b954ba
Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/ruby.scm
2020-07-23 21:43:06 +02:00
Jakub Kądziołka
9a74a7db86
gnu: glibc-intermediate: Don't include native-gcc in inputs.
As the comment explains, this is only necessary when building with
--enable-obsolete-rpc, which we aren't using anymore.

* gnu/packages/commencement.scm
  (glibc-final-with-bootstrap-bash)[inputs]: Remove native-gcc.
2020-07-23 21:39:20 +02:00
Jakub Kądziołka
7cde865f12
gnu: glibc-intermediate: Fixup the pre-configure phase.
* gnu/packages/commencement.scm
  (glibc-final-with-bootstrap-bash)[arguments]: Don't patch sunrpc,
  as it's no longer required. Tweak C_INCLUDE_PATH and
  CPLUS_INCLUDE_PATH instead of CPATH.
2020-07-23 21:39:18 +02:00
guy fleury iteriteka
7b2ab96a6e
gnu: Add gdc-toolchain.
* gnu/packages/commencement.scm(gdc-toolchain): New variable.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2020-07-19 20:23:37 +03:00
Ludovic Courtès
af74c0633a
gnu: gash, gash-utils: Build with Guile 3.0.
* gnu/packages/shells.scm (gash)[source]: Add 'modules' and 'snippet'.
[inputs]: Change GUILE-2.2 to GUILE-3.0.
(gash-utils)[source]: Add 'modules' and 'snippet'.
[inputs]: Change GUILE-2.2 to GUILE-3.0.
* gnu/packages/commencement.scm (gash-utils-boot)[source]: Remove
unneeded 'modules' field, and add 'snippet'.
(gash-utils-boot)[source]: New field.
* gnu/packages/patches/gash-utils-ls-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
2020-07-02 23:54:02 +02:00
Ludovic Courtès
badd216172
gnu: gcc-toolchain: Remove "glibc:debug" and "glibc:static" from "out".
With this change, the closure of "gcc-toolchain:out" goes from 1 GiB to
393 MiB, which was the intention.

* gnu/packages/commencement.scm (make-gcc-toolchain): Filter out
"libc-debug" and "libc-static" from OUT.
2020-06-30 00:18:28 +02:00
Marius Bakke
4bdf4182fe
Merge branch 'core-updates' 2020-05-08 21:40:51 +02:00
Ludovic Courtès
c81457a588
gnu: gcc-toolchain: Add 10.1.0.
* gnu/packages/commencement.scm (gcc-toolchain-10): New variable.
2020-05-08 16:34:58 +02:00
Jan (janneke) Nieuwenhuizen
1c5063af86
gnu: commencement: Build fix for python-boot0 on the Hurd.
Unlike during a non-chroot'ed build on Debian/Hurd, there is no /usr/include.

* gnu/packages/commencement.scm (python-boot0)[arguments]: When building on
the Hurd, add `fix-regen' stage to correct a reference to "/usr".
2020-04-19 16:18:01 +02:00
Ludovic Courtès
e85d4cecbe
gnu: commencement: Memoize packages as a function of the system.
Previous, things like 'ld-wrapper-boot0' would be memoized with
(mlambda () …).  However, the definition of 'ld-wrapper-boot0' depends
on the result of (%boot0-inputs), which is itself a function
of (%current-system).  Thus, if one first calls:

  (parameterize ((%current-system "x86_64-linux"))
    (ld-wrapper-boot0))

then, in all subsequent calls to 'ld-wrapper-boot0', the value
of (%current-system) would be ignored because the result is already
memoized.  Concretely, 'ld-wrapper-boot0' would always have the
dependencies it has on x86_64-linux, even though they are different than
those on armhf-linux, say ("bash-mesboot" vs. "bootstrap-binaries").

Fixes <https://bugs.gnu.org/40482>.
Reported by Marius Bakke <mbakke@fastmail.com>.

* gnu/packages/commencement.scm (define/system-dependent): New macro.
(linux-libre-headers-boot0, hurd-core-headers-boot0, ld-wrapper-boot0)
(gcc-boot0-intermediate-wrapped, gcc-boot0-wrapped, ld-wrapper-boot3):
Define using 'define/system-dependent' instead of 'define' + 'mlambda'.
Adjust users so they no longer look like procedure calls.
* tests/guix-build.sh: Add test.
2020-04-11 00:32:41 +02:00
Marius Bakke
3cff86db8a
gnu: Python: Move arm-alignment.patch to a native-input + phase.
This follows up 67ca82e6dd which was ineffective
when running 'guix build --system=armhf-linux python' on e.g. x86_64-linux
because the conditional would always return the native system.

* gnu/packages/python.scm (python-3.8)[native-inputs]: Add "arm-alignment.patch".
[arguments]: Add phase to apply it.
[source](patches): Remove it.
* gnu/packages/commencement.scm (python-boot0): Prevent inheriting the phase.
2020-04-02 17:11:17 +02:00
Ludovic Courtès
71d17a09ee
gnu: commencement: Micro-optimize the package graph.
This removes 2 'add-data-to-store-cache' lookups.

* gnu/packages/commencement.scm (flex-boot0): Move (package (inherit …))
outside the 'propagated-inputs' field to avoid creating a new node each
time the field is accessed.
2020-03-29 23:14:28 +02:00
Marius Bakke
58f705c18e
gnu: coreutils-mesboot: Make variable private.
This fixes a test failure in tests/graph.scm because the package does not use
glibc, yet is part of the public packages.

* gnu/packages/commencement.scm (coreutils-mesboot): Use DEFINE instead of
DEFINE-PUBLIC.
2020-03-28 22:17:08 +01:00
Jan Nieuwenhuizen
aaa4cb0cad
gnu: commencement: glibc-final: Allow gnumach-headers references.
* gnu/packages/commencement.scm (glibc-final): Allow gnumach-headers-boot0
references for the Hurd.
2020-03-26 12:59:33 +01:00
Jan Nieuwenhuizen
1320885ffa
gnu: commencement: gnumach-headers-boot0: Update to 1.8-116-g28b53508.
* gnu/packages/commencement.scm (gnumach-headers-boot0): Update to
1.8-116-g28b53508.
2020-03-26 12:59:32 +01:00
Jan Nieuwenhuizen
61249ba27c
gnu: commencement: hurd-source: Update to latest git.
* gnu/packages/commencement.scm (hurd-source-version): Update to
0.9-229-ga1efcee8.
(hurd-source-boot0): Update url to updated lilypond tarball.
2020-03-26 12:59:32 +01:00
Jan Nieuwenhuizen
05a852d8dd
gnu: commencement: glibc-intermediate: Build fixes for the Hurd.
* gnu/packages/commencement.scm (glibc-intermediate): Configure with
--disable-werror, update pthreads workaround.
2020-03-26 12:59:32 +01:00
Jan Nieuwenhuizen
0c7b63e065
gnu: commencement: hurd-minimal-boot0: Build from tarball.
The 'hurd-minimal' package (via hurd-headers) now uses a git checkout and
added dependencies on autoconf, automake and teiinfo to build.  Using those in
commencement creates a bootstrap loop.  So, revert to a tarball release.

* gnu/packages/commencement.scm (hurd-minimal-boot0): Build from tarball;
remove autoconf, automake, texinfo bootstrap dependencies.
2020-03-26 12:59:32 +01:00
Jan Nieuwenhuizen
c9c5e032c3
gnu: commencement: hurd-headers-boot0: Build from tarball.
The 'hurd-headers' package now uses a git checkout and added dependencies on
autoconf and automake to build.  Using those in commencement creates a
bootstrap loop.  So, revert to a tarball release.

* gnu/packages/commencement.scm (hurd-version-boot0, hurd-source-boot0): New
variable.
(hurd-headers-boot0): Use it to build from tarball; remove autoconf, automake,
texinfo bootstrap dependencies.
2020-03-26 12:59:32 +01:00
Jan Nieuwenhuizen
a50bbf44c7
gnu: commencement: gnumach-headers-boot0: Build from tarball.
The 'gnumach-headers' package now uses a git checkout and added dependencies
on autoconf, automake and texinfo to build.  Using those in commencement
creates a bootstrap loop.  So, revert to a tarball release.

* gnu/packages/commencement.scm (gnumach-headers-boot0): Build from tarball;
remove autoconf, automake, texinfo bootstrap dependencies.
2020-03-26 12:59:32 +01:00
Ludovic Courtès
b6bee63bed
gnu: Default to Guile 3.0.
This patch changes three things:

  1. package derivations are built using Guile 3.0;

  2. 'gexp->derivation' defaults to Guile 3.0;

  3. "guile3.0-" packages are deprecated aliases for the regular
     package, which now depends on Guile 3.0; "guile2.2-" packages are
     introduced; "guile-next" is renamed to "guile".

* gnu/packages/guile.scm (guile-2.0/fixed): Remove.
(guile-3.0/fixed): New variable.
(package-for-guile-3.0): Remove.
(package-for-guile-2.2): New variable.
(define-deprecated-guile3.0-package): New macro.
(guile-3.0)[name]: Change to "guile".
(guile-json-3)[native-inputs, inputs]: New fields.
(guile2.2-json): New variable.
(guile3.0-json): Deprecate.
(guile-gdbm-ffi)[native-inputs]: Switch to GUILE-3.0.
(guile2.2-gdbm-ffi): New variable.
(guile3.0-gdbm-ffi): Deprecate.
(guile-sqlite3): Switch to GUILE-3.0.
(guile2.2-sqlite3): New variable.
(guile3.0-sqlite3): Deprecate.
(guile-bytestructures): Switch to GUILE-3.0.
(guile2.2-bytestructures): New variable.
(guile3.0-bytestructures): Deprecate.
(guile-git): Switch to GUILE-3.0.
(guile2.2-git): New variable.
(guile3.0-git): Deprecate.
(guile-2.2/bug-fix):
* gnu/packages/ci.scm (cuirass): Switch to GUILE-3.0.
* gnu/packages/emacs-xyz.scm (emacs-guix): Switch to GUILE-3.0.
* gnu/packages/gtk.scm (guile-cairo)[arguments]: New field.
Switch to GUILE-3.0.
(guile2.2-cairo): New variable.
(guile3.0-cairo): Deprecate.
(guile-rsvg): Switch to GUILE-3.0.
(guile2.2-cairo): New variable.
(guile3.0-cairo): Deprecate.
(guile-present): Switch to GUILE-3.0.
(guile2.2-present): New variable.
(guile3.0-present): Deprecate.
(guile-gnome)[propagated-inputs]: Use GUILE2.2-CAIRO and GUILE2.2-LIB.
* gnu/packages/guile-xyz.scm (guile-fibers)[arguments]: Add #:configure-flags.
Switch to GUILE-3.0.
(guile2.2-fibers): New variable.
(guile3.0-fibers): Deprecate.
(guile-syntax-highlight): Switch to GUILE-3.0.
(guile2.2-syntax-highlight): New variable.
(guile3.0-syntax-highlight): Deprecate.
(guile-colorized): Switch to GUILE-3.0.
(guile2.2-colorized): New variable.
(guile3.0-colorized): Deprecate.
(guile-pfds): Switch to GUILE-3.0.
(guile2.2-pfds): New variable.
(guile3.0-pfds): Deprecate.
(guile-simple-zmq): Switch to GUILE-3.0.
(guile2.2-simple-zmq): New variable.
(guile3.0-simple-zmq): Deprecate.
(guile-newt): Switch to GUILE-3.0.
(guile2.2-newt): New variable.
(guile3.0-newt): Deprecate.
(guile-parted): Switch to GUILE-3.0.
(guile2.2-parted): New variable.
(guile3.0-parted): Deprecate.
(guile-config): Switch to GUILE-3.0.
(guile2.2-config): New variable.
(guile3.0-config): Deprecate.
(guile-hall): Switch to GUILE-3.0.
(guile2.2-hall): New variable.
(guile3.0-hall): Deprecate.
(guile-ics): Switch to GUILE-3.0.
(guile2.2-ics): New variable.
(guile3.0-ics): Deprecate.
(guile-wisp)[arguments]: Add 'support-guile-3.0' phase.
Switch to GUILE-3.0.
(guile2.2-wisp): New variable.
(guile3.0-wisp): Deprecate.
(guile-lib): Switch to GUILE-3.0.
(guile2.2-lib): New variable.
(guile3.0-lib): Deprecate.
(guile-minikanren): Switch to GUILE-3.0.
(guile2.2-minikanren): New variable.
(guile3.0-minikanren): Deprecate.
(guile-irregex): Switch to GUILE-3.0.
(guile2.2-irregex): New variable.
(guile3.0-irregex): Deprecate.
(haunt): Switch to GUILE-3.0, and remove GUILE-READER.
(guile2.2-haunt): New variable.
(guile3.0-haunt): Deprecate.
(guile-commonmark): Switch to GUILE-3.0.
(guile2.2-commonmark): New variable.
(guile3.0-commonmark): Deprecate.
(mcron): Switch to GUILE-3.0.
(guile2.0-mcron): New variable.
(guile3.0-mcron): Deprecate.
(guile-picture-language): Switch to GUILE-3.0.
(guile2.2-picture-language): New variable.
(guile3.0-picture-language): Deprecate.
(guile-gi): Switch to GUILE-3.0.
(guile2.2-gi): New variable.
(guile3.0-gi): Deprecate.
(guile-hashing): Switch to GUILE-3.0.
(guile2.2-hashing): New variable.
(guile3.0-hashing): Deprecate.
* gnu/packages/package-management.scm (guix): Switch to GUILE-3.0.
(guile2.2-guix): New variable.
(guile3.0-guix): Deprecate.
(gwl): Replace "guile3.0-" with "guile-".
(guix-jupyter)[source]: Adjust for Guile 3.0.
Switch to GUILE-3.0.
* gnu/packages/ssh.scm (guile-ssh): Switch to GUILE-3.0.
(guile2.2-ssh): New variable.
(guile3.0-ssh): Deprecate.
* gnu/packages/admin.scm (shepherd): Switch to GUILE-3.0.
(guile2.2-shepherd): New variable.
(guile3.0-shepherd): Deprecate.
* gnu/packages/mail.scm (mailutils): Switch to GUILE-3.0.
(guile2.2-mailutils): New variable.
(guile3.0-mailutils): Deprecate.
* gnu/packages/plotutils.scm (guile-charting): Switch to GUILE-3.0.
(guile2.2-charting): New variable.
(guile3.0-charting): Deprecate.
* gnu/packages/version-control.scm (libgit2): Switch to GUILE-3.0.
* gnu/packages/vpn.scm (vpnc-scripts): Switch to GUILE-3.0.
* gnu/packages/web.scm (guix-data-service): Switch to GUILE-3.0.
(hpcguix-web): Switch to GUILE-3.0.
* guix/self.scm (specification->package): Refer to the "guile-" variants
instead of "guile3.0-".
* guix/gexp.scm (default-guile): Change to GUILE-3.0.
* build-aux/build-self.scm (build): #:guile-version defaults to "3.0".
* gnu/packages/commencement.scm (guile-final): Base on GUILE-3.0/FIXED.
2020-03-16 15:44:02 +01:00