49 lines
1.7 KiB
Common Lisp
49 lines
1.7 KiB
Common Lisp
(asdf:defsystem "cl-prolog"
|
|
:description "Prolog Compiler/Interpreter"
|
|
:author "Bubblegumdrop <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 "Bubblegumdrop <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))
|