summaryrefslogtreecommitdiff
path: root/guix/build
AgeCommit message (Collapse)Author
2020-09-15build-system: asdf: Improve install phase for CL source packages.Guillaume Le Vaillant
* guix/build/asdf-build-system.scm (install)[parent-source]: Add support for package names not containing a hyphen.
2020-09-15build-system: asdf: Read all .asd files if no #:asd-files specified.Guillaume Le Vaillant
* guix/build-system/asdf.scm (asdf-build): Remove the 'files' variable. * guix/build/asd-build-system.scm (find-asd-files): New variable. (build, check): Use it.
2020-09-12build-system: asdf: Switch from bundles to regular compilation.Guillaume Le Vaillant
* gnu/packages/lisp.scm (sbcl, ecl)[native-search-paths]: Add 'XDG_CONFIG_DIRS'. * guix/build-system/asdf.scm (asdf-build): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. * guix/build/asdf-build-system.scm (%object-prefix, %lisp-source-install-prefix): Update variables. (install): Update variable. (main-system-name): New variable. (copy-source): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. (configure): New variable. (build, check): Replace 'asd-file' and 'asd-system-name' keywords by 'asd-files' and 'asd-systems'. (create-asd-file, symlink-asd-files): Remove variables. (create-asdf-configuration): New variable. (cleanup-files): Update variable. (%standard-phases): Remove 'create-asd-file' and 'symlink-asd-files' phases. Add 'configure' and 'create-asdf-configuration' phases. * guix/build/lisp-utils.scm (%bundle-install-prefix, normalize-dependency, inputs->asd-file-map, asdf-load-all, compile-system): Remove variables. (compile-systems): New variable. (system-dependencies, compiled-system, generate-system-definition): Remove variable. (test-system): Replace 'asd-file' parameter by 'asd-files'. (generate-executable-for-system): Update variable. (generate-dependency-links, make-asd-file, bundle-asd-file): Remove variables. (make-asdf-configuration): New variable. (build-program, build-image): Set 'XDG_CONFIG_DIRS'. (generate-executable): Update variable.
2020-09-05Merge remote-tracking branch 'origin/master' into stagingEfraim Flashner
2020-09-03android-repo-download: Use parallel-job-count instead of hard-coding jobDanny Milosavljevic
count. * guix/build/android-repo.scm (android-repo-fetch): Use parallel-job-count instead of hard-coding job count.
2020-09-02Add (guix android-repo-download).Danny Milosavljevic
* guix/build/android-repo.scm: New file. * guix/android-repo-download.scm: New file. * Makefile.am (MODULES): Add them.
2020-08-24Use guile-zlib extension in build-side code.Mathieu Othacehe
* Makefile.am (MODULES): Move guix/build/download-nar.scm to ... (MODULES_NOT_COMPILED): ... here. * guix/build/download-nar.scm: Use (zlib) instead of (guix zlib). * guix/cvs-download.scm (cvs-fetch): Do not stub (guix config) in imported modules list, instead add "guile-zlib" to the extension list. * guix/git-download.scm (git-fetch): Ditto. * guix/hg-download.scm (hg-fetch): Do not stub (guix config) in imported modules list, instead add "guile-zlib" to the extension list.
2020-08-13build-system/haskell: Do not pass "--bindir" during configure.Ricardo Wurmus
The "--bindir" option is not as useful as it seems as the configured location is embedded in the outputs. Instead of using "--bindir" it seems better to build a statically linked binary and move the binary to its own output to avoid references between the "out" and "bin" outputs. * guix/build/haskell-build-system.scm (configure): Do not pass "--bindir".
2020-08-13build-system/haskell: Add 'extra-directories' keyword.Timothy Sample
See <https://bugs.gnu.org/39309>. * guix/build-system/haskell.scm (lower): Include the transitive propagated inputs of 'extra-directories' inputs. (haskell-build): Add the 'extra-directories' keyword and pass it through to the builder. * guix/build/haskell-build-system.scm (configure): Use it to select which inputs get passed via 'extra-include-dirs' and 'extra-lib-dirs' to Cabal. * gnu/packages/haskell-xyz.scm (ghc-alsa-core, ghc-hmatrix, ghc-hmatrix-gsl, ghc-hslua, ghc-iwlib, ghc-libyaml, ghc-ncurses, ghc-openglraw, ghc-x11, ghc-x11-xft, ghc-zlib): Set 'extra-directories'. * gnu/packages/haskell-crypto.scm (ghc-digest, ghc-hsopenssl): Likewise.
2020-08-12haskell-build-system: register: Remove references to the doc output.Ricardo Wurmus
* guix/build/haskell-build-system.scm (register): Strip references to the doc output from the generated package config files; move the haddock files from the "doc" output to the "lib" output.
2020-08-12haskell-build-system: register: Respect lib output.Ricardo Wurmus
* guix/build/haskell-build-system.scm (register): Use lib output if it exists.
2020-08-12build-system/haskell: Add default output "static".Ricardo Wurmus
* guix/build-system/haskell.scm (lower): Add OUTPUTS keyword and add the "static" output in the common case. (haskell-build): Set the default value for the OUTPUTS keyword to include the "static" output. * guix/build/haskell-build-system.scm (install): Move static libraries to the "static" output if it exists.
2020-08-12build-system/haskell: Configure to link with shared libraries.Ricardo Wurmus
* guix/build/haskell-build-system.scm (configure): Add configure flags to build shared libraries by default, to generate position independent code, and to set the RUNPATH.
2020-08-12build-system/haskell: Refactor configure step.Ricardo Wurmus
* guix/build/haskell-build-system.scm (configure): Replace append with quasiquotes and splicing.
2020-08-12build-system/haskell: Support parallel builds.Ricardo Wurmus
* guix/build-system/haskell.scm (haskell-build): Add keyword PARALLEL-BUILD? and pass it on to the builder. * guix/build/haskell-build-system.scm (build): Accept keyword PARALLEL-BUILD? and pass the number of parallel jobs to GHC.
2020-07-24Merge branch 'master' into stagingMarius Bakke
2020-07-17guix: Add maven-build-system.Julien Lepiller
* guix/build-system/maven.scm: New file. * guix/build/maven-build-system.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document the maven build system.
2020-07-17guix: java-utils: Add Maven-related phases.Julien Lepiller
* guix/build/maven/java.scm: New file. * guix/build/maven/plugin.scm: New file. * guix/build/maven/pom.scm: New file. * Makefile.am (MODULES): Add them. * guix/build-system/ant.scm (%ant-build-system-modules): Add them to the build side. * guix/build/java-utils.scm (generate-plugin.xml, install-pom-file) (install-from-pom): New procedures.
2020-07-15build/cargo-utils: Use all allocated threads to generate checksums.Efraim Flashner
* guix/build/cargo-utils.scm (generate-all-checksums): Use n-par-for-each instead of for-each when regenerating checksums for source crates.
2020-07-10download-nar: Hide colliding 'dump-port*' binding.Ludovic Courtès
* guix/build/download-nar.scm: Hide 'dump-port*' from (guix serialization).
2020-07-10maint: Remove traces of "berlin.guixsd.org".Ludovic Courtès
The guixsd.org domain is no longer advertised since before in 1.0.0 release in May 2019. * etc/substitutes/berlin.guixsd.org.pub: Rename to... * etc/substitutes/berlin.guix.gnu.org.pub: ... this. * etc/substitutes/ci.guix.gnu.org.pub, etc/substitutes/ci.guix.info.pub: Adjust accordingly. * gnu/services/base.scm (%default-authorized-guix-keys): Likewise. * guix/build/download-nar.scm (urls-for-item): Likewise. * guix/self.scm (miscellaneous-files): Likewise. * Makefile.am (dist_pkgdata_DATA): Likewise.
2020-07-01guix: build: Fix asdf-build-system/ecl.Guillaume Le Vaillant
* guix/build/lisp-utils.scm (make-asd-file): Fix value of 'component?' parameter when using ECL.
2020-06-23po: Micro-optimize 'read-po-file'.Ludovic Courtès
* guix/build/po.scm (parse-tree->assoc): Use dot instead of ellipsis in 'match' clause to avoid repeated calls to 'list?'.
2020-06-23po: Avoid regexps when interpreting '\n' sequences.Ludovic Courtès
This reduces the execution time of: (call-with-input-file "po/doc/guix-manual.de.po" read-po-file) from 4.7s to 4.0s. * guix/build/po.scm (interpret-newline-escape): New procedure. (parse-tree->assoc): Use it instead of 'regexp-substitute/global'.
2020-06-22compile: Build gnu/{packages,tests}/* with '-O1'.Ludovic Courtès
* guix/build/compile.scm (optimization-options): Use '-O1' for the simple case.
2020-06-18build-system/asdf: Add support for component-less systems.Pierre Neidhardt
* guix/build/lisp-utils.scm (make-asd-file): Ensure lib directory exists and check if prebuilt bundle system was generated. (generate-system-definition): Add :class and :components only if prebuilt system was generated.
2020-06-18build-system/gnu: Fix 'install' phase of 'gnu-dist'.Ludovic Courtès
* guix/build/gnu-dist.scm (install-dist): Fix 2nd argument to 'for-each'.
2020-06-17build-system/gnu: Rename "make dist" phase to 'build-dist'.Ludovic Courtès
* guix/build/gnu-dist.scm (%dist-phases): Add BUILD under the name 'build-dist'.
2020-06-17build-system/gnu: Remove redundant 'unpack' phase from 'gnu-dist'.Ludovic Courtès
This has become redundant with the standard 'unpack' phase since 17919a58012c38052133ed029450fdb98d01fb5c. * guix/build/gnu-dist.scm (copy-source): Remove. (%dist-phases): Remove 'unpack' phase.
2020-06-17build-system/gnu: Remove Hydra-specific code from 'gnu-dist'.Ludovic Courtès
* guix/build/gnu-dist.scm (install-dist): Remove code for 'hydra-build-products'.
2020-06-17build-system/gnu: Remove 'autoreconf' phase from 'gnu-dist'.Ludovic Courtès
This has been superseded by the 'bootstrap' phase added in 189be331acfda1c242a9c85fca8d2a0356742f48. * guix/build/gnu-dist.scm (autoreconf): Remove. (%dist-phases): Remove it.
2020-06-17profiles: Add comment at the top of 'manifest' file.Ludovic Courtès
* guix/build/profiles.scm (build-profile): Add comment at the top of MANIFEST-FILE.
2020-06-08Merge branch 'master' into stagingMarius Bakke
2020-06-08syscalls: set-thread-name, thread-name: Fix thinko.Jan (janneke) Nieuwenhuizen
* guix/build/syscalls.scm (set-thread-name, thread-name): Oops, fix thinko.
2020-06-08syscalls: set-thread-name, thread-name: Stub for the Hurd.Jan (janneke) Nieuwenhuizen
Avoid crash Backtrace: guix/build/syscalls.scm:405:8: In procedure prctl: Function not implemented because of missing prctl on the Hurd. * guix/build/syscalls.scm (set-thread-name, thread-name): Rename to ... (set-thread-name!/linux,thread-name/linux): ...this. (set-thread-name, thread-name): Swtich between linux implementation and or stub.
2020-06-06Merge branch 'master' into stagingMarius Bakke
2020-06-02build-system: linux-module: Allow passing #:make-flags argument.Danny Milosavljevic
* guix/build-system/linux-module.scm (linux-module-build): Add #:make-flags. (linux-module-build-cross): Add #:make-flags. * guix/build/linux-module-build-system.scm (install): Pass make-flags. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-05-29Merge branch 'master' into stagingMarius Bakke
2020-05-29syscalls: 'terminal-dimension' ignores EPERM.Ludovic Courtès
Fixes <https://bugs.gnu.org/41581>. Reported by Tobias Geerinckx-Rice <me@tobias.gr>. * guix/build/syscalls.scm (terminal-dimension): Add EPERM to the list of errno code for FALL-BACK.
2020-05-29syscalls: Properly match %HOST-TYPE.Jesse Dowell
Fixes <https://bugs.gnu.org/41546>. Regression introduced in 0d371c633f7308cfde2432d6119d386a5c63198c. * guix/build/syscalls.scm (write-socket-address!) (read-socket-address): Use 'string-contains' instead of 'string-suffix?'. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-05-26Merge branch 'master' into stagingMarius Bakke
2020-05-26Merge branch 'master' into stagingMarius Bakke
2020-05-25compile: Do not optimize "gnu/tests/*".Ludovic Courtès
* guix/build/compile.scm (optimization-options): Add "gnu/tests/" to level 0.
2020-05-21build: asdf-build-system: Use SBCL source in CL packages.Pierre Neidhardt
* guix/build/asdf-build-system.scm (copy-files-to-output): Don't attempt to reset timestamps on files without write access. (install): When parent SBCL package is in the inputs, use its source. This way we get possibly patched sources in CL packages as well (e.g. for FFI). This is also useful for sources that generate files on load-op, like cl-unicode. * guix/build-system/asdf.scm (package-with-build-system): Forward the SBCL parent as a native input so that it can be used in the above install phase.
2020-05-18build: minify-build-system: Fail to install empty files.Efraim Flashner
* guix/build/minify-build-system.scm (install): Produce an error if the minified file is zero bytes.
2020-05-15syscalls: Adjust 'sockaddr-in', 'sockaddr-in6' structs for the Hurd.Jan (janneke) Nieuwenhuizen
* guix/build/syscalls.scm (sockaddr-in,sockaddr-in6): Rename to ... (sockaddr-in/linux, sockaddr-in6/linux): ... this. Rename introduced bindings as well. (write-socket-address!/linux,read-socket-address/linux): Rename from (write-socket-address!, read-socket-address): ... new switches between those and ... (write-socket-address!/hurd, read-socket-address/hurd): ... these new function.
2020-05-14syscalls: Add 'getxattr'.Jan (janneke) Nieuwenhuizen
* guix/build/syscalls.scm (getxattr): New procedure. * tests/syscalls.scm ("getxattr, setxattr"): Test it, together with setxattr.
2020-05-13compile: Reduce optimization levels for gnu/services and gnu/packages.Ludovic Courtès
* guix/build/compile.scm (optimization-options)[strip-option] [override-option]: New procedures. Add case for "gnu/services". Change "gnu/packages" to '-O0 -Opartial-eval'.
2020-05-13syscalls: Add 'setxattr'.Jan (janneke) Nieuwenhuizen
* guix/build/syscalls.scm (setxattr): New procedure. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2020-05-08Merge branch 'core-updates'Marius Bakke