src/build-binary.lisp @ 0329a2650981

Implement batch mode, CLI args, minor cleanups
author Steve Losh <steve@stevelosh.com>
date Mon, 20 Jun 2022 23:19:54 -0400
parents cb2e07924093
children (none)
(require :asdf)
(require :uiop)
(asdf:load-system :cacl)

;; Run these generic functions once now so their bodies will get compiled at
;; build time, instead of delaying it until the first time the user runs
;; a command.  In SBCL at least, compiling the generic function for the first
;; time takes a noticeable amount of time (somewhere around a quarter of
;; a second), so let's not be annoying.

(cacl::command 'cacl::nop)
(cacl::command-documentation 'cacl::nop)

#+sbcl
(progn
  (sb-ext:gc :full t)
  (sb-ext:save-lisp-and-die
    "build/cacl-sbcl"
    :executable t
    :compression nil
    :toplevel #'cacl:toplevel
    :save-runtime-options t))

#+ccl
(progn
  (ccl:gc)
  (ccl:save-application
    "build/cacl-ccl.image"
    :toplevel-function #'cacl:toplevel
    :purify t))