Commit Graph

110 Commits

Author SHA1 Message Date
Ludovic Courtès 8102cf0b37
gnu: commencement: Memoize 'linux-libre-headers-boot0'.
Fixes <https://bugs.gnu.org/30155>.

The effect can be seen in the package graph produced by:

  guix graph -e '(@@ (gnu packages commencement) static-bash-for-glibc)'

This reduces the number of "duplicate" nodes in this graph, i.e.,
distinct package objects that correspond to the same derivation (objects
that are not 'eq?' but semantically equal.)

* gnu/packages/commencement.scm (linux-libre-headers-boot0): Make an
'mlambda' instead of a 'lambda'.
(hurd-core-headers-boot0): Ditto.
2018-01-18 16:14:06 +01:00
Efraim Flashner 809b0a9044
gnu: gcc@4.9: Fix building with glibc@2.26.
* gnu/packages/gcc.scm (gcc@4.9)[source]: Add snippet to adjust
linux-unwind.h to changes in glibc.
* gnu/packages/commencement.scm (gcc-for-libstdc++): New variable.
(libstdc++-boot0): Inherit from gcc-for-libstdc++, update note.
2018-01-18 08:59:20 +02:00
Leo Famulari 4adb40bffc
Merge branch 'master' into core-updates 2018-01-11 14:22:50 -08:00
Ludovic Courtès 20bf5fce7d
gnu: grep: Add dependency on PCRE.
Suggested by Oleg Pykhalov <go.wigust@gmail.com>
and Roel Janssen <roel@gnu.org>.

* gnu/packages/base.scm (grep)[inputs]: New field.
* gnu/packages/commencement.scm (grep-final)[inputs]: New field.
2018-01-11 22:49:15 +01:00
Marius Bakke 9e111db453
Merge branch 'master' into core-updates 2017-12-07 18:26:11 +01:00
Ludovic Courtès f00b85ff8d
gnu: commencement: Do not graft early bootstrap packages.
By definition, these packages are not depended on at run time by any of
the packages we use.  Thus it does not make sense to inherit grafts.
Furthermore, those grafts would often lead to extra overhead for users
who would end up downloading those "-boot0" packages just to build
package replacements that are in fact not going to be used.

This reverts parts of f1597427f2 and
ce27857f71.

Reported by Christopher Baines at
<https://lists.gnu.org/archive/html/guix-devel/2017-12/msg00058.html>.

* gnu/packages/commencement.scm (file-boot0, binutils-boot0): Use plain
'inherit' instead of 'package/inherit'.
2017-12-05 11:50:00 +01:00
Efraim Flashner 19b7bba1b5
Merge remote-tracking branch 'origin/master' into core-updates 2017-11-01 10:29:59 +02:00
Ludovic Courtès b887ede17d
gnu: gcc: Add unversioned 'gcc-toolchain' variable.
Reported by Theodoros Foradis <theodoros@foradis.org>.

* gnu/packages/commencement.scm (gcc-toolchain): Rename to...
(make-gcc-toolchain): ... this.
(gcc-toolchain): New variable.
(gcc-toolchain-5): Turn into an alias for 'gcc-toolchain'.
2017-10-27 12:35:49 -07:00
Efraim Flashner 86d02fa801
gnu: libstdc++: Rewrite as 'make-libstdc++' package.
* gnu/packages/commencement.scm (libstdc++): Rewrite the package using
the 'make-libstdc++' method.
2017-10-08 00:59:09 +03:00
Efraim Flashner ac423120c0
gnu: binutils-boot0: Use 'modify-phases' syntax.
* gnu/packages/commencement.scm (binutils-boot0)[arguments]: Use
'modify-phases' syntax.
2017-10-08 00:59:08 +03:00
Maxim Cournoyer 19d2713196
gnu: gcc: Fix manual pages.
Fixes bug #24069. perl is made a native input to all of the gcc-* packages
except for gcc-boot0; perl-boot0 is made a native input to gcc-final.

