Commit Graph

102 Commits

Author SHA1 Message Date
Ludovic Courtès 32243bfb57 gnu: commencement: Avoid redundant Perl rebuild.
This removes a redundant (yet different) "perl-boot0" node from the
early derivation graph.

* gnu/packages/commencement.scm (bison-boot1): Move 'native-inputs'
field to the final package.  Previously PERL-BOOT0 got rebuilt with
%BOOT0-INPUTS, leading to a different derivation.
(static-bash-for-glibc): Likewise.
2015-12-18 23:53:00 +01:00
Ludovic Courtès 09964b4fc6 gnu: commencement: Add "-boot0" to early packages.
* gnu/packages/commencement.scm (diffutils-boot0)[name]: New field.
* gnu/packages/commencement.scm (findutils-boot0, file-boot0,
perl-boot0): Change 'name' field to include "-boot0".
2015-12-18 22:19:07 +01:00
Ludovic Courtès 8309c3899a gnu: commencement: Use GMP 6.0.0a for bootstrapping.
* gnu/packages/multiprecision.scm (gmp-6.0): New variable.
* gnu/packages/commencement.scm (gcc-boot0, gcc-final): Use it.
* gnu/packages/patches/gmp-arm-asm-nothumb.patch: New file, reinstated
from before e414a7d.
* gnu-system.am (dist_patch_DATA): Add it.
2015-12-18 18:38:22 +01:00
Ludovic Courtès 304e4f5135 gnu: grep: Add missing dependency on Perl.
* gnu/packages/base.scm (grep)[native-inputs]: New field.
* gnu/packages/commencement.scm (grep-final): Likewise.
2015-12-15 18:04:28 +01:00
Ludovic Courtès 775e6fe456 gnu: commencement: Initial Texinfo uses initial Perl.
* gnu/packages/commencement.scm (texinfo-boot0)[inputs]: Use
PERL-BOOT0.
2015-12-13 11:35:53 +01:00
Ludovic Courtès 4de3507483 gnu: perl: Update to 5.22.0.
* gnu/packages/perl.scm (perl)[source]: Update to 5.22.0.  Remove
"perl-module-pluggable-search.patch" since Module::Pluggable appears to
be gone.
[arguments] <configure-phase>: Adjust Cwd.pm file name.  Replace
-std=c89 with -std=gnu89.
* gnu/packages/commencement.scm (perl-boot0): Add 'disable-pthreads'
phase.
* gnu/packages/patches/perl-no-sys-dirs.patch: Update.
* gnu/packages/patches/perl-module-pluggable-search.patch: Remove.
* gnu-system.am (dist_patch_DATA): Adjust accordingly.
2015-12-13 11:28:54 +01:00
Ludovic Courtès 98bd851ee8 gnu: gcc: Use the system zlib.
* gnu/packages/gcc.scm (gcc-4.7) <configure-flags>: Pass
'--with-system-zlib'.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Remove
'--with-system-zlib' from the configure flags.
* gnu/packages/commencement.scm (zlib-final): New variable.
(gcc-final)[arguments]: Add ZLIB-FINAL to #:allowed-references.
Pass -L and -Wl,-rpath for zlib in LDFLAGS, as a configure flag.
[inputs]: Add LD-WRAPPER-BOOT3 and ZLIB-FINAL.
2015-12-11 23:49:10 +01:00
Ludovic Courtès 52cfd8cb54 gnu: gcc-final: Remove unnecessary CPPFLAGS.
* gnu/packages/commencement.scm (gcc-final)[arguments]: Remove
unnecessary CPPFLAGS from #:make-flags.
2015-12-11 23:42:39 +01:00
Ludovic Courtès 557b5557d8 gnu: commencement: Restrict allowed references for libstdc++.
* gnu/packages/commencement.scm (libstdc++)[arguments]: Add
  #:allowed-references.
2015-12-10 11:54:57 +01:00
Ludovic Courtès b6ac54517c gnu: commencement: Remove the tricky locale compatibility handling.
This is made unnecessary by the use of 'GUIX_LOCPATH'.

* gnu/packages/commencement.scm (locale-proof-package): Remove.
  (%boot5-inputs): Add on GLIBC-UTF8-LOCALES-FINAL.  This reverts parts
  of commit 28cbc58.
