summaryrefslogtreecommitdiff
path: root/guix/build
Commit message (Collapse)AuthorAge
...
* | | | utils: Do not raise exceptions in delete-file-recursively.Maxim Cournoyer2020-10-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes it so that delete-file-recursively honors its docstring, which says it should "report but ignore errors". Fixes <https://issues.guix.gnu.org/43366>. * guix/build/utils.scm (warn-on-error): New syntax. (delete-file-recursively): Use it to catch exceptions and print warning messages. Reported-by: Fredrik Salomonsson <plattfot@gmail.com>
* | | | utils: Add 'call-with-temporary-output-file'.Ludovic Courtès2020-09-19
| | | | | | | | | | | | | | | | | | | | | | | | * guix/utils.scm: Re-export 'call-with-temporary-output-file'. (call-with-temporary-output-file): Move to... * guix/build/utils.scm (call-with-temporary-output-file): ... here.
* | | | Remove (guix build rpath).Ludovic Courtès2020-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This file was unused and is now superseded by (guix build gremlin). * guix/build/rpath.scm: Remove. * Makefile.am (MODULES): Remove it.
* | | | gremlin: Add 'set-file-runpath', 'file-runpath', and 'file-needed'.Ludovic Courtès2020-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/build/gremlin.scm (file-dynamic-info, file-runpath, file-needed): New procedures. (&missing-runpath-error, &runpath-too-long-error): New condition types. (set-file-runpath): New procedure. * tests/gremlin.scm ("set-file-runpath + file-runpath"): New test.
* | | | build-system/gnu: strip with --strip-unneededJakub Kądziołka2020-09-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Apart from debug information, one can also strip some symbols. This can be a significant difference, qtbase:out consists of about 5 MB of those symbols. As per [1], --strip-debug is included in --strip-unneeded, and the debug files created also contain a copy of the information removed by --strip-unneeded. Linux From Scratch suggests that this option shouldn't be used on static libraries [2], however other sources [3] indicate otherwise. Building a toolchain with this patch succeeds, and the result works fine for 'gcc -static hello-world.c'. [1]: https://stackoverflow.com/a/52555093 [2]: http://www.linuxfromscratch.org/lfs/view/9.1/chapter05/stripping.html [3]: https://www.technovelty.org/linux/stripping-shared-libraries.html * guix/build/gnu-build-system.scm (strip): Use --strip-unneeded.
* | | | Merge remote-tracking branch 'origin/master' into core-updatesMaxim Cournoyer2020-09-14
|\| | |
| * | | android-repo-download: Use parallel-job-count instead of hard-coding jobDanny Milosavljevic2020-09-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | count. * guix/build/android-repo.scm (android-repo-fetch): Use parallel-job-count instead of hard-coding job count.
| * | | Add (guix android-repo-download).Danny Milosavljevic2020-09-02
| | | | | | | | | | | | | | | | | | | | | | | | * guix/build/android-repo.scm: New file. * guix/android-repo-download.scm: New file. * Makefile.am (MODULES): Add them.
* | | | utils: 'dump-port' has an optional 'len' parameter.Ludovic Courtès2020-09-10
| | | | | | | | | | | | | | | | | | | | * guix/build/utils.scm (dump-port): Add optional 'len' parameter and honor it.
* | | | build: ruby-build-system: Remove an extraneous binding.Maxim Cournoyer2020-09-01
| | | | | | | | | | | | | | | | | | | | * guix/build/ruby-build-system.scm (install): Remove the RUBY-VERSION binding, no longer used. Fix the indentation of a comment.
* | | | build: ruby-build-system: Adjust replace-git-ls-files.Maxim Cournoyer2020-08-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file names returned by `find ...` instead of `git ls-files...` contains leading './' characters, which can cause problems when the file lists is further processed with regexps, for example, as was discovered while updating the ruby-asciidoctor package in commit 5df1126c3adf557f3a5b386e391e7cb56b9c1d63. * guix/build/ruby-build-system.scm (replace-git-ls-files): Strip the first two characters ("./") of the file names returned by the 'find' command. Fix typo in doc. Simplify '(when (not ...' into '(unless ...'.
* | | | Merge remote-tracking branch 'origin/master' into core-updatesMathieu Othacehe2020-08-26
|\| | |
| * | | Use guile-zlib extension in build-side code.Mathieu Othacehe2020-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | | build-system/haskell: Do not pass "--bindir" during configure.Ricardo Wurmus2020-08-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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".
| * | | build-system/haskell: Add 'extra-directories' keyword.Timothy Sample2020-08-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | | haskell-build-system: register: Remove references to the doc output.Ricardo Wurmus2020-08-12
| | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | | haskell-build-system: register: Respect lib output.Ricardo Wurmus2020-08-12
| | | | | | | | | | | | | | | | * guix/build/haskell-build-system.scm (register): Use lib output if it exists.
| * | | build-system/haskell: Add default output "static".Ricardo Wurmus2020-08-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | | build-system/haskell: Configure to link with shared libraries.Ricardo Wurmus2020-08-12
| | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | | build-system/haskell: Refactor configure step.Ricardo Wurmus2020-08-12
| | | | | | | | | | | | | | | | | | | | * guix/build/haskell-build-system.scm (configure): Replace append with quasiquotes and splicing.
| * | | build-system/haskell: Support parallel builds.Ricardo Wurmus2020-08-12
| | |/ | |/| | | | | | | | | | | | | | | | * 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.
* | | Merge branch 'master' into core-updatesJakub Kądziołka2020-07-23
|\| | | | | | | | | | | | | | Conflicts: gnu/packages/ruby.scm
| * | guix: Add maven-build-system.Julien Lepiller2020-07-17
| | | | | | | | | | | | | | | | | | | | | * 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.
| * | guix: java-utils: Add Maven-related phases.Julien Lepiller2020-07-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
| * | download-nar: Hide colliding 'dump-port*' binding.Ludovic Courtès2020-07-10
| | | | | | | | | | | | | | | * guix/build/download-nar.scm: Hide 'dump-port*' from (guix serialization).
| * | maint: Remove traces of "berlin.guixsd.org".Ludovic Courtès2020-07-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | guix: build: Fix asdf-build-system/ecl.Guillaume Le Vaillant2020-07-01
| |/ | | | | | | | | * guix/build/lisp-utils.scm (make-asd-file): Fix value of 'component?' parameter when using ECL.
| * po: Micro-optimize 'read-po-file'.Ludovic Courtès2020-06-23
| | | | | | | | | | * guix/build/po.scm (parse-tree->assoc): Use dot instead of ellipsis in 'match' clause to avoid repeated calls to 'list?'.
| * po: Avoid regexps when interpreting '\n' sequences.Ludovic Courtès2020-06-23
| | | | | | | | | | | | | | | | | | | | | | 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'.
| * compile: Build gnu/{packages,tests}/* with '-O1'.Ludovic Courtès2020-06-22
| | | | | | | | | | * guix/build/compile.scm (optimization-options): Use '-O1' for the simple case.
* | build-system/python: Install to the python output if present.Jakub Kądziołka2020-07-18
| | | | | | | | | | | | | | * gnu/build/python-build-system.scm (python-output): New procedure. (site-packages, install): Use python-output to find the output path. (wrap, rename-pth-file): Use site-packages where appropriate. * doc/guix.texi (Build Systems): Mention the new behavior.
* | Merge branch 'master' into core-updatesJakub Kądziołka2020-06-22
|\|
| * build-system/asdf: Add support for component-less systems.Pierre Neidhardt2020-06-18
| | | | | | | | | | | | | | * 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.
| * build-system/gnu: Fix 'install' phase of 'gnu-dist'.Ludovic Courtès2020-06-18
| | | | | | | | | | * guix/build/gnu-dist.scm (install-dist): Fix 2nd argument to 'for-each'.
| * build-system/gnu: Rename "make dist" phase to 'build-dist'.Ludovic Courtès2020-06-17
| | | | | | | | | | * guix/build/gnu-dist.scm (%dist-phases): Add BUILD under the name 'build-dist'.
| * build-system/gnu: Remove redundant 'unpack' phase from 'gnu-dist'.Ludovic Courtès2020-06-17
| | | | | | | | | | | | | | | | This has become redundant with the standard 'unpack' phase since 17919a58012c38052133ed029450fdb98d01fb5c. * guix/build/gnu-dist.scm (copy-source): Remove. (%dist-phases): Remove 'unpack' phase.
| * build-system/gnu: Remove Hydra-specific code from 'gnu-dist'.Ludovic Courtès2020-06-17
| | | | | | | | | | * guix/build/gnu-dist.scm (install-dist): Remove code for 'hydra-build-products'.
| * build-system/gnu: Remove 'autoreconf' phase from 'gnu-dist'.Ludovic Courtès2020-06-17
| | | | | | | | | | | | | | | | This has been superseded by the 'bootstrap' phase added in 189be331acfda1c242a9c85fca8d2a0356742f48. * guix/build/gnu-dist.scm (autoreconf): Remove. (%dist-phases): Remove it.
| * profiles: Add comment at the top of 'manifest' file.Ludovic Courtès2020-06-17
| | | | | | | | | | * guix/build/profiles.scm (build-profile): Add comment at the top of MANIFEST-FILE.
* | Merge branch 'master' into core-updatesMarius Bakke2020-06-14
|\|
| * Merge branch 'master' into stagingMarius Bakke2020-06-08
| |\
| | * syscalls: set-thread-name, thread-name: Fix thinko.Jan (janneke) Nieuwenhuizen2020-06-08
| | | | | | | | | | | | * guix/build/syscalls.scm (set-thread-name, thread-name): Oops, fix thinko.
| | * syscalls: set-thread-name, thread-name: Stub for the Hurd.Jan (janneke) Nieuwenhuizen2020-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * | Merge branch 'master' into stagingMarius Bakke2020-06-06
| |\|
| | * build-system: linux-module: Allow passing #:make-flags argument.Danny Milosavljevic2020-06-02
| | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * | Merge branch 'master' into stagingMarius Bakke2020-05-29
| |\|
| | * syscalls: 'terminal-dimension' ignores EPERM.Ludovic Courtès2020-05-29
| | | | | | | | | | | | | | | | | | | | | | | | 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.
| | * syscalls: Properly match %HOST-TYPE.Jesse Dowell2020-05-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
| | * compile: Do not optimize "gnu/tests/*".Ludovic Courtès2020-05-25
| | | | | | | | | | | | | | | * guix/build/compile.scm (optimization-options): Add "gnu/tests/" to level 0.
| * | Merge branch 'master' into stagingMarius Bakke2020-05-26
| |\|