* gnu/packages/patches/gcc-fix-texi2pod.patch: Add patch file to fix texi2pod.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gcc.scm (gcc-4.7, gcc-4.8, gcc-4.9, gcc-5): Use it.
(gcc-4.7)[native-inputs]: Add perl.
(gcc-4.9)[native-inputs]: Likewise.
* gnu/packages/commencement.scm (gcc-boot0)[native-inputs]: Remove perl.
(gcc-final)[native-inputs]: Add perl-boot0.

Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
2017-10-05 21:15:21 +03:00
Efraim Flashner 848f550f2c
gnu: Remove package/inherit from commencement.
This is a follow-up to several security grafts.

* gnu/packages/commencement.scm (file-boot0, glibc-final,
glibc-final-with-bootstrap-bash): Use '(package (inherit ...)'
in place of '(package/inherit'.
2017-10-01 22:16:26 +03:00
Efraim Flashner 45953b1f67
gnu: binutils: Update to 2.28.1.
* gnu/packages/base.scm (binutils): Update to 2.28.1.
[replacement]: Remove field.
* gnu/packages/commencement.scm (binutils-boot0, binutils-final): Don't
use 'package/inherit'.
2017-10-01 22:16:24 +03:00
Efraim Flashner 64df08f0cf
Merge remote-tracking branch 'origin/master' into core-updates 2017-10-01 22:16:22 +03:00
Efraim Flashner ce27857f71
gnu: binutils: Fix security issues.
* gnu/packages/base.scm (binutils)[replacement]: New field.
(binutils/fixed): New variable.
* gnu/packages/commencement.scm (binutils-boot0, binutils-final): Use
'package/inherit' to correctly use replacement binutils.
2017-09-17 22:45:21 +03:00
Efraim Flashner f1597427f2
gnu: file: Fix CVE-2017-1000249.
* gnu/packages/file.scm (file)[replacement]: New field.
(file/fixed): New variable.
* gnu/packages/commencement.scm (file-boot0): Use package/inherit.
* gnu/packages/patches/file-CVE-2017-1000249.patch.
* gnu/local.mk (dist_patch_DATA): Register it.
2017-09-05 23:04:05 +03:00
Ludovic Courtès 6dff905e51
gnu: glibc: Add "static" output.
This shrinks glibc:out from 37 MiB to 29 MiB.

* gnu/packages/base.scm (glibc/linux)[outputs]: Add "static".
[arguments]: Add #:modules.  Add 'move-static-libs' phase.
* gnu/packages/commencement.scm (static-bash-for-glibc): Augment
 #:configure-flags to pass "-L LIBC:STATIC".  Add the "static" output of
GLIBC-FINAL to 'inputs'.
(%boot2-inputs, %final-inputs): Likewise.
(canonical-package): Adjust to deal with multiple-output packages.
* gnu/packages/cross-base.scm (cross-gcc): Add the "static" output of
LIBC to 'native-inputs'.
2017-09-05 10:18:39 +02:00
Leo Famulari c8eb2b8c60
Merge branch 'master' into core-updates 2017-07-10 14:37:53 -04:00
Ludovic Courtès d5ec5ed719
packages: Mark 'replacement' as an "innate" field.
Suggested by Mark H Weaver
at <https://lists.gnu.org/archive/html/guix-devel/2017-06/msg00355.html>.