* gnu/packages/gawk.scm (gawk): Set 'GUIX_LOCPATH' instead of
  'LOCPATH'.
2015-10-04 00:09:29 +02:00
Mark H Weaver d02f38f3f8 gnu: gcc-toolchain: Don't try to delete OUT/bin/sh, which no longer exists.
* gnu/packages/commencement.scm (gcc-toolchain)[arguments]: Remove code that
  deletes OUT/bin/sh and OUT/bin/bash, since those files no longer exist in
  our libc package.
2015-09-15 16:12:35 -04:00
Alex Kost d0f74308e2 gnu: coreutils-light: Rename to coreutils-minimal.
* gnu/packages/base.scm (coreutils-light): Rename to ...
  (coreutils-minimal): ...this.
* gnu/packages/commencement.scm (%boot5-inputs): Use it.
2015-09-06 12:33:21 +03:00
Ludovic Courtès 28cbc587d3 gnu: glibc: Upgrade to 2.22.
* gnu/packages/base.scm (glibc): Upgrade to 2.22.
  (coreutils-light): New variable.
* gnu/packages/commencement.scm (locale-proof-package): New procedure.
  (%boot5-inputs): Add LD-WRAPPER, BINUTILS-FINAL, BASH-FINAL, GNU-MAKE,
  DIFFUTILS, FINDUTILS, COREUTILS-LIGHT (pass through
  'new-libc-package'), and %BOOTSTRAP-COREUTILS&CO (passed through
  'locale-proof-package'.)
2015-09-02 10:58:28 +02:00
Ludovic Courtès 90d891fc6c gnu: glibc: Do not copy static Bash binary to bin/.
This avoids problems when installing 'glibc' in a profile, where glibc's
limited 'bash' would take precedence over the valid 'bash'.

* gnu/packages/base.scm (glibc)[arguments]: Do not copy STATIC-BASH to
  OUT/bin.  Instead, simply refer to it directly.
  [inputs]: Use STATIC-BASH instead of BASH-LIGHT.
* gnu/packages/commencement.scm (static-bash-for-glibc): Likewise.
  (glibc-final)[arguments]: Add STATIC-BASH-FOR-GLIBC to
  #:allowed-references.
  (gcc-final)[arguments]: Likewise.
  [native-inputs]: Add "static-bash".
2015-08-29 01:25:08 +02:00
Mark H Weaver 629f4d2e6e gnu: gcc-5.1, gcc-toolchain-5.1, libstdc++-doc-5.1: Rename to *-5.
This reflects the new version numbering scheme for GCC 5 and up.
See <https://gcc.gnu.org/develop.html>.

* gnu/packages/gcc.scm (gcc-5.1): Rename to ...
  (gcc-5): ... this.
  (libstdc++-doc-5.1): Rename to ...
  (libstdc++-doc-5): ... this, and use gcc-5.
* gnu/packages/commencement.scm (gcc-toolchain-5.1): Rename to ...
  (gcc-toolchain-5): ... this, and use gcc-5.
* build-aux/hydra/gnu-system.scm (%core-packages): Use gcc-5.
2015-07-19 23:20:39 -04:00
Mark H Weaver 47ed8e048b gnu: texinfo: Add procps to native-inputs to fix tests.
* gnu/packages/texinfo.scm (texinfo)[native-inputs]: Add procps.
  (texinfo-5, texinfo-4)[native-inputs]: Override to be empty.
* gnu/packages/commencement.scm (texinfo-boot0)[texinfo]: Override
  native-inputs to be empty.
2015-07-11 00:59:31 -04:00
Ludovic Courtès c92f1c0a33 gnu: Refer to 'gcc' instead of 'gcc-4.9'.
* gnu/packages/commencement.scm (gcc-boot0, cross-gcc-wrapper,
  libstdc++, gcc-final): Refer to GCC instead of GCC-4.9.
* gnu/packages/cross-base.scm (%xgcc): New variable.
  (cross-gcc-arguments, cross-gcc): Refer to %XGCC instead of GCC-4.9.
* gnu/packages/llvm.scm (clang-from-llvm): Refer to GCC instead of GCC-4.9.
* gnu/packages/make-bootstrap.scm (package-with-relocatable-glibc,
  %gcc-static, %gcc-stripped): Likewise.
