diff options
| author | ckonstanski <carlos.konstanski@olo.com> | 2021-11-28 16:55:46 -0700 |
|---|---|---|
| committer | ckonstanski <carlos.konstanski@olo.com> | 2021-11-28 16:55:46 -0700 |
| commit | 8be7c5d959951dfafaf3fcaebe860a64ee3d8f7f (patch) | |
| tree | 57e0dc941d54685629630528ae34d892e5138102 /lisp/dns-admin.asd | |
initail commit
Diffstat (limited to 'lisp/dns-admin.asd')
| -rw-r--r-- | lisp/dns-admin.asd | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/lisp/dns-admin.asd b/lisp/dns-admin.asd new file mode 100644 index 0000000..15f783b --- /dev/null +++ b/lisp/dns-admin.asd @@ -0,0 +1,65 @@ +;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10 -*- +(declaim (optimize (speed 0) (safety 3) (debug 3))) + +(in-package #:cl) + +(defpackage #:dns-admin-system (:use #:cl #:asdf)) +(in-package #:dns-admin-system) + +(defmacro do-defsystem (&key name version maintainer author description long-description depends-on components) + `(defsystem ,name + :name ,name + :version ,version + :maintainer ,maintainer + :author ,author + :description ,description + :long-description ,long-description + :depends-on ,(eval depends-on) + :components ,components)) + +(defparameter *asdf-packages* '(net-telent-date cl-ppcre uffi hunchentoot cl-log ironclad cl-json drakma cl-smtp)) + +(loop for pkg in *asdf-packages* do + (ql:quickload (symbol-name pkg))) + +(do-defsystem :name "dns-admin" + :version "1" + :maintainer "Carlos Konstanski <carlos.konstanski@verizonwireless.com>" + :author "Carlos Konstanski <carlos.konstanski@verizonwireless.com>" + :description "dns-admin" + :long-description "dns-admin is a web application written in Common Lisp based on the Hunchentoot web server. The client-side code is written in ClojureScript. Its purpose is to be a DNS administration tool." + :depends-on *asdf-packages* + :components ((:module core + :components ((:file "coreutils") + (:file "httputils" :depends-on ("coreutils")) + (:file "html" :depends-on ("coreutils")))) + (:module condition + :depends-on (core) + :components ((:file "condition"))) + (:module file + :depends-on (core condition) + :components ((:file "file-utils"))) + (:module json + :depends-on (condition) + :components ((:file "json-utils"))) + (:module dns + :depends-on (json) + :components ((:file "dns"))) + (:module entity + :depends-on (dns) + :components ((:file "generics") + (:file "entity" :depends-on ("generics")) + (:file "dns-record" :depends-on ("entity")))) + (:module service + :depends-on (entity) + :components ((:file "base-service") + (:file "rest-service" :depends-on ("base-service")) + (:file "generic-form" :depends-on ("rest-service")) + (:file "dns-service" :depends-on ("rest-service")))) + (:module webapps + :depends-on (service) + :components ((:file "generics") + (:file "webapp-loader" :depends-on ("generics")) + (:module dns-admin + :depends-on ("webapp-loader") + :components ((:file "site"))))))) |