* guix/packages.scm (<package>)[replacement]: Mark as "innate".
* gnu/packages/base.scm (glibc-2.25-patched, glibc-2.24)
(glibc-2.23, glibc-2.22, glibc-2.21, glibc-locales): Remove
'replacement' field, which was set to #f.
* gnu/packages/commencement.scm (perl-boot0): Likewise.
* gnu/packages/fontutils.scm (graphite2/fixed): Likewise.
* gnu/packages/ghostscript.scm (ghostscript/fixed): Likewise.
* gnu/packages/gnupg.scm (libgcrypt-1.7.8): Likewise.
* gnu/packages/guile.scm (guile-2.0/fixed, guile-2.2): Likewise.
* gnu/packages/icu4c.scm (icu4c/fixed): Likewise.
* gnu/packages/image.scm (libpng-apng): Likewise.
* gnu/packages/make-bootstrap.scm (%guile-static): Likewise.
* gnu/packages/pcre.scm (pcre/fixed): Likewise.
* gnu/packages/perl.scm (perl/fixed): Likewise.
* gnu/packages/ruby.scm (ruby-2.3, ruby-2.2, ruby-2.1)
(ruby-1.8): Likewise.
* gnu/packages/tls.scm (gnutls-3.5.13, gnutls/guile-2.2): Likewise.
* gnu/packages/xml.scm (expat-2.2.1): Likewise.
2017-07-03 23:51:22 +02:00
Mark H Weaver ed068b960e
Merge branch 'master' into core-updates 2017-06-26 00:00:58 -04:00
Mark H Weaver 13f7f2fd2b
gnu: glibc-final: Add support for grafted glibc.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
(glibc-final): Use 'package/inherit'.
2017-06-24 02:42:27 -04:00
Ludovic Courtès 704243e0c6
gnu: commencement: 'bash-final' inherits from 'bash-minimal'.
* gnu/packages/commencement.scm (bash-final): Inherit from BASH-MINIMAL
instead of BASH.
2017-06-02 17:22:06 +02:00
Ricardo Wurmus ff647c3d38
gnu: glibc: Move i686 patch to source field.
This is a rewrite of changes introduced by commits
b2fd8f6367,
c2e4f14ac8,
441e99d433 and
d03b34cf19.

* gnu/packages/base.scm (glibc/linux)[source]: Add i686 patch.
[arguments]: Remove conditional patch application from build phase.
[native-inputs]: Remove patch.
(glibc/hurd)[arguments]: Inherit pre-configure build phase from glibc/linux.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]:
Remove patch.
2017-05-29 06:14:11 +02:00
Ricardo Wurmus d1a914082b
Merge branch 'master' into core-updates 2017-05-24 12:05:47 +02:00
Ludovic Courtès d7ecab74ee
gnu: Add gcc-toolchain@7.
* gnu/packages/commencement.scm (gcc-toolchain-7): New variable.
2017-05-04 18:05:05 +02:00
Ricardo Wurmus b2fd8f6367
gnu: glibc/linux: Fix runtime crashes on i686 systems.
* gnu/packages/patches/glibc-memchr-overflow-i686.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]:
Add the patch conditionally for i686 systems.
* gnu/packages/base.scm (glibc/linux)[native-inputs]: Add the patch
conditionally for i686 systems.
[arguments]: Apply the patch conditionally on i686 systems.
2017-04-29 23:31:35 +02:00
Ludovic Courtès 78dea6f1d4
gnu: ld-wrapper: Build with Guile 2.2.
Reported by Sergei Trofimovich <slyfox@inbox.ru>.

* gnu/packages/base.scm (make-ld-wrapper): Change #:guile to default to
GUILE-2.2.
* gnu/packages/commencement.scm (ld-wrapper): Define in terms of
'make-ld-wrapper' such that #:guile-for-build and #:guile are the same.
2017-04-20 23:58:14 +02:00
Ludovic Courtès 34d624cef5
gnu: Build derivations with Guile 2.2 by default.
* gnu/packages/guile.scm (guile-2.0/fixed): Remove.
(guile-2.2)[source]: Switch from tar.lz to tar.xz.
(guile-2.2/fixed): New variable.
* gnu/packages/commencement.scm (guile-final): Use GUILE-2.2/FIXED
instead of GUILE-2.2/FIXED.
(canonical-package): Mention 2.2 instead of 2.0.
2017-04-08 23:27:08 +02:00
Marius Bakke 84157bb8bf
Merge branch 'master' into core-updates
Most conflicts are from 6fd52309b8.
2017-03-30 22:59:53 +02:00
Tobias Geerinckx-Rice 6fd52309b8
gnu: Use HTTPS for almost all gnu.org HOME-PAGEs.
All HTTP gnu.org (and supported subdomain) HOME-PAGEs changed to HTTPS.
2017-03-30 01:30:16 +02:00
Ludovic Courtès d9b4cbc2a1
gnu: bash: Do not retain dependency on Coreutils.
Previously the "include" output of BASH-FINAL would refer to
'bootstrap-binaries' via 'Makefile.inc'.