2015-06-26 17:06:30 +02:00
Ludovic Courtès 89223417fd gnu: commencement: Make a few variables private.
This removes ambiguity warnings when installing these packages.

* gnu/packages/commencement.scm (glibc-final, gcc-final,
  glibc-utf8-locales-final): Make private.
2015-06-22 23:17:16 +02:00
Mark H Weaver bf76d98789 Merge branch 'master' into core-updates 2015-06-21 14:30:22 -04:00
Ludovic Courtès d0abf829a9 gnu: Add libstdc++ as a standalone package.
* gnu/packages/gcc.scm (make-libstdc++): New procedure.
  (libstdc++-4.9): New variable.
* gnu/packages/commencement.scm (libstdc++): Add TODO comment.
2015-06-19 17:23:47 +02:00
Mark H Weaver bcf2971f6e Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/commencement.scm
	gnu/packages/xml.scm
2015-06-14 08:49:42 -04:00
Ludovic Courtès 0004c5904c packages: Make 'location' field innate.
* guix/packages.scm (<package>)[location]: Add 'innate' property.
* guix/build-system/gnu.scm (static-package): Remove 'loc' parameter and
  'location' field.
* gnu/packages/autotools.scm (autoconf-wrapper): Remove 'location' field.
* gnu/packages/commencement.scm (gnu-make-boot0, diffutils-boot0, gcc-final):
  Likewise.
* gnu/packages/cross-base.scm (cross): Likewise.
* gnu/packages/emacs.scm (emacs-no-x, emacs-no-x-toolkit): Likewise.
* gnu/packages/make-bootstrap.scm (tarball-package): Likewise.
* gnu/packages/maths.scm (petsc-complex): Likewise.
2015-06-11 23:33:32 +02:00
Mark H Weaver 1492801655 Merge branch 'master' into core-updates 2015-06-10 17:50:27 -04:00
Ludovic Courtès ab999c2516 gnu: commencement: Remove "debug" output of GCC-FINAL.
Fixes a regression introduced in 9063ef0.

* gnu/packages/commencement.scm (gcc-final)[outputs]: New field.
2015-06-10 09:37:36 +02:00
Mark H Weaver f8badf151b gnu: commencement: Use our Binutils as soon as possible.
* gnu/packages/commencement.scm (binutils-boot0)[arguments]: Add
  'add-symlinks' phase.
2015-06-08 16:14:03 -04:00
Ludovic Courtès de4ac32527 gnu: Switch to GCC 4.9 as the default compiler.
* gnu/packages/commencement.scm: Replace all occurrences of "gcc-4.8" with
  "gcc-4.9".
  (gcc-boot0)[arguments]: Add --disable-libcilkrts --disable-libvtv.
2015-06-04 18:05:52 +02:00
Ludovic Courtès 6f450b87de gnu: gcc-toolchain: Remove 'bin/sh' and 'bin/bash'.
* gnu/packages/commencement.scm (gcc-toolchain)[arguments] <#:builder>: Delete
  'bin/sh' and 'bin/bash'.
2015-05-18 23:19:21 +02:00
Andreas Enge 4ac0d6444d Merge branch 'master' into core-updates. 2015-04-26 20:08:49 +02:00
Mark H Weaver 60e2d5fe82 gnu: Add gcc-5.1.0 and gcc-toolchain-5.1.0.
* gnu/packages/gcc.scm (gcc-5.1): New variable.
* gnu/packages/commencement.scm (gcc-toolchain-5.1): New variable.
2015-04-23 01:06:40 -04:00
Ludovic Courtès d485ebba42 gnu: gcc: Do not always disable RUNPATH validation.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Remove explicit
  #:validate-runpath? #f.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Remove case for
  #:validate-runpath?.
  (gcc-final)[arguments]: Add literal #:validate-runpath? #f.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Remove case for
  #:validate-runpath?.
2015-04-23 00:06:37 +02:00
Ludovic Courtès 669b8639a2 gnu: commencement: Remove unneeded configure flag for bootstrap gettext.
* gnu/packages/commencement.scm (gettext-boot0): Remove unneeded
  --disable-threads.
2015-04-23 00:06:37 +02:00
Ludovic Courtès 6162b95d21 gnu: glibc: Add dependency on Gettext, to install the message catalogs.
This fixes a bug whereby the libc.mo files were not installed, and thus
translations of libc's messages were not available.

