Show how to add local `quicklisp' projects

This commit is contained in:
Gerard Vermeulen 2023-03-14 20:35:33 +01:00
parent 2a57eb9468
commit 5f76405ed8

View File

@ -4450,11 +4450,14 @@ the page [[https://courses.cs.northwestern.edu/325/admin/lisp-setup.php][CS 325:
:END: :END:
[[https://www.quicklisp.org/][Quicklisp]] is a library manager for Common Lisp. Listing [[https://www.quicklisp.org/][Quicklisp]] is a library manager for Common Lisp. Listing
[[lst:download+verify-quicklisp]] downloads the [[https://www.quicklisp.org/][Quicklisp]] file and verifies its [[lst:download+verify-quicklisp]] downloads the [[https://www.quicklisp.org/][Quicklisp]] installation file and
signature to prevent tampering. Listing [[lst:bootstrap-quicklisp]] tangles to a verifies its signature to prevent tampering. Listing [[lst:bootstrap-quicklisp]]
shell script allowing to bootstrap [[https://www.quicklisp.org/][Quicklisp]] with [[http://www.sbcl.org/][SBCL]]. Listing tangles to a shell script allowing to bootstrap [[https://www.quicklisp.org/][Quicklisp]] with [[http://www.sbcl.org/][SBCL]]. Listing
[[lst:quicklisp-sbclrc-file]] tangles to the a [[http://www.sbcl.org/][SBCL]] resource file with [[https://www.quicklisp.org/][Quicklisp]] [[lst:quicklisp-sbclrc-file]] tangles to the a [[http://www.sbcl.org/][SBCL]] resource file with [[https://www.quicklisp.org/][Quicklisp]]
support. support. Listing [[lst:clone-local-projects]] shows how to make local projects out
of unpackaged projects and listing [[lst:register-load-local-projects]] shows how to
register local projects in order to load those unpackaged projects in the same
way as packaged projects.
#+caption[Download and verify =quicklisp=]: #+caption[Download and verify =quicklisp=]:
#+caption: Download and verify =quicklisp=. #+caption: Download and verify =quicklisp=.
@ -4486,6 +4489,26 @@ EOF
# End: # End:
#+end_src #+end_src
#+caption[Clone local =quicklisp= projects]:
#+caption: Clone local =quicklisp= projects.
#+name: lst:clone-local-projects
#+begin_src shell -n :dir ~/quicklisp/local-projects :results none :tangle no
git clone https://gitlab.com/criesbeck/cs325.git
git clone git@github.com:ageldama/cl-state-machine.git
#+end_src
#+caption[Register and load local =quicklisp= projects with dependencies]:
#+caption: Register and load local =quicklisp= projects with dependencies.
#+name: lst:register-load-local-projects
#+begin_src lisp -n :eval never-export :results none :tangle no
(ql:register-local-projects)
(ql:quickload "cs325")
(ql:quickload "cl-state-machine")
(ql:quickload "cl-state-machine-examples")
(ql:quickload "cl-state-machine-graphing")
(ql:quickload "cl-state-machine-test")
#+end_src
#+caption[A =quicklisp= sbclrc file]: #+caption[A =quicklisp= sbclrc file]:
#+caption: A =quicklisp= sbclrc file. #+caption: A =quicklisp= sbclrc file.
#+name: lst:quicklisp-sbclrc-file #+name: lst:quicklisp-sbclrc-file