* gnu/packages/bash.scm (bash)[arguments]: In 'move-development-files'
phase, remove absolute file name of 'install' from the 'INSTALL'
variable in 'Makefile.inc'.
* gnu/packages/commencement.scm (bash-final)[arguments]: Pass
 #:disallowed-references.
2017-01-27 09:52:26 +01:00
Ludovic Courtès 168c400045
gnu: ld-wrapper-boot0: Remove workaround for <http://bugs.gnu.org/24832>.
Fixes <http://bugs.gnu.org/24832>.

* gnu/packages/commencement.scm (ld-wrapper-boot0): Change the first
'make-ld-wrapper' argument to "ld-wrapper-boot0"; change #:target to
BOOT-TRIPLET.
2017-01-20 22:57:47 +01:00
Leo Famulari 74288230ea
Merge branch 'master' into core-updates 2017-01-06 17:14:41 -05:00
Manolis Ragkousis 62596a158b
gnu: Use hurd-triplet? to check if GNU/Hurd.
* gnu/packages/make-bootstrap.scm (hurd-triplet?): Move it from here..
* gnu/packages/hurd.scm: ..to here. New exported procedure.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
  [arguments]: Replace string-match.
  [inputs]: Same.
* gnu/packages/cross-base.scm (cross-libc)[native-inputs]: Same.
2017-01-03 16:00:39 +02:00
Ludovic Courtès 8a4c988892
build: check-final-inputs-self-contained has an exception for 'bash:include'.
Currently 'bash:include' of the final Bash depends on bootstrap stuff.

* build-aux/check-final-inputs-self-contained.scm (final-inputs): Add
clause for 'bash:include'.
* gnu/packages/commencement.scm (bash-final): Add FIXME comment.
2016-12-18 12:37:26 +01:00
Ludovic Courtès b810a85019
gnu: Default to GCC 5.
This reinstates and adjusts
commit e3d0fcbf7e.

* gnu/packages/patches/gcc-libiberty-printf-decl.patch: New file.
* gnu/packages/gcc.scm (gcc-5)[source]: Use it.
[patches]: Add "gcc-arm-bug-71399.patch".
(gcc): Switch to GCC-5.
* gnu/packages/commencement.scm (libstdc++-boot0): New variable.
(gcc-boot0)[inputs]: Add it.
(gcc-toolchain-4.9): Switch to GCC-4.9.
(gcc-toolchain-5): Switch to GCC-FINAL.
* gnu/local.mk (dist_patch_DATA): Add 'gcc-libiberty-printf-decl.patch'.
2016-12-13 00:40:57 +01:00
Ludovic Courtès 5bde4503ee
gnu: ld-wrapper-boot0: Work around strict evaluation of (%current-system).
Reported by Mark H Weaver <mhw@netris.org>
Partly fixes <http://bugs.gnu.org/24832>.

'ld-wrapper-boot0' was evaluating strictly instead of lazily, leading to
invalid system types.