* gnu/packages/commencement.scm (gettext-boot0): New variable.
  (glibc-final)[native-inputs]: New field.
* gnu/packages/base.scm (glibc)[native-inputs]: Add GNU-GETTEXT.
2015-04-21 22:53:09 +02:00
Ludovic Courtès cbbb11c8a0 gnu: Rename ld-wrapper2 to ld-wrapper.
* gnu/packages/ld-wrapper2.in: Rename to...
* gnu/packages/ld-wrapper.in: ... this.
* gnu-system.am (MISC_DISTRO_FILES): Remove ld-wrapper2.in.
* gnu/packages/commencement.scm (fixed-ld-wrapper): Remove.
  (gcc-toolchain): Restore pre-77db91ad inputs.
2015-04-21 21:07:11 +02:00
Ludovic Courtès 77db91addc gnu: Add second ld-wrapper to work around readlink dereferencing bug.
Suggested by Mark H Weaver.

* gnu/packages/ld-wrapper2.in: New file.
* gnu-system.am (MISC_DISTRO_FILES): Add it.
* gnu/packages/commencement.scm (fixed-ld-wrapper): New procedure.
2015-04-16 23:15:06 +02:00
宋文武 cf3e3e374c Merge branch 'master' into core-updates 2015-04-08 16:04:37 +08:00
Ludovic Courtès dfc8bb2071 gnu: gcc: Disable RUNPATH validation for native builds.
* gnu/packages/gcc.scm (gcc-4.7)[arguments]: Pass
  #:validate-runpath? #f.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Override
  #:validate-runpath? with 'substitute-keyword-arguments'.
  (gcc-final)[arguments]: Likewise.
* gnu/packages/cross-base.scm (cross-gcc-arguments): Likewise.
2015-04-07 22:28:36 +02:00
Mark H Weaver 5180717e64 Remove unused module import (gnu packages ed) from (gnu packages commencement).
* gnu/packages/commencement.scm: Remove (gnu packages ed) module import.
2015-04-05 23:03:42 -04:00
Ludovic Courtès 8fdd410160 gnu: Add 'make-ld-wrapper' procedure.
* gnu/packages/base.scm (make-ld-wrapper): New procedure.  Abstracted
  from...
* gnu/packages/commencement.scm (ld-wrapper-boot3): ... here.  Use it.
2015-04-03 22:28:04 +02:00
Ludovic Courtès c2366e3ce4 gnu: commencement: Turn off RUNPATH checks for 'gcc-final'.
* gnu/packages/commencement.scm (gcc-final)[arguments]: Add
  #:validate-runpath? #f.
2015-04-02 00:19:53 +02:00
Ludovic Courtès ec3b1c575d gnu: Use 'glibc-utf8-locales-final' in the default patching inputs.
* gnu/packages/commencement.scm (glibc-utf8-locales-final): Make public.
* guix/packages.scm (%standard-patch-inputs): Use
  GLIBC-UTF8-LOCALES-FINAL instead of GLIBC-UTF8-LOCALES.
