aboutsummaryrefslogtreecommitdiff
path: root/guix/build-system/linux-module.scm
Commit message (Collapse)AuthorAge
* gnu: linux-libre: Move documentation to a separate package.Maxim Cournoyer2022-12-06
| | | | | | | | | | | | | | | | * gnu/packages/linux.scm (linux-libre-5.15-source) (linux-libre-5.10-source): Do not apply linux-libre-infodocs-target.patch. (make-linux-libre): Remove BUILD-DOC? argument, and adjust patches conditional. (make-linux-libre*): Likewise. Remove build-doc? validation. [arguments]: Move documentation related phases to the new linux-libre-documentation. [native-inputs]: Move the documentation related native inputs to linux-libre-documentation. (linux-libre-documentation): New variable. * guix/build-system/linux-module.scm (make-linux-module-builder) [arguments]: Do not delete build-doc and install-doc phases, which no longer exist for linux-libre.
* Revert "gnu: linux-libre: Move info manual to doc output."Maxim Cournoyer2022-12-01
| | | | | | | | | | | | This reverts commit 748ec628826cea3faa3679074d87fae9bc810080. It broke the linux-libre-module-builder like so: builder for `/gnu/store/293jxydym9z7ck7afmrjqhiw3xpfs4i1-linux-libre-module-builder-6.0.10.drv' failed to produce output path `/gnu/store/ghmp1q5w6r1s9364rz53jd42152wgz2v-linux-libre-module-builder-6.0.10-doc' for reasons difficult to understand.
* gnu: linux-libre: Move info manual to doc output.Maxim Cournoyer2022-12-01
| | | | | | | | | | | | | | The kernel Linux is installed in the system profile, which means the manual was not easily discoverable. Move it to the "doc" output, so that users can install the Linux documentation explicitly in their user profile without pulling the whole Linux package. * gnu/packages/linux.scm (make-linux-libre*) [outputs]: Conditionally add a "doc" output. [phases] {install-doc}: Install the info manual to the doc output, an create a "linux" symlink to it for convenience. * guix/build-system/linux-module.scm (make-linux-module-builder): Delete the "doc" output, if present.
* build: linux-module: Do not inherit the install-doc phase.Maxim Cournoyer2022-11-29
| | | | | | | | | | | This is a followup commit to aaf1f18b8044142515ff868bcbd2b72b81ced3ec, itself a followup to 82c43b276dd5e60c81ad2c040a9d945befc4bc88 (gnu: linux-libre: Enable building info doc). * guix/build-system/linux-module.scm (make-linux-module-builder) [phases]: Also delete inherited 'install-doc phase. Reported-by: John Kehayias <john.kehayias@protonmail.com>
* build: linux-module: Do not inherit the build-doc phase.Maxim Cournoyer2022-11-29
| | | | | | | | | | This is a followup commit to 82c43b276dd5e60c81ad2c040a9d945befc4bc88 (gnu: linux-libre: Enable building info doc). * guix/build-system/linux-module.scm (make-linux-module-builder) [phases]: Delete inherited 'build-doc phase. Reported-by: John Kehayias <john.kehayias@protonmail.com>
* build-system/linux-module: Add #:source-directory to linux-module-build-cross.Christopher Baines2022-11-07
| | | | | | | | | | Otherwise computing cross-compilation derivations for packages (e.g. xpadneo) using the #:source-directory argument fails with this error: Unrecognized keyword: #:source-directory * guix/build-system/linux-module.scm (linux-module-build-cross): Support #:source-directory.
* build-system: linux-module: Directly use-module (guix platform).Josselin Poiret2022-05-25
| | | | | | | * guix/build-system/linux-module.scm (system->arch): Remove module-ref shenanigans. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* linux: Remove system->linux-architecture procedure.Mathieu Othacehe2022-05-22
| | | | | | | | | | * gnu/packages/linux.scm (system->linux-architecture): Remove it. (make-linux-libre-headers*, make-linux-libre*): Adapt them. * guix/build-system/linux-module.scm (system->arch): Adapt it. * gnu/packages/instrumentation.scm (uftrace): Ditto. * gnu/packages/cross-base.scm (cross-kernel-headers): Ditto. * gnu/packages/bioinformatics.scm (ncbi-vdb): Ditto. * doc/guix.texi (Porting to a new platform): Update it.
* build-system/linux-module: Use G-expressions.Tobias Geerinckx-Rice2022-01-16
| | | | | * guix/build-system/linux-module.scm (make-linux-module-builder) [arguments]: Rewrite as G-expressions.
* build-system/linux-module: Wrap with build variables.Tobias Geerinckx-Rice2021-12-15
| | | | | | | | * guix/build-system/linux-module.scm (linux-module-build): Wrap the builder gexp WITH-BUILD-VARIABLES to restore %build-inputs after commit 7d873f194ca69d6096d28d7a224ab78e83e34fe1 removed all old certainties. Reported by lfam in #guix.
* Merge remote-tracking branch 'origin/master' into core-updates-frozen.Mathieu Othacehe2021-10-12
|\
| * build-system: linux-module: Build and install in parallel.Tobias Geerinckx-Rice2021-10-01
| | | | | | | | | | | | | | | | * guix/build-system/linux-module.scm (linux-module-build) (guix/build-system/linux-module.scm): Accept the PARALLEL-BUILD? keyword and pass it on to the builder. * guix/build/linux-module-build-system.scm (build, install): Capture and honour it.
* | Merge branch 'master' into core-updates-frozenMarius Bakke2021-09-17
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: gnu/packages/bioinformatics.scm gnu/packages/chez.scm gnu/packages/docbook.scm gnu/packages/ebook.scm gnu/packages/gnome.scm gnu/packages/linux.scm gnu/packages/networking.scm gnu/packages/python-web.scm gnu/packages/python-xyz.scm gnu/packages/tex.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/dune.scm guix/build-system/go.scm guix/build-system/linux-module.scm guix/packages.scm
| * build-system: linux-module: Support source-directory.Liliana Marie Prikler2021-09-14
| | | | | | | | | | | | | | | | | | | | As with guile-build-system, the module to be build need not necessarily live at the root of the build tree. * guix/build/linux-module-build-system.scm (build, install): Add source-directory argument and append it to "M" variable when invoking make. * guix/build-system/linux-module.scm (linux-module-build): Add source-directory argument.
* | build-system: Use 'sexp->gexp' for plain sexps.Ludovic Courtès2021-03-30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reduces memory allocations and list traversals during 'gexp->sexp', 'gexp-inputs', etc. * guix/build-system/cargo.scm (cargo-build): Use 'sexp->gexp' for sexps known to not contain file-like objects. Change default #:phases to a symbol. * guix/build-system/cmake.scm (cmake-build, cmake-cross-build): Likewise. * guix/build-system/copy.scm (copy-build): Likewise. * guix/build-system/font.scm (font-build): Likewise. * guix/build-system/glib-or-gtk.scm (glib-or-gtk-build): Likewise. * guix/build-system/gnu.scm (%strip-flags, %strip-directories): New variables. (gnu-build): Use them. Use 'sexp->gexp' where appropriate. (gnu-cross-build): Likewise. * guix/build-system/meson.scm (meson-build): Likewise. * guix/build-system/perl.scm (perl-build): Likewise. * guix/build-system/python.scm (python-build): Likewise. * guix/build-system/ruby.scm (ruby-build): Likewise. * guix/build-system/scons.scm (scons-build): Likewise. * guix/build-system/texlive.scm (texlive-build): Likewise. * guix/build-system/trivial.scm (trivial-build): Likewise. * guix/build-system/waf.scm (waf-build): Likewise. * guix/build-system/android-ndk.scm (android-ndk-build): Likewise. * guix/build-system/ant.scm (ant-build): Likewise. * guix/build-system/asdf.scm (asdf-build/source, asdf-build): Likewise. * guix/build-system/chicken.scm (chicken-build): Likewise. * guix/build-system/clojure.scm (clojure-build): Likewise. (source->output-path, maybe-guile->guile): Remove. * guix/build-system/dub.scm (dub-build): Likewise. * guix/build-system/emacs.scm (emacs-build): Likewise. * guix/build-system/go.scm (go-build): Likewise. * guix/build-system/haskell.scm (haskell-build): Likewise. * guix/build-system/julia.scm (julia-build): Likewise. * guix/build-system/linux-module.scm (linux-module-build) (linux-module-build-cross): Likewise. * guix/build-system/maven.scm (maven-build): Likewise. * guix/build-system/minify.scm (minify-build): Likewise. * guix/build-system/node.scm (node-build): Likewise. * guix/build-system/qt.scm (qt-build, qt-cross-build): Likewise. * guix/build-system/r.scm (r-build): Likewise. * guix/build-system/rakudo.scm (rakudo-build): Likewise. * guix/build-system/renpy.scm (renpy-build): Likewise. * guix/packages.scm (patch-and-repack): Use 'sexp->gexp' when SNIPPET is a pair. * guix/svn-download.scm (svn-multi-fetch): Use 'sexp->gexp' for 'svn-multi-reference-locations'.
* | build-system: Rewrite using gexps.Ludovic Courtès2021-03-30
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * guix/packages.scm (expand-input): Remove 'store', 'system', and 'cross-system' parameters; add #:native?. Rewrite to return name/gexp-input tuples. (bag->derivation): Adjust accordingly. Lower (bag-build bag). (bag->cross-derivation): Ditto. Instead of #:native-drvs and #:target-drvs, pass #:build-inputs, #:host-inputs, and #:target-inputs. (%derivation-cache): Remove. * gnu/packages/bootstrap.scm (raw-build): Turn into a monadic procedure. * gnu/packages/commencement.scm (glibc-final)[arguments]: Use 'gexp-input' for the #:allowed-references argument. * guix/build-system/cmake.scm (cmake-build): Remove 'store' parameter. Switch to the use of gexps and 'gexp->derivation'. (lower): Remove #:source from 'private-keywords'. * guix/build-system/glib-or-gtk.scm (glib-or-gtk-build, lower): Likewise. * guix/build-system/font.scm (font-build): Likewise. * guix/build-system/gnu.scm (gnu-build): Likewise, and remove 'canonicalize-reference'. (gnu-cross-build): Likewise, and expect #:build-inputs, #:host-inputs, and #:target-inputs instead of #:native-drvs and #:target-drvs. (lower): Likewise. * guix/build-system/perl.scm (perl-build, lower): Likewise. * guix/build-system/python.scm (python-build, lower): Likewise. * guix/build-system/ruby.scm (ruby-build, lower): Likewise. * guix/build-system/waf.scm (waf-build, lower): Likewise. * guix/build-system/trivial.scm (guile-for-build): Remove. (trivial-build): Remove 'store' parameter, change to gexps. (trivial-cross-build): Ditto, and change to #:build-inputs & co. * guix/build-system/cargo.scm (cargo-build): Change to 'gexp->derivation'. * guix/build-system/copy.scm (copy-build): Likewise. * guix/build-system/dune.scm (dune-build): Likewise. * guix/build-system/guile.scm (guile-build, guile-cross-build): Likewise. * guix/build-system/meson.scm (meson-build): Likewise. * guix/build-system/ocaml.scm (ocaml-build): Likewise. * guix/build-system/scons.scm (scons-build): Likewise. * guix/build-system/texlive.scm (texlive-build): Likewise. * guix/build-system/android-ndk.scm (android-ndk-build): Likewise. * guix/build-system/ant.scm (ant-build): Likewise. * guix/build-system/asdf.scm (asdf-build/source, asdf-build): Likewise. * guix/build-system/chicken.scm (chicken-build): Likewise. * guix/build-system/clojure.scm (clojure-build): Likewise. (source->output-path, maybe-guile->guile): Remove. * guix/build-system/dub.scm (dub-build): Likewise. * guix/build-system/emacs.scm (emacs-build): Likewise. * guix/build-system/go.scm (go-build): Likewise. * guix/build-system/haskell.scm (haskell-build): Likewise. * guix/build-system/julia.scm (julia-build): Likewise. * guix/build-system/linux-module.scm (linux-module-build) (linux-module-build-cross): Likewise. * guix/build-system/maven.scm (maven-build): Likewise. * guix/build-system/minify.scm (minify-build): Likewise. * guix/build-system/node.scm (node-build): Likewise. * guix/build-system/qt.scm (qt-build, qt-cross-build): Likewise. * guix/build-system/r.scm (r-build): Likewise. * guix/build-system/rakudo.scm (rakudo-build): Likewise. * guix/build-system/renpy.scm (renpy-build): Likewise. * tests/builders.scm ("gnu-build"): Call 'store-lower' on 'gnu-build'. Pass #:source parameter. * tests/packages.scm ("search paths"): Use 'abort-to-prompt' instead of a normal return from the 'build' method. ("package->bag, sensitivity to %current-target-system"): Change 'build' to match the new build system signature. squash! build-system: Rewrite using gexps. squash! build-system: Rewrite using gexps.
* build-system: linux-module: Delete some huge items that we probably don't need.Danny Milosavljevic2020-09-14
| | | | | * guix/build-system/linux-module.scm (make-linux-module-builder): Delete some huge items that we probably don't need.
* 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>
* build-system: linux-module: Fix cross compilation.Mathieu Othacehe2020-03-22
| | | | | | | | | | | | | | | | | * guix/build-system/linux-module.scm (default-kmod, default-gcc): Delete procedures. (system->arch): New procedure. (make-linux-module-builder)[native-inputs]: Move linux... [inputs]: ...to here. (linux-module-build-cross): New procedure. (linux-module-build): Add TARGET. Pass TARGET and ARCH to build side. (lower): Allow cross-compilation. Move "linux" and "linux-module-builder" to host-inputs. Add target-inputs. Call linux-module-build-cross if TARGET is set, linux-module-build otherwise. * guix/build/linux-module-build-system.scm (configure): Add ARCH argument. (linux-module-build): Adjust comment. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
* build-system: linux-module: Break some long lines.Mathieu Othacehe2020-03-17
| | | | | * gnu/build/linux-modules.scm (make-linux-module-builder, lower): Break some long commentary lines.
* build-system: linux-module: Add substitutable keyword.Efraim Flashner2019-12-26
| | | | | * guix/build-system/linux-module.scm (linux-module-build) Add substitutable keyword.
* Revert "build-system/linux-module: Accept a #:make-flags keyword."Efraim Flashner2019-12-05
| | | | | | I should've tested this better before pushing the commit. This reverts commit fabd4900d8fb739a55e2dff76dee3a29b2a90bb1.
* build-system/linux-module: Accept a #:make-flags keyword.Tobias Geerinckx-Rice2019-12-04
| | | | | | | | Fixes bug#37882. * guix/build-system/linux-module.scm (linux-module-build): Accept a MAKE-FLAGS argument. <builder>: Pass it on.
* build-system/linux-module: Support module source versioning.Danny Milosavljevic2019-04-12
| | | | | | | | * guix/build-system/linux-module.scm (make-linux-module-builder) [native-inputs]: Add linux. [arguments]<#:phases>[install]: Install "System.map" and "Module.symvers". * guix/build/linux-module-build-system.scm (configure): Delete procedure. (%standard-phases): Delete "configure" phase.
* Add (guix build-system linux-module).Danny Milosavljevic2019-04-11
* guix/build/linux-module-build-system.scm: New file. * guix/build-system/linux-module.scm: New file. * doc/guix.texi (Build Systems): Document it. * Makefile.am (MODULES): Add them.