* gnu/packages/base.scm (make-ld-wrapper): Turn #:target into a
one-argument procedure.  Honor it.
* gnu/packages/commencement.scm (ld-wrapper-boot0): Fix 'name' argument
to 'make-ld-wrapper'.  Make #:target argument a procedure.
* gnu/packages/cross-base.scm (cross-gcc): Adjust #:target argument.
2016-10-31 16:06:30 +01:00
Ben Woodcroft 156c0810e9
gnu: perl: Enable threading support.
* gnu/packages/perl.scm (perl)[arguments]: Configure with '-Dusethreads'.
* gnu/packages/commencement.scm (perl-boot0)[arguments]: Omit inherited
'-Dusethreads' flag during configure.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-10-01 14:34:33 +02:00
Ludovic Courtès 712b62d8f7
gnu: make-boot0: Use 'install-file'.
* gnu/packages/commencement.scm (gnu-make-boot0)[arguments]: Use
'install-file' in 'install' phase instead of 'copy-file' etc.
2016-10-01 11:55:09 +02:00
Ludovic Courtès 8e5e8724d2
gnu: make-boot0: Use 'modify-phases'.
* gnu/packages/commencement.scm (gnu-make-boot0)[arguments]: Use
'modify-phases'.
2016-10-01 11:55:09 +02:00
Ludovic Courtès c573f5a5a5
gnu: bash: Update to 4.4.
* gnu/packages/bash.scm (%patch-series-4.3): Remove.
(%patch-series-4.4): New variable.
(bash)[source]: Update to 4.4.
[native-inputs]: Remove.
[arguments]: Remove (ice-9 regex) modules; add (srfi srfi-26).
Inline 'install-sh-symlink' phase.  Remove 'install-headers' phase.  Add
'move-development-files' phase.
[native-search-paths]: New field.
(static-bash)[outputs]: New field.
[arguments]: Delete 'move-development-files' phase.
* gnu/packages/commencement.scm (static-bash-for-glibc)
(bash-final): Remove 'native-inputs'.
2016-10-01 00:00:03 +02:00
Alex Kost b94a6ca074
gnu: Add and use gettext-minimal.
* gnu/packages/gettext.scm (gnu-gettext): Rename to...
(gettext-minimal): ... this.  Adjust synopsis and description.
(gnu-gettext): Inherit from it.
(po4a): Use 'gettext-minimal' instead of 'gnu-gettext'.
* gnu/packages/acl.scm: Likewise.
* gnu/packages/admin.scm: Likewise.
* gnu/packages/apl.scm: Likewise.
* gnu/packages/attr.scm: Likewise.
* gnu/packages/audio.scm: Likewise.
* gnu/packages/base.scm: Likewise.
* gnu/packages/cdrom.scm: Likewise.
* gnu/packages/commencement.scm: Likewise.
* gnu/packages/crypto.scm: Likewise.
* gnu/packages/databases.scm: Likewise.
* gnu/packages/disk.scm: Likewise.
* gnu/packages/documentation.scm: Likewise.
* gnu/packages/education.scm: Likewise.
* gnu/packages/engineering.scm: Likewise.
* gnu/packages/enlightenment.scm: Likewise.
* gnu/packages/fcitx.scm: Likewise.
* gnu/packages/fontutils.scm: Likewise.
* gnu/packages/freedesktop.scm: Likewise.
* gnu/packages/games.scm: Likewise.
* gnu/packages/gkrellm.scm: Likewise.
* gnu/packages/glib.scm: Likewise.
* gnu/packages/gnome.scm: Likewise.
* gnu/packages/grub.scm: Likewise.
* gnu/packages/gtk.scm: Likewise.
* gnu/packages/guile.scm: Likewise.
* gnu/packages/ibus.scm: Likewise.
* gnu/packages/irc.scm: Likewise.
* gnu/packages/iso-codes.scm: Likewise.
* gnu/packages/kde-frameworks.scm: Likewise.
* gnu/packages/kodi.scm: Likewise.
* gnu/packages/linux.scm: Likewise.
* gnu/packages/man.scm: Likewise.
* gnu/packages/maths.scm: Likewise.
* gnu/packages/mono.scm: Likewise.
* gnu/packages/mp3.scm: Likewise.
* gnu/packages/music.scm: Likewise.
* gnu/packages/nano.scm: Likewise.
* gnu/packages/networking.scm: Likewise.
* gnu/packages/package-management.scm: Likewise.
* gnu/packages/pdf.scm: Likewise.
* gnu/packages/sawfish.scm: Likewise.
* gnu/packages/statistics.scm: Likewise.
* gnu/packages/terminals.scm: Likewise.
* gnu/packages/version-control.scm: Likewise.
* gnu/packages/vpn.scm: Likewise.
* gnu/packages/w3m.scm: Likewise.
* gnu/packages/webkit.scm: Likewise.
* gnu/packages/wicd.scm: Likewise.
* gnu/packages/wine.scm: Likewise.
* gnu/packages/xdisorg.scm: Likewise.
* gnu/packages/xorg.scm: Likewise.
2016-09-28 17:54:50 +03:00
Manolis Ragkousis d75acc293d
gnu: commencement: Add support for a native GNU/Hurd system.
* gnu/packages/commencement.scm (kernel-headers-boot0,
  ld-wrapper-boot0, bison-boot0, flex-boot0, gnumach-headers-boot0,
  mig-boot0, hurd-headers-boot0, hurd-minimal-boot0,
  hurd-kernel-headers-boot0): New variables.
  (bison-boot1): Remove.
  (%boot1-inputs): Add ld-wrapper-boot0.
  (glibc-final-with-bootstrap-bash)[arguments]: Allow libpthread
  to find libihash.
  [propagated-inputs]: Use kernel-headers-boot0.
  [inputs]: Add "mig".
  (glibc-final)[arguments]: Use kernel-headers-boot0.
  (static-bash-for-glibc, bash-final)[native-inputs]: Use bison-boot0.