2015-03-21 21:58:04 +01:00
Ludovic Courtès 87c8b92f50 gnu: commencement: Make UTF-8 locales available right after 'guile-final'.
In <http://hydra.gnu.org/build/263170>, we see:

   153: 12 [patch-usr-bin-file #:native-inputs #f ...]

  [...]

     ?: 1 [regexp-exec # ...]
  In ice-9/boot-9.scm:
   106: 0 [#<procedure 1998ec0 at ice-9/boot-9.scm:97:6 (thrown-k . args)> encoding-error ...]

  ice-9/boot-9.scm:106:20: In procedure #<procedure 1998ec0 at ice-9/boot-9.scm:97:6 (thrown-k . args)>:
  ice-9/boot-9.scm:106:20: Throw to key `encoding-error' with args `("scm_to_stringn" "cannot convert narrow string to output locale" 84 #f #f)'.

This is due to that fact that 'patch-/usr/bin/file' read a line
containing a byte sequence with bytes > 127 (namely a copyright sign.)
But this build was running with a C locale, and so those bytes cannot be
represented in that locale, hence this error.

This commit makes the UTF-8 locales available earlier such that
everything can be represented in locale encoding.

* gnu/packages/commencement.scm (glibc-utf8-locales-final): Move
  earlier; change "gzip" input to GZIP built with %BOOT4-INPUTS.
  (%boot5-inputs): Define to %BOOT4-INPUTS plus
  GLIBC-UTF8-LOCALES-FINAL.
  (gnu-make-final, coreutils-final, grep-final): Use it instead of
  %BOOT4-INPUTS.
  (gzip-final): Remove.
  (%boot6-inputs): New variable.
  (%final-inputs): Use it instead of %BOOT5-INPUTS.  Don't rely on
  GZIP-FINAL.
2015-03-01 17:03:04 +01:00
Ludovic Courtès b0fd2bd3c5 gnu: Add glibc-utf8-locales to the implicit inputs.
Suggested by Mark H Weaver and Andreas Enge
at <http://lists.gnu.org/archive/html/guix-devel/2015-02/msg00356.html>.

* gnu/packages/commencement.scm (gzip-final, glibc-utf8-locales-final):
  New variables.
  (%final-inputs): Use them.
2015-02-26 23:41:49 +01:00
Mark H Weaver 24aaf2f257 gnu: gmp: Apply fixes for armhf.
* gnu/packages/patches/gmp-arm-asm-nothumb.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/multiprecision.scm (gmp): Add patch.  Include --build triplet
  in configure args when building natively.
* gnu/packages/commencement.scm (gcc-final): Use bootstrap guile to
  build gmp-source.
2015-01-07 12:34:19 -05:00
Mark H Weaver 8eb8048432 Move 'nix-system->gnu-triplet' to (guix utils) and export it.
* gnu/packages/commencement.scm (nix-system->gnu-triplet): Move to...
* guix/utils.scm (nix-system->gnu-triplet): ... here.  Fix docstring typo.
2015-01-07 12:34:10 -05:00
Ludovic Courtès 7da473b757 gnu: Revert use of '--strip-all'.
This reverts commits f05bdc9412
and 856ae5e6c7.

This broke all sorts of things.  See <http://hydra.gnu.org/eval/102058>,
for example.
2014-12-29 21:54:12 +01:00
Ludovic Courtès f05bdc9412 gnu: Don't use --strip-all in cases where this is problematic.
This is a followup to 856ae5e.  See <http://hydra.gnu.org/build/180506>
for an example of build failure.

* guix/build/gnu-build-system.scm (strip): Add #:archive-strip-flags
  parameter.  Use it when (ar-file? path).
* guix/build-system/gnu.scm (gnu-build): Add #:archive-strip-flags
  parameter and pass it down.
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Add
  #:strip-flags.
* gnu/packages/base.scm (glibc)[arguments]: Likewise.
2014-12-28 23:46:59 +01:00
Mark H Weaver 6178ae9cb7 gnu: make: Update to 4.1.
* gnu/packages/base.scm (make): Update to 4.1.  Adapt 'default_shell'
  substitution to new code.
* gnu/packages/commencement.scm (gnu-make-boot0): Remove code that
  manually removed guile.c from list of things to build.
2014-10-26 02:55:37 -04:00
Mark H Weaver 2d5d63d718 gnu: bash: Update to 4.3.27 and fix out-of-bounds memory accesses.
Based on a patch by Ludovic Courtès <ludo@gnu.org>.

* gnu/packages/bash.scm (%patch-series-4.3): Add two patches.
  (bash)[source]: Add parser-oob patch.  Add 'snippet'.
  [native-inputs]: New field.
* gnu/packages/commencement.scm (bison-boot1): New variable.
  (static-bash-for-glibc): Add 'native-inputs'.

Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
2014-09-29 14:14:54 -04:00
Mark H Weaver e759c0a38c Merge branch 'master' into core-updates 2014-09-08 11:00:06 -04:00
Ludovic Courtès d474d5d0c6 gnu: gcc-toolchain: Inherit GCC's search path specifications.
Reported by Federico Beffa <beffa@ieee.org>.

* gnu/packages/commencement.scm (gcc-toolchain): Add
  'native-search-paths' and 'search-paths' fields.
2014-08-31 22:18:47 +02:00
Mark H Weaver c00a9fbfef Merge branch 'master' into core-updates
Conflicts:
	gnu/packages/base.scm
2014-08-28 14:22:15 -04:00
Ludovic Courtès bdb36958fb 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.
2014-08-28 09:21:54 +02:00