cl-prolog/cl-prolog.asd

49 lines
1.7 KiB
Plaintext
Raw Normal View History

2024-09-21 20:43:41 -04:00
(asdf:defsystem "cl-prolog"
:description "Prolog Compiler/Interpreter"
:author "Charlie Svitlik <staticsunn@gmail.com>"
:version "0.1.0"
:license "GPLv3+"
:defsystem-depends-on (:deploy)
:depends-on ()
:components ((:module "src"
:components
((:file "package")
(:file "constants")
(:file "utils")
(:file "bindings")
(:file "unify")
(:file "destructive-unify")
(:file "interp")
(:file "compiler")
(:file "compiler-macro")
(:file "cl-prolog"))))
:in-order-to ((test-op (test-op "cl-prolog/tests")))
:build-pathname "cl-prolog"
:entry-point "cl-prolog:main"
:build-operation "deploy-op")
(asdf:defsystem "cl-prolog/tests"
:description "Test system for cl-prolog"
:author "Charlie Svitlik <staticsunn@gmail.com>"
:license "WTFPL 2+"
:depends-on ("cl-prolog"
"rove")
:components ((:module "tests"
:components
((:file "cl-prolog"))))
:perform (asdf:test-op (op c) (symbol-call :rove :run c)))
;; https://lisp-journey.gitlab.io/blog/lisp-for-the-web-build-standalone-binaries-foreign-libraries-templates-static-assets/
(deploy:define-hook (:deploy asdf) (directory)
;; Thanks again to Shinmera.
(declare (ignorable directory))
#+asdf (asdf:clear-source-registry)
#+asdf (defun asdf:upgrade-asdf () nil))
;; https://lispcookbook.github.io/cl-cookbook/scripting.html#building-a-smaller-binary-with-sbcls-core-compression
#+sb-core-compression
(defmethod asdf:perform ((o asdf:image-op) (c asdf:system))
(uiop:dump-image (asdf:output-file o c)
:executable t
:compression t))