Commit Graph

126 Commits

Author SHA1 Message Date
Mark H Weaver 3d5ad159b3
Merge branch 'master' into core-updates 2018-04-30 04:03:54 -04:00
Ludovic Courtès 5a48a066ab
gnu: gcc-toolchain: Add "static" output.
This allows the use of 'gcc-toolchain' to create statically-linked
executables (requires libc.a.)

* gnu/packages/commencement.scm (make-gcc-toolchain): Add "static"
output.  Add "libc-static" to 'inputs'.  Add call to 'union-build' for
the "static" output.
2018-04-28 22:33:47 +02:00
Ludovic Courtès 78ca500a75
gnu: commencement: Avoid extra Perl build in the DAG.
* gnu/packages/commencement.scm (grep-final): Move reference to
PERL-BOOT0 outside of 'package-with-explicit-inputs'.  Previously we
would actually depend on a variant of 'perl-boot0' built with
%BOOT5-INPUTS, which defeated the intent to not add an extra Perl build
in the DAG.
2018-04-01 18:48:23 +02:00
Ludovic Courtès 301a424906
gnu: sed: Update to 4.5.
* gnu/packages/base.scm (sed): Update to 4.5.
[arguments]: Remove 'patch-test-suite' phase.
[native-inputs]: New field.
2018-04-01 18:41:28 +02:00
Mark H Weaver e3cfef22c4
gnu: Use invoke and return #t from all builders.
* gnu/packages/admin.scm, gnu/packages/android.scm, gnu/packages/audio.scm,
gnu/packages/avr.scm, gnu/packages/base.scm, gnu/packages/bioinformatics.scm,
gnu/packages/certs.scm, gnu/packages/check.scm, gnu/packages/code.scm,
gnu/packages/commencement.scm, gnu/packages/dictionaries.scm,
gnu/packages/docbook.scm, gnu/packages/emacs.scm, gnu/packages/embedded.scm,
gnu/packages/fonts.scm, gnu/packages/games.scm, gnu/packages/gnome.scm,
gnu/packages/gnu-doc.scm, gnu/packages/guile.scm, gnu/packages/hurd.scm,
gnu/packages/javascript.scm, gnu/packages/libreoffice.scm,
gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lxde.scm,
gnu/packages/mail.scm, gnu/packages/markup.scm, gnu/packages/mate.scm,
gnu/packages/pkg-config.scm, gnu/packages/qt.scm, gnu/packages/rust.scm,
gnu/packages/scheme.scm, gnu/packages/sdl.scm, gnu/packages/statistics.scm,
gnu/packages/syncthing.scm, gnu/packages/tex.scm, gnu/packages/web.scm,
gnu/packages/wine.scm, gnu/packages/xfce.scm: In the builders of packages
using 'trivial-build-system', use invoke where appropriate, raise exceptions
on errors, and otherwise return #t.
2018-03-27 21:35:41 -04:00
Mark H Weaver 75f3aaced0
gnu: perl-boot0: Return #t from all phases.
* gnu/packages/commencement.scm (perl-boot0): Return #t from the
'disable-pthreads' phase.
2018-03-25 05:02:02 -04:00
Marius Bakke 5e8cb5e698
gnu: glibc: Update to 2.27.
* gnu/packages/base.scm (glibc/linux): Update to 2.27.
[source](patches): Add 'glibc-hidden-visibility-ldconfig.patch' and
'glibc-2.27-git-fixes.patch'.
[native-inputs]: Add BISON.
[arguments]: Remove deprecated "--enable-add-ons" from #:configure-flags.
Also remove unneeded "libc_cv_ssp=no" and "libcv_ssp_strong=no".
(glibc-2.26): New public variable.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash)[native-inputs]:
Add BISON-BOOT0.
* gnu/packages/patches/glibc-2.27-git-fixes.patch,
gnu/packages/patches/glibc-hidden-visibility-ldconfig.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
2018-03-22 18:58:05 +01:00
Mark H Weaver 60ff6ec48f
gettext-boot0: Return #t from chdir phase.
* gnu/packages/commencement.scm (gettext-boot0)[arguments]: Return #t from
chdir phase.
2018-03-16 09:08:35 -04:00
Ricardo Wurmus 8c72ed923d
Merge branch 'master' into core-updates 2018-03-14 17:37:20 +01:00
Ricardo Wurmus 48b97be90b
Revert "gnu: Add replacement for static-bash-for-glibc."
This reverts commit c4fb2b9f4e.
2018-03-14 16:28:22 +01:00
Ricardo Wurmus c4fb2b9f4e
gnu: Add replacement for static-bash-for-glibc.
This is needed to replace the static bash used in glibc-final.

* gnu/packages/commencement.scm (patched-glibc-final-with-bootstrap-bash,
patched-static-bash-for-glibc): New variables.
(static-bash-for-glibc)[replacement]: Use patched-static-bash-for-glibc as a
replacement.
2018-03-14 11:39:14 +01:00
Marius Bakke 5e268faf85
gnu: Remove gcc-for-libstdc++.
* gnu/packages/commencement.scm (libstdc++-boot0): Remove variable.
(libstdc++-boot0): Use GCC-4.9 instead.
2018-03-08 20:22:42 +01:00
Ludovic Courtès 7c788ed227
gnu: commencement: 'glibc-final' inherits the replacement of 'glibc'.
That was the intent of commit b672a81607,
but that commit left 'glibc-final' ungrafted.

Reported by Ricardo Wurmus at
<https://lists.gnu.org/archive/html/guix-devel/2018-02/msg00435.html>.

* gnu/packages/commencement.scm (glibc-final): Use 'package/inherit' so
that we inherit the 'replacement' of GLIBC.
2018-03-07 21:39:32 +01:00
Ludovic Courtès 0fccb24765
gnu: commencement: 'glibc-final' now inherits from 'glibc'.
* gnu/packages/commencement.scm (glibc-final): Inherit from GLIBC
instead of GLIBC-FINAL-WITH-BOOTSTRAP-BASH.
[propagated-inputs]: New fields.
2018-03-07 21:39:32 +01:00
Chris Marusich a1df45e904
gnu: commencement: Add commentary regarding grafts.
* gnu/packages/commencement.scm: Add comments that were originally
  included only in the Git commit message of
  f00b85ff8d.

Co-Authored-By: Ludovic Courtès <ludo@gnu.org>
2018-02-27 05:29:37 +01:00
Tobias Geerinckx-Rice 53bfec7bc4
gnu: commencement: Update phase style.
* gnu/packages/commencement.scm (gnu-make-boot0): Substitute INVOKE for
SYSTEM* and end phases with #t.
(glibc-final-with-bootstrap-bash)[arguments]: Use MODIFY-PHASES syntax
and end phase with #t.
(gcc-boot0)[arguments]: Do all of the above.
2018-02-20 16:06:09 +01:00
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