summaryrefslogtreecommitdiff
path: root/gnu/packages/commencement.scm
AgeCommit message (Collapse)Author
2019-11-07gnu: commencement: Ensure 'gnu-make-final' refers to the native 'pkg-config'.Ludovic Courtès
Fixes <https://bugs.gnu.org/38093>. When running: guix build --target=arm-linux-gnueabihf -e '(@ (gnu packages base) coreutils)' the '%current-target-system' parameter is set by the time the top-level of (gnu packages commencement) is evaluated. Consequently, we need to ensure that the 'pkg-config' macro evaluates in a context where '%current-target-system' is unset. * gnu/packages/commencement.scm (gnu-make-final): Refer to '%pkg-config' instead of 'pkg-config'. * tests/guix-build.sh: Add test.
2019-11-04gnu: commencement: Memoize uses of 'cross-gcc-wrapper'.Ludovic Courtès
This improves caching down the road. * gnu/packages/commencement.scm (gcc-boot0-intermediate-wrapped) (gcc-boot0-wrapped): Use 'mlambda' instead of 'lambda'.
2019-10-14gnu: commencement: Use 'package-with-explicit-inputs' for Hurd packages.Ludovic Courtès
* gnu/packages/commencement.scm (with-boot0): New procedure. (gnumach-headers-boot0, mig-boot0) (hurd-headers-boot0, hurd-minimal-boot0) (hurd-core-headers-boot0): Use it instead of 'package-with-explicit-inputs'.
2019-10-14gnu: commencement: Further optimize the package object graph.Ludovic Courtès
For a package like: (define-public xxx (package (inherit (@ (gnu packages base) coreutils)) (name "xxx") (inputs (@ (gnu packages commencement) %final-inputs)) (native-inputs '()) (propagated-inputs '()) (arguments '(#:implicit-inputs? #f)))) this reduces the package object graph from 176 nodes (1852 edges) to 113 nodes (1114 edges). The number of 'add-data-to-store' calls in "guix build coreutils -nd" drops from 2045 to 1301, and the number of memoization tables drops from 102 to 40. "guix build libreoffice -nd" goes from 2.40s to 2.27s. * gnu/packages/commencement.scm (with-boot4): New variable. (guile-final, glibc-utf8-locales-final): Use it. (with-boot4, with-boot5): New variable. (gnu-make-final): Rewrite to avoid 'package-with-explicit-inputs'. (coreutils-final): Use 'with-boot5' instead of 'package-with-explicit-inputs'. (grep-final): Likewise. (with-boot6): New variable. (sed-final, %final-inputs): Use it.
2019-10-12gnu: ld-wrapper: Memoize.Ludovic Courtès
The command: guix graph -e '(@@ (gnu packages commencement) coreutils-final)' now shows 93 nodes (992 edges) instead of 176 nodes (1241 edges). * gnu/packages/commencement.scm (ld-wrapper-boot0): Use 'mlambda' instead of 'lambda'. (ld-wrapper-boot3): Likewise.
2019-10-12gnu: Improve memoization of 'package-with-bootstrap-guile'.Ludovic Courtès
Before that, the command: GUIX_PROFILING=memoization guix build -e '(@@ (gnu packages commencement) gnu-make-final)' -nd would show that 'package-with-bootstrap-guile' was called 2256 times (hit rate: 89%). Now, it is called 745 times (hit rate: 85%). "guix build libreoffice -nd" goes from 2.60s to 2.40s (-8%). * gnu/packages/commencement.scm (gnu-make-final) (coreutils-final, grep-final, sed-final, %final-inputs): Call 'package-with-bootstrap-guile' before 'package-with-explicit-inputs'.
2019-10-12gnu: commencement: Reduce the graph of package objects.Ludovic Courtès
The graph returned by: guix graph -e '(@@ (gnu packages commencement) guile-final)' now contains 94 nodes (664 edges) instead of 394 (2674 edges). Likewise, this command: GUIX_PROFILING=add-data-to-store-cache guix build coreutils -nd shows that the number of lookups to the 'add-data-to-store' caches goes from 8935 to 5303. Overall, "guix build libreoffice -nd" goes from 3.17s to 2.60s (-18%). * gnu/packages/commencement.scm (diffutils-boot0): Remove call to 'package-with-bootstrap-guile' and 'package-with-explicit-inputs', and adjust accordingly. (findutils-boot0, file-boot0, binutils-boot0, libstdc++-boot0) (gcc-boot0, perl-boot0, m4-boot0, bison-boot0, flex-boot0) (linux-libre-headers-boot0, texinfo-boot0, python-boot0) (ld-wrapper-boot0, glibc-final-with-bootstrap-bash) (static-bash-for-glibc, gettext-boot0, glibc-final, binutils-final) (libstdc++, zlib-final, bash-final): Likewise. (expat-sans-tests)[inputs]: New field. [arguments]: Add #:implicit-inputs? and #:guile. (m4-boot0*): New variable.
2019-10-12gnu: Remove unnecessary uses of 'package-with-bootstrap-guile'.Ludovic Courtès
This reduces the object graph returned by: guix graph -e '(@@ (gnu packages commencement) glibc-final-with-bootstrap-bash) from 333 nodes (1542 edges) to 148 nodes (886 edges). This improves 'package-derivation' memoization and, consequently, the 'add-data-to-store' cache shown by: GUIX_PROFILING=add-data-to-store-cache guix build coreutils -nd goes from 10948 lookups to 8935 lookups. * gnu/packages/commencement.scm (mes-boot): Remove call to 'package-with-bootstrap-guile'. Call 'bootstrap-origin' on the source of NYACC-0.86. (tcc-boot0): Likewise. (tcc-boot): Remove call to 'package-with-bootstrap-guile' and call 'bootstrap-origin' on its source. (make-mesboot0): Remove call to 'package-with-bootstrap-guile'. (diffutils-mesboot): Likewise. (binutils-mesboot0): Likewise, and call 'bootstrap-origin' for its source. (gcc-core-mesboot): Likewise. (mesboot-headers): Remove call to 'package-with-bootstrap-guile'. (glibc-mesboot0): Likewise, and call 'bootstrap-origin' for its source. (gcc-mesboot0): Remove call to 'package-with-bootstrap-guile'. (binutils-mesboot): Likewise. (make-mesboot): Likewise. (gcc-mesboot1): Likewise, and call 'bootstrap-origin' for its source. (gcc-mesboot1-wrapper): Remove call to 'package-with-bootstrap-guile'. (glibc-headers-mesboot): Likewise, and call 'bootstrap-origin' for its source. (glibc-mesboot): Remove call to 'package-with-bootstrap-guile'. (gcc-mesboot): Likewise, and call to 'bootstrap-origin' for its source. (gcc-mesboot-wrapper): Remove call to 'package-with-bootstrap-guile'. (m4-mesboot): Likewise. (gnu-make-boot0): Likewise, and call 'bootstrap-origin' for its source.
2019-09-08maint: Placate 'assert-no-store-file-names'.Ludovic Courtès
Reported by Vagrant Cascadian <vagrant@debian.org>. * Makefile.am (assert-no-store-file-names): Exclude "binutils-boot-2.20.1a.patch" since it contains a store file name as a comment. * gnu/packages/commencement.scm (glibc-mesboot0): Use an ellipsis instead of an actual store file name in comment.
2019-09-08bootstrap: mes-boot: Fix at 0.19.Jan Nieuwenhuizen
This allows updating Mes without triggering a rebuild. * gnu/packages/commencement.scm (mes-boot): Fix 0.19.
2019-09-06Merge branch 'master' into core-updatesMark H Weaver
2019-09-04gnu: glibc-utf8-locales: Fix cross-compilation.Mathieu Othacehe
* gnu/packages/base.scm (glibc-utf8-locales)[inputs]: Move to ... [native-inputs]: ... here, in order to fix cross-compilation. * gnu/packages/commencement.scm (glibc-utf8-locales-final)[inputs]: Move to ... [native-inputs]: ... here, in order to fix cross-compilation.
2019-08-28gnu: bison-boot0: Build sequentially.Ludovic Courtès
This is a followup to 2c35ae82192fd6f1732b15fa41aec87aa61a1879 and b1593c1c4fd8f4fc6df4c43cab51334426e3aa76. * gnu/packages/commencement.scm (bison-boot0)[arguments]: Add #:parallel-build? and #:parallel-tests? on x86.
2019-07-17Merge branch 'master' into core-updatesLudovic Courtès
2019-07-16gnu: Allow building toolchain with non-default libc.Carl Dong
* gnu/packages/base.scm (make-gcc-libc): Make public. * gnu/packages/commencement.scm (make-gcc-toolchain): Add 'libc' optional argument to specify using a non-default glibc package, also make public.
2019-07-09gnu: flex: Remove superfluous input.Marius Bakke
The configure script will warn that "make indent" is unavailable, but apart from that this input is not actually used for the build process. * gnu/packages/flex.scm (flex)[inputs]: Remove INDENT. * gnu/packages/commencement.scm (flex-boot0)[inputs]: Likewise.
2019-07-09gnu: Python: Update to 3.7.4.Marius Bakke
* gnu/packages/python.scm (python-3.7): Update to 3.7.4. [source](snippet): Move disabled tests ... [arguments]<#:make-flags>: ... here. Enable previously failing tests. <#:phases>: Add 'set-TZDIR'. [native-inputs]: Add TZDATA-FOR-TESTS. * gnu/packages/commencement.scm (python-boot0)[arguments]: Clear <#:make-flags>. Delete 'set-TZDIR' phase. * gnu/packages/patches/python-3-fix-tests.patch: Disable two new tests that do not work in the build container. Adjust context.
2019-07-07gnu: commencement: Fix Python build on non-x86 platforms.Marius Bakke
* gnu/packages/commencement.scm (python-boot0)[version, source]: Downgrade to 3.5.7. [arguments]: Remove <#:make-flags>. Add <#:phases>. [native-inputs]: Remove artifical dependency on PKG-CONFIG.
2019-07-02gnu: glibc: Update to 2.29.Marius Bakke
* gnu/packages/patches/glibc-bootstrap-system.patch, gnu/packages/patches/glibc-supported-locales.patch: Adjust for glibc 2.29. * gnu/packages/patches/glibc-2.28-supported-locales.patch, gnu/packages/patches/glibc-CVE-2019-7309.patch, gnu/packages/patches/glibc-CVE-2019-9169.patch, gnu/packages/patches/glibc-2.29-git-updates.patch: New files. * gnu/local.mk (dist_patch_DATA): Adjust accordingly. * gnu/packages/base.scm (glibc): Update to 2.29. [source](patches): Add 'glibc-CVE-2019-7309.patch', 'glibc-CVE-2019-9169.patch', and 'glibc-2.29-git-updates.patch'. Remove 'glibc-hurd-magic-pid.patch'. [native-inputs]: Add PYTHON-MINIMAL. (glibc-2.28): New public variable. * gnu/packages/commencement.scm (expat-sans-tests, python-boot0): New variables. (glibc-final-with-bootstrap-bash)[native-inputs]: Add PYTHON-BOOT0. * gnu/packages/python.scm (python-3.7)[arguments]: Disable test that fails with glibc 2.29.
2019-07-02gnu: linux-libre-headers: Update to 4.19.56.Marius Bakke
* gnu/packages/linux.scm (linux-libre-headers-4.14.67): Rename to ... (linux-libre-headers-4.19.56): ... this. Adjust hash accordingly. (linux-libre-headers): Set to LINUX-LIBRE-HEADERS-4.19.56. * gnu/packages/commencement.scm (linux-libre-headers-boot0)[native-inputs]: Add FLEX-BOOT0 and BISON-BOOT0.
2019-07-02gnu: commencement: Remove outdated comment.Marius Bakke
* gnu/packages/commencement.scm (bison-boot0): Remove bash comment, which is no longer accurate.
2019-07-02gnu: gettext: Update to 0.20.1.Marius Bakke
* gnu/packages/gettext.scm (gettext-minimal): Update to 0.20.1. [source](snippet): Remove. [inputs]: Remove EXPAT. Add LIBUNISTRING, LIBXML2, and NCURSES. [arguments]: Add #:configure-flags and a "patch-fixed-paths" phase. Delete "link-expat" phase. * gnu/packages/commencement.scm (gettext-boot0): Stay on version 0.19.8.1. [arguments]: Adjust accordingly. Co-authored-by: Miguel <rosen644835@gmail.com>
2019-06-20gnu: commencement: Return #t from all phases.Marius Bakke
While at it, remove useless (and ...) indirections, because the procedures never return #f anyway: instead they would raise an exception upon failure. * gnu/packages/commencement.scm (mes-boot, tcc-boot0, tcc-boot, diffutils-mesboot, binutils-mesboot0, gcc-core-mesboot, gcc-mesboot0, glibc-headers-mesboot, glibc-mesboot, gnu-make-boot0): Return #t from phases and remove (and ...) blocks.
2019-06-17gnu: gcc-mesboot-wrapper: Fix 'version' field.Ludovic Courtès
Until now the 'version' field would match 'gcc-mesboot1-wrapper' ("4.7.4") instead of that of 'gcc-mesboot' ("4.9.4"). * gnu/packages/commencement.scm (gcc-mesboot-wrapper)[version]: New field.
2019-06-17gnu: commencement: '%bootstrap-inputs+toolchain' no longer contains Mes.Ludovic Courtès
* gnu/packages/commencement.scm (%bootstrap-inputs+toolchain): On i686-linux and x86_64-linux, remove "bootstrap-mescc-tools" and "mes" from %BOOTSTRAP-INPUTS.
2019-06-13gnu: mes-boot, tcc-boot0: Require nyacc 0.86.Ludovic Courtès
This is a followup to b8016467273d06ffe3780ac97d38acfd72ce15d9. * gnu/packages/commencement.scm (mes-boot, tcc-boot0): Use source from NYACC-0.86 instead of NYACC.
2019-05-25Merge branch 'staging' into core-updatesMarius Bakke
2019-05-06gnu: gcc: Add 9.1.0.Carl Dong
* gnu/packages/gcc.scm (gcc-9): New variable. * gnu/packages/commencement.scm (gcc-toolchain-9): New variable. * gnu/packages/patches/gcc-9-strmov-store-file-names.patch: New file. * gnu/local.mk (dist_patch_DATA): Add the patch. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-01Merge branch 'master' into core-updatesMarius Bakke
2019-03-31gnu: Fix descriptions to not use quotes.Efraim Flashner
* gnu/packages/admin.scm (wpa-supplicant-minimal, mingetty, di), * gnu/packages/audio.scm (fil-plugins), * gnu/packages/base.scm (make-ld-wrapper, make-glibc-locales), * gnu/packages/bioinformatics.scm (r-samtools), * gnu/packages/chez.scm (chez-mit), * gnu/packages/commencement.scm (make-gcc-toolchain), * gnu/packages/compression.scm (fastjar), * gnu/packages/cran.scm (r-maps, r-rcpp), * gnu/packages/databases.scm (sparql-query), * gnu/packages/dunst.scm (dunst), * gnu/packages/ftp.scm (ncftp), * gnu/packages/gl.scm (freeglut), * gnu/packages/haskell-check.scm (ghc-tasty-golden), * gnu/packages/haskell.scm (ghc-case-insensitive, ghc-text, ghc-haskell-src, ghc-syb, ghc-deepseq-generics, ghc-network-uri, ghc-rerebase, ghc-zlib), * gnu/packages/image.scm (jbig2dec), * gnu/packages/kde-frameworks.scm (kinit, karchive), * gnu/packages/linux.scm (wireless-tools, perf, module-init-tools, kbd), * gnu/packages/lirc.scm (lirc), * gnu/packages/lisp.scm (uglify-js), * gnu/packages/mate.scm (mate-netbook), * gnu/packages/microcom.scm (microcom), * gnu/packages/music.scm (bristol), * gnu/packages/networking.scm (perl-geo-ip), * gnu/packages/patchutils.scm (patches), * gnu/packages/perl-check.scm (perl-test-more-utf8), * gnu/packages/perl.scm (perl-log-report-optional, perl-file-which, perl-io-tty, perl-log-any, perl-digest-sha1, perl-class-load, perl-regexp-common, perl-module-pluggable, perl-class-modifier), * gnu/packages/python-xyz.scm (python-backports-abc, python-natsort), * gnu/packages/samba.scm (iniparser), * gnu/packages/search.scm (mlocate), * gnu/packages/spice.scm (spice), * gnu/packages/statistics.scm (r-dt, r-lubridate, r-estimability, r-commonmark, r-digest, r-viridislite, r-stringr), * gnu/packages/tex.scm (texlive-latex-changebar), * gnu/packages/version-control.scm (subversion), * gnu/packages/w3m.scm (w3m), * gnu/packages/web.scm (perl-http-parser, perl-plack-middleware-reverseproxy), * gnu/packages/xorg.scm (xkeyboard-config, mkfontdir, xcursor-theme, mkfontscale, xinit, font-alias)[description]: Use @code instead of quotes.
2019-02-09gnu: glibc-final-with-bootstrap-bash: Don't enable obsolete rpc.Efraim Flashner
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash) [arguments]: Remove 'enable-obsolete-rpc' configure flag. This brings this glibc package in line with the other glibc packages which are also built without the pre-2.14 glibc RPC functions. These functions cause build failures on armhf-linux and aarch64-linux.
2019-02-09gnu: Use GCC 7 as the default compiler.Marius Bakke
* gnu/packages/cross-base.scm (%gcc-cross-include-paths): Remove CROSS_C_INCLUDE_PATH & co in favor of CROSS_CPATH. * gnu/build/cross-toolchain.scm (%gcc-cross-include-paths): Likewise. (cross-gcc-build-phases): Set CROSS_C_INCLUDE_PATH and CROSS_CPLUS_INCLUDE_PATH when building the cross GCC. * gnu/packages/commencement.scm (libstdc++): Add "--disable-libstdcxx-dual-abi" to #:configure-flags. (gcc-boot0)[arguments]: Add "--disable-libmpx" to #:configure-flags. (gcc-final): Add phase to set C_INCLUDE_PATH and CPLUS_INCLUDE_PATH before building GCC. (gcc-toolchain-5): Use MAKE-GCC-TOOLCHAIN. (gcc-toolchain-7): Change to GCC-TOOLCHAIN. * gnu/packages/gcc.scm (gcc): Change from GCC-5 to GCC-7. (gfortran): Change to GFORTRAN-7. (gcc-objc): Change to GCC-OBJC-7. (gcc-objc++): Change to GCC-OBJC++-7. * gnu/packages/rust.scm (rust-1.19.0)[native-search-paths]: Change from C_INCLUDE_PATH & co to CPATH.
2019-01-07gnu: diffutils: Update to 3.7.Efraim Flashner
* gnu/packages/base.scm (diffutils): Update to 3.7. [source]: Remove patch. [native-inputs]: Add perl. * gnu/packages/commencement.scm (diffutils-boot0)[native-inputs]: Don't add perl. * gnu/packages/patches/diffutils-getopt.patch: Remove file. * gnu/local.mk (dist_patch_DATA): Remove it.
2019-01-06gnu: gcc-boot0: Fix build on non-Intel systems.Efraim Flashner
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Fix 'match case for alternate systems so a 'phase is added.
2018-12-24gnu: commencement: Do not graft early bootstrap packages.Ludovic Courtès
This is a followup to e47c69f22638dc92ee962942b8e24284c8dee832 and a repetition of f00b85ff8d34df0a1879e593d4a85629b8586af7. * gnu/packages/commencement.scm (file-boot0): Use 'inherit' instead of 'package/inherit'.
2018-12-24gnu: file: Fix CVE-2018-10360.Efraim Flashner
* gnu/packages/patches/file-CVE-2018-10360.patch: New file. * gnu/packages/file.scm (file)[replacement]: New field. (file/fixed): New variable. * gnu/packages/commencement.scm (file-boot0): Use 'package/inherit' to receive security fixes. * gnu/local.mk (dist_patch_DATA): Register it.
2018-12-20bootstrap: tcc-boot0: Update for mes 0.19.Jan Nieuwenhuizen
* gnu/packages/commencement.scm (tcc-boot0): Update for mes 0.19.
2018-12-20bootstrap: mes-boot: Update for mes 0.19.Jan Nieuwenhuizen
* gnu/packages/commencement.scm (mes-boot): Update for mes 0.19. (mes-boot0): Remove.
2018-12-16bootstrap: Add mes-boot0; decouple mes-boot from Mes.Jan Nieuwenhuizen
* gnu/packages/commencement.scm (mes-boot0): New variable. (mes-boot): Use it.
2018-12-16bootstrap: Remove development hacks.Jan Nieuwenhuizen
* gnu/packages/commencement.scm (%fake-bootstrap?): Remove. Update users to always keep true bootstrap; i.e., do not use %bootstrap-guile. (mes-boot0): Remove. Update users. (nyacc-boot): Likewise.
2018-12-16bootstrap: Do not fake, use Mes instead of Guile.Jan Nieuwenhuizen
* gnu/packages/commencement.scm (%fake-bootstrap?): Do not fake, use Mes instead of Guile.
2018-12-11bootstrap: mes-boot: Use mes-boot0 version.Jan Nieuwenhuizen
* gnu/packages/commencement.scm (mes-boot): Use mes-boot0 version.
2018-11-24gnu: Remove duplicate linux-libre-headers package from bootstrap inputs.Marius Bakke
GLIBC-FINAL already propagates linux-libre-headers, so drop the bootstrap input. * gnu/packages/commencement.scm (%boot2-inputs): Remove %BOOTSTRAP-LINUX-LIBRE-HEADERS.
2018-11-24gnu: gcc-boot0: Improve gcc-wrapper workarounds.Marius Bakke
* gnu/packages/commencement.scm (gcc-boot0)[arguments]: Adjust the libcc1 build scripts instead of copying libcc1.so from %BOOT0-INPUTS.
2018-11-24gnu: libstdc++-boot0: Improve gcc-wrapper workaround.Marius Bakke
* gnu/packages/commencement.scm (libstdc++-boot0): Adjust the configure script instead of copying libstdc++.so from %BOOT0-INPUTS.
2018-11-24gnu: Remove gcc-for-libstdc++.Marius Bakke
* gnu/packages/commencement.scm (gcc-for-libstdc++): Remove variable. (libstdc++-boot0): Inherit GCC-4.9 instead.
2018-11-24bootstrap: Force i686-linux for bootstrap-tarballs.Jan Nieuwenhuizen
* gnu/packages/make-bootstrap.scm (%mescc-tools-static): Force i686-linux for bootstrap-tarballs. (%mes-minimal): Likewise. Remove i686-linux cross-compiler dependency. * gnu/packages/commencement.scm (mes-boot): Support strict i686-linux build on x86_64.
2018-11-18bootstrap: Replace %mescc-tools-seed with %bootstrap-mescc-tools.Jan Nieuwenhuizen
* gnu/packages/bootstrap.scm (%mescc-tools-seed): Remove. (%bootstrap-inputs): Replace %mescc-tools-seed with %bootstrap-mescc-tools. * gnu/packages/commencement.scm (mes-boot): Likewise. (tcc-boot0): Likewise. (mescc-tools-boot): Remove.
2018-10-23bootstrap: Build with %bootstrap-mes.Jan Nieuwenhuizen
* gnu/packages/bootstrap.scm (%tinycc-seed): Remove. (%bootstrap-inputs): Use %bootstrap-mes instead of %mes-seed and %tinycc-seed. * gnu/packages/commencement.scm (mescc-tools-boot, mes-boot, tcc-boot0): Build with %bootstrap-mes instead of %mes-seed and %tinycc-seed.
2018-10-23gnu: mescc-tools: Update to 0.5.2-0.bb062b0d.Jan Nieuwenhuizen
* gnu/packages/mes.scm (mescc-tools): Update to 0.5.2-0.bb062b0d. mescc * gnu/packages/commencement.scm (mescc-tools-boot): Stay at 0.5.2