Age | Commit message (Collapse) | Author | |
---|---|---|---|
2025-06-15 | guix: emacs-build-system: Add #:lisp-directory. | Morgan Smith | |
* guix/build-system/emacs.scm (emacs-build): Add #:lisp-directory. * guix/build/emacs-build-system.scm (unpack): Change into lisp-directory after unpacking. Change-Id: I3991af7188de72b29b1c6985ffe7185216cedb35 Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> | |||
2025-06-15 | build-system: emacs: Guess test framework. | Liliana Marie Prikler | |
* guix/build/emacs-build-system (check-command): New variable. (check): Use it. * guix/build-system/emacs.scm (emacs-build)[test-command]: Set to #f. | |||
2025-06-15 | build-system: emacs: Enable tests when not cross-compiling. | Liliana Marie Prikler | |
This is a first effort towards making emacs-build-system more suitable for cross-compilation. * guix/build-system/emacs.scm (emacs-build)[#:tests?]: Enable when not cross-compiling. * gnu/packages/emacs-xyz.scm (emacs-ac-php, emacs-chatgpt-shell) (emacs-inspector, emacs-tree-inspector, emacs-pug-mode, emacs-llama) (emacs-magit, emacs-ezf, emacs-speed-type, emacs-graphql) (emacs-fb2-reader, emacs-ample-regexps, emacs-rescript-mode) (emacs-relative-buffers, emacs-emms, emacs-aio, emacs-async) (emacs-latex-extra, emacs-auto-themer, emacs-bm, emacs-varuga) (emacs-ellama, emacs-org-fc, emacs-go-mode, emacs-dash, emacs-undo-fu-session) (emacs-s, emacs-lemon, emacs-fringe-helper, emacs-git-link) (emacs-explain-pause-mode, emacs-zig-mode, emacs-calc-currency) (emacs-string-inflection, emacs-ob-go, emacs-robot-log, emacs-rspec) (emacs-sqlite3-api, emacs-shx, emacs-el-job, emacs-elisp-demos) (emacs-sudo-edit, emacs-subed, emacs-deferred, emacs-company-lsp, emacs-jack) (emacs-elquery, emacs-cov, emacs-god-mode, emacs-org-pomodoro) (emacs-eglot-tempel, emacs-dumbparens, emacs-perspective, emacs-realgud) (emacs-hydra, emacs-avy, emacs-lispy, emacs-clojure-mode, emacs-qt-pro-mode) (emacs-sphinx-doc, emacs-julia-mode, emacs-js2-mode, emacs-nodejs-repl) (emacs-projectile, emacs-skeletor, emacs-elfeed, emacs-elfeed-org) (emacs-mocker, emacs-find-file-in-project, emacs-pyvenv, emacs-elpy) (emacs-rainbow-delimiters, emacs-visual-fill-column, emacs-visual-replace) (emacs-wucuo, emacs-yaml, emacs-yari, emacs-wgrep, emacs-islisp-mode) (emacs-lua-mode, emacs-evil-collection, emacs-evil-owl, emacs-evil-exchange) (emacs-evil-lion, emacs-evil-expat), emacs-monky, emacs-org, emacs-ht) (emacs-yasnippet, emacs-memoize, emacs-use-package, emacs-xmlgen) (emacs-cc-mode, emacs-php-mode, emacs-evil-surround, emacs-org-transclusion) (emacs-json-reformat, emacs-display-wttr, emacs-git-messenger) (emacs-enh-ruby-mode, emacs-browse-at-remote, emacs-tiny, emacs-unidecode) (emacs-circe, emacs-evil-quickscope, emacs-groovy-modes, emacs-kotlin-mode_) (emacs-kv, emacs-auth-source-pass, emacs-emacsql, emacs-org-recur) (emacs-org-super-agenda, emacs-ts, emacs-circadian, emacs-eldev, emacs-citar) (emacs-loop, emacs-elisp-refs, emacs-esup, emacs-macrostep, emacs-parent-mode) (emacs-helpful, emacs-suggest, emacs-auto-yasnippet) (emacs-git-auto-commit-mode, emacs-devil, emacs-devil-multiedit) (emacs-go-translate, emacs-langtool, emacs-helm-company, emacs-picpocket) (emacs-srht, emacs-github-review, emacs-deadgrep, emacs-adoc-mode) (emacs-racer, emacs-sesman, emacs-buttercup, emacs-cort, emacs-annalist) (emacs-general, emacs-libmpdel, emacs-navigel, emacs-eat, emacs-detached) (emacs-repology, emacs-bfuture, emacs-undo-propose-el, emacs-tco-el) (emacs-vdiff, emacs-exwm-firefox, emacs-rjsx-mode, emacs-dash-docs) (emacs-casual-lib, emacs-evil-numbers, emacs-evil-traces, emacs-ox-tufte) (emacs-org-jira, emacs-systemd-mode, emacs-doom-themes, emacs-exiftool) (emacs-qrencode, emacs-org-journal, emacs-weblorg, emacs-execline) (emacs-webpaste, emacs-keystore-mode, emacs-ein, emacs-straight-el) (emacs-vundo, emacs-org-cliplink, emacs-x509-mode)[arguments]: Remove #:tests?. (emacs-f, emacs-shut-up, emacs-ansi, emacs-commander) (emacs-ert-runner)[arguments]: Add #:tests? #f. (emacs-with-editor, emacs-tablist, emacs-pkg-info, emacs-el-x, emacs-helm) (emacs-xelb, emacs-repo): Likewise. | |||
2025-06-15 | build-system/emacs: Provide allowed and disallowed references. | Morgan Smith | |
* guix/build-system/emacs.scm (emacs-build): Pass #:allowed-references and Change-Id: Ib9a35a7b2115365b96675fb7ca3914b0ae7e67c7 Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> | |||
2024-08-31 | build-systems: gnu: Export %default-gnu-imported-modules and ↵ | Maxim Cournoyer | |
%default-gnu-modules. Until now users would have to cargo cult or inspect the private %default-modules variable of (guix build-systems gnu) to discover which modules to include when extending the used modules via the #:modules argument. The renaming was automated via the command: $ git grep -l %gnu-build-system-modules | xargs sed 's/%gnu-build-system-modules/%default-gnu-imported-modules/' -i * guix/build-system/gnu.scm (%gnu-build-system-modules): Rename to... (%default-gnu-imported-modules): ... this. (%default-modules): Rename to... (%default-gnu-modules): ... this. Export. (dist-package, gnu-build, gnu-cross-build): Adjust accordingly. Change-Id: Idef307fff13cb76f3182d782b26e1cd3a5c757ee | |||
2023-03-13 | guix: Strip #:use-module lists. | Ludovic Courtès | |
This was obtained by setting up this environment: guix shell -D guix --with-input=guile@3.0.9=guile-next \ --with-commit=guile-next=e2ed33ef0445c867fe56c247054aa67e834861f2 -- make -j5 then adding 'unused-module' to (@@ (guix build compiler) %warnings), building, and checking all the "unused module" warnings and removing those that were definitely unused. | |||
2021-03-30 | build-system: Use 'sexp->gexp' for plain sexps. | Ludovic Courtès | |
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'. | |||
2021-03-30 | build-system: Rewrite using gexps. | Ludovic Courtès | |
* 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. | |||
2020-08-09 | build-system/emacs: Allow usage of #:parallel-tests? key | Morgan Smith | |
* guix/build-system/emacs.scm (emacs-build): Pass parallel-tests? to builder. Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net> | |||
2018-04-20 | build-system: emacs: Add improved check phase. | Maxim Cournoyer | |
* guix/build-system/emacs.scm (emacs-build): Add #:test-command keyword argument. Remove #:configure-flags and #:test-target keyword arguments. * guix/build/emacs-build-system.scm (check): New procedure. (%standard-phases): Register check phase after the build phase. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> | |||
2018-02-05 | emacs-build-system: Reinstate the check phase. | Maxim Cournoyer | |
* guix/build/emacs-build-system.scm (%standard-phases): Reinstate the check phase from the gnu-build-system. * guix/build-system/emacs.scm (emacs-build)[tests?]: But do not enable it by default. [parallel-tests?]: Add argument. Signed-off-by: Ludovic Courtès <ludo@gnu.org> | |||
2017-06-08 | build-system: emacs: Factorize include/exclude default arguments. | Maxim Cournoyer | |
The `install' phase of the emacs-build-system contained default arguments duplicated from the host side `emacs-build' procedure. This change factorizes them so that: 1. They are not duplicated. 2. They can be reused and extended easily when defining emacs packages. * guix/build/emacs-build-system.scm (%default-include, %default-exclude): New variables. (install): Use %default-include and %default-exclude as default arguments. * guix/build-system/emacs.scm: Use and re-export %default-include, %default-exclude from (guix build emacs-build-system). (emacs-build): Use %default-include and %default-exclude as default arguments. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net> | |||
2017-05-23 | build-system: emacs: Install only a subset of files. | Arun Isaac | |
* guix/build/emacs-build-system.scm (install): Install files matching #:include while excluding files matching #:exclude. * guix/build-system/emacs.scm (emacs-build): Add keyword arguments #:include and #:exclude. | |||
2016-05-24 | build-system/emacs: Use 'emacs-minimal' by default. | Alex Kost | |
* guix/build-system/emacs.scm (default-emacs): Use 'emacs-minimal'. * gnu/packages/emacs.scm (emacs-auctex): Use 'emacs'. | |||
2015-07-08 | build: Add 'emacs-build-system'. | Federico Beffa | |
* Makefile.am (MODULES): Add 'guix/build-system/emacs.scm' and 'guix/build/emacs-build-system.scm'. * guix/build-system/emacs.scm: New file. * guix/build/emacs-build-system.scm: New file. * doc/guix.texi (Build Systems): Document it. |