2016-08-10 15:41:00 -04:00
Mark H Weaver 622c22ccb4
Merge branch 'master' into core-updates 2016-07-28 14:13:26 -04:00
Ludovic Courtès 386b71d1b9
gnu: commencement: 'guile-final' is now "hidden".
This way, we no longer have this annoying warning:

  $ guix build guile -n
  guix build: warning: ambiguous package specification `guile'
  guix build: warning: choosing guile-2.0.11 from gnu/packages/guile.scm:128:2

* gnu/packages/commencement.scm (guile-final): Use 'hidden-package'.
* tests/packages.scm ("fold-packages, hidden package"): New test.
2016-07-28 18:53:13 +02:00
Ludovic Courtès 9dee9e8ffe
Revert "gnu: Default to GCC 5."
This reverts commit e3d0fcbf7e.
This is a temporary measure until GCC 5 builds on ARM, see:

  https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71399
2016-06-07 10:52:04 +02:00
Leo Famulari eb74eb4199
Merge branch 'master' into core-updates 2016-05-13 02:08:11 -04:00
Manolis Ragkousis 55de892b43 gnu: glibc: Rename linux-headers input to kernel-headers.
* gnu/packages/base.scm (glibc)[propagated-inputs]: Use a kernel
  agnostic name for the kernel headers.
  [arguments]: Adjust accordingly.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)
  [propagated-inputs]: Adjust accordingly.
* gnu/packages/cross-base.scm (cross-gcc-arguments)[arguments]: Adjust
  accordingly.
  (cross-gcc)[native-inputs]: Adjust accordingly.
* gnu/packages/make-bootstrap.scm (%glibc-stripped)[arguments]: Adjust
  accordingly.
  [inputs]: Adjust accordingly.
2016-05-10 14:39:50 +03:00
Ludovic Courtès e760ec4187
gnu: gcc: Add 6.1.0.
* gnu/packages/gcc.scm (gcc-6): New variable.
* gnu/packages/commencement.scm (gcc-toolchain-6): New variable.
2016-05-03 17:45:29 +02:00
Ludovic Courtès e3d0fcbf7e
gnu: Default to GCC 5.
* gnu/packages/patches/gcc-libiberty-printf-decl.patch: New file.
* gnu/packages/gcc.scm (gcc-5)[source]: Use it.
(gcc): Switch to GCC-5.
* gnu/packages/commencement.scm (libstdc++-boot0): New variable.
(gcc-boot0)[inputs]: Add it.
[native-inputs]: Remove.
(gcc-toolchain-4.9): Switch to GCC-4.9.
(gcc-toolchain-5): Switch to GCC-FINAL.
* gnu-system.am (dist_patch_DATA): Add 'gcc-libiberty-printf-decl.patch'.
2016-04-24 22:51:07 +02:00