ulthar.xyz > Repos

leibowitz

Experimental Common Lisp object storage abstraction for Unix file systems
About Files Commits git clone https://ulthar.xyz/repos/leibowitz/leibowitz.git

leibowitz/leibowitz.asd

Download raw file: leibowitz.asd

(require 'asdf)

(defun injest (subpath)
  (uiop:read-file-string (uiop:subpathname *load-pathname* subpath)))

(loop for dir in (nconc (list #P"core/" #P"web/" #P"cli/")
                        (directory #P"lib/*/"))
      do (push dir asdf:*central-registry*))

(asdf:defsystem "leibowitz"
  ;;;
  ;;; IMPORTANT!!!  These system definition keys here are the single
  ;;; source of truth for project metadata.  Other parts of the
  ;;; codebase may pol them at compile-time using the function
  ;;; `leibowitz.util:get-asdf-metadata' utility.  For an example, see
  ;;; `leibowitz.cli::toplevel/definition'.
  ;;;
  :version "0.1.0"
  :description #.(injest #P".git/description")
  :author "ꙮ <ymir@ulthar.xyz>"
  :license "No copyright but the right to copy!"
  :homepage "https://ulthar.xyz/repos/leibowitz"
  :long-description #.(injest #P"README.md")
  :depends-on (#:leibowitz.util
               #:leibowitz.core
               #:leibowitz.web
               #:leibowitz.cli)
  :components ((:file "package"))
  :build-operation "program-op"
  :build-pathname "build/leibowitz"
  :entry-point "leibowitz.cli:main"
  :in-order-to ((asdf:test-op (asdf:test-op "leibowitz/tests"))))

(asdf:defsystem "leibowitz/tests"
  :depends-on (#:parachute
               #:leibowitz)
  :components ((:module "tests" :components ((:file "package")
                                             (:file "utils")
                                             (:file "core")
                                             ;;(:file "cli")
                                             )))
  :perform (asdf:test-op (op c) (uiop:symbol-call :parachute :test :leibowitz/tests)))
Generated 2025-03-07 15:24:22 -0700 by RepoRat