summaryrefslogtreecommitdiff
path: root/guix/build-system/asdf.scm
AgeCommit message (Expand)Author
2019-01-09build-system/asdf: 'package-with-build-system' accesses inputs lazily....Fixes a bug whereby we would, at the top-level (while evaluation lisp.scm package definitions), attempt to access package inputs. Because of circular dependencies, this could lead to unbound variables as reported by Arun Isaac <arunisaac@systemreboot.net> at <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=33801#56>. * guix/build-system/asdf.scm (package-with-build-system)[transform] (new-propagated-inputs): Turn into a procedure. Adjust user accordingly. Ludovic Courtès
2018-08-21build-system/asdf: Fix typo in "dependency"....* guix/build-system/asdf.scm (default-lisp): Fix typo in "dependency". Pierre Neidhardt
2017-12-10build-system/asdf: Use 'mlambda'....* guix/build-system/asdf.scm (package-with-build-system): Use 'mlambda' instead of 'memoize'. Ludovic Courtès
2017-05-16build-system/asdf: Handle tests defined in external systems....* guix/build-system/asdf.scm (asdf-build): Add a #:test-asd-file argument. [builder]: Pass it to the build system. (package-with-build-system)[transform]: Strip it from source systems' arguments. * guix/build/asdf-build-system.scm (check): Pass the fully qualified path to it on to the test-system procedure. * guix/build/lisp-utils.scm (test-system): Load the file, or otherwise one of the often used names for it, before running the tests. Adjust the docstring accordingly. Andy Patterson
2017-05-16build-system/asdf: Always pre-load the system's definition file....* guix/build-system/asdf.scm (asdf-build)[builder]: Pass a default `#:asd-file' argument to the build procedure, using the system's name. * guix/build/asdf-build-system.scm (build, check): Adjust to assume that `asd-file' will always be a string. * guix/build/lisp-utils.scm (compile-system, system-dependencies) (test-system): Likewise. Andy Patterson
2017-05-16build-system/asdf: Pass the system name as an argument to the builder....* guix/build-system/asdf.scm (asdf-build): Use the user-defined system name, or calculate it from the package's full name. [builder]: Pass the value along to the build procedure. (package-with-build-system): Remove #:asd-system-name from source packages' arguments. * guix/build/asdf-build-system.scm: Adjust accordingly. * guix/build/lisp-utils.scm (remove-lisp-from-name): Delete variable. Andy Patterson
2017-05-16build-system/asdf: Parameterize the lisp type and implementation globally....* guix/build-system/asdf.scm (asdf-build)[builder]: Parameterize %lisp-type and %lisp before invoking the build procedure. Don't pass #:lisp-type as an argument to said procedure. * guix/build/asdf-build-system.scm: Adjust accordingly. (source-install-prefix): Rename to %lisp-source-install-prefix. * guix/build/lisp-utils.scm: Adjust accordingly. (%lisp-type): New parameter. (bundle-install-prefix): Rename to %bundle-install-prefix. * gnu/packages/lisp.scm: Adjust accordingly. Andy Patterson
2017-05-16build-system/asdf: Make #:lisp a package argument....* guix/build-system/asdf.scm (lower): Change argument name to `lisp-type'. (asdf-build): Change argument name to `lisp-type'. Remove `lisp' as an argument to the returned procedure. Change the argument passed to build phases to `lisp-type'. * guix/build/asdf-build-system.scm (copy-source, build, check) (create-asd-file, symlink-asd-files, cleanup-files, strip): Respect `lisp-type` argument. * gnu/packages/lisp.scm (sbcl-stumpwm, sbcl-stumpwm+slynk): Likewise. Andy Patterson
2017-05-16build-system/asdf: Don't rename inputs....* guix/build-system/asdf.scm (package-with-build-system)[transform]: Use updated `new-inputs' procedure for inputs and native-inputs. <rewrite>: Don't rename inputs. <new-propagated-inputs>: Draw from package-inputs and package-native-inputs for source packages. Use the original package's propagated-inputs otherwise. <new-inputs>: Convert into a function to be used to transform inputs and native-inputs. * gnu/packages/lisp.scm (sbcl-fiveam, sbcl-bordeaux-threads) (sbcl-flexi-streams, sbcl-cl-ppcre, sbcl-stumpwm, sbcl-slynk-arglists) (sbcl-slynk-fancy-inspector): Don't prefix input names. Andy Patterson
2017-05-16build-system/asdf: Use asdf to determine dependencies....This removes the need for conventions to determine which inputs are run-time dependencies, and also the need to specify "special" dependencies. * guix/build/lisp-utils.scm (patch-asd-file, lisp-dependencies) (wrap-perform-method): Remove them. (inputs->asd-file-map, system-dependencies, generate-system-definition) (generate-dependency-links, make-asd-file): New procedures. (lisp-eval-program): Add an error if no lisp matches. (compile-system): Don't use asdf's in-built asd-file generator. Andy Patterson
2016-10-08build-system: Add asdf-build-system....* guix/build-system/asdf.scm: New file. * guix/build/asdf-build-system.scm: New file. * guix/build/lisp-utils.scm: New file. * Makefile.am (MODULES): Add them. * doc/guix.texi (Build Systems): Document 'asdf-build-system'. Signed-off-by: 宋文武 <iyzsong@gmail.com> Andy Patterson