Merge pull request #111 from kingcons/coleslaw-conf-asdf-system

Move coleslaw-conf to its own ASDF system
This commit is contained in:
Brit Butler 2016-09-23 17:39:39 -04:00 committed by GitHub
commit 5404e88c0b
5 changed files with 48 additions and 19 deletions

12
coleslaw-conf.asd Normal file
View file

@ -0,0 +1,12 @@
(in-package #:asdf-user)
(defsystem #:coleslaw-conf
:name "coleslaw-conf"
:description "Configuration variable for Coleslaw, Flexible Lisp Blogware"
:version "0.9.7"
:license "BSD"
:author "Brit Butler <redline6561@gmail.com>"
:pathname "src/"
:depends-on ()
:serial t
:components ((:file "coleslaw-conf")))

13
coleslaw-test.asd Normal file
View file

@ -0,0 +1,13 @@
(in-package #:asdf-user)
(defsystem #:coleslaw-test
:description "A test suite for coleslaw."
:license "BSD"
:author "Brit Butler <redline6561@gmail.com>"
:depends-on (:coleslaw :prove)
:defsystem-depends-on (:prove-asdf)
:components ((:module "tests"
:components
((:test-file "tests"))))
:perform (test-op :after (op c)
(uiop:symbol-call :prove 'run c)))

View file

@ -1,3 +1,5 @@
(in-package #:asdf-user)
(defsystem #:coleslaw
:name "coleslaw"
:description "Flexible Lisp Blogware"
@ -5,7 +7,8 @@
:license "BSD"
:author "Brit Butler <redline6561@gmail.com>"
:pathname "src/"
:depends-on (:closure-template
:depends-on (:coleslaw-conf
:closure-template
:3bmd
:3bmd-ext-code-blocks
:alexandria
@ -28,18 +31,6 @@
(:file "coleslaw"))
:in-order-to ((test-op (test-op coleslaw-test))))
(defsystem #:coleslaw-test
:description "A test suite for coleslaw."
:license "BSD"
:author "Brit Butler <redline6561@gmail.com>"
:depends-on (:coleslaw :prove)
:defsystem-depends-on (:prove-asdf)
:components ((:module "tests"
:components
((:test-file "tests"))))
:perform (test-op :after (op c)
(uiop:symbol-call :prove 'run c)))
(defpackage #:coleslaw-conf (:export #:*basedir*))
(defparameter coleslaw-conf:*basedir*
(make-pathname :name nil :type nil :defaults *load-truename*))
(defmethod perform :before ((op load-op)
(system (eql (find-system :coleslaw))))
(uiop:symbol-call "COLESLAW-CONF" 'set-basedir #.*load-truename*))

12
src/coleslaw-conf.lisp Normal file
View file

@ -0,0 +1,12 @@
(defpackage #:coleslaw-conf
(:use #:cl)
(:export #:*basedir*
#:set-basedir))
(in-package #:coleslaw-conf)
(defvar *basedir*)
(defun set-basedir (pathname)
(setf coleslaw-conf:*basedir*
(make-pathname :name nil :type nil :defaults pathname)))

View file

@ -3,9 +3,10 @@
(in-package :coleslaw-tests)
(plan nil)
(plan 1)
(deftest 1-is-a-number
(is-type 1 'fixnum))
(diag "COLESLAW-CONF:*BASEDIR* points to Coleslaw's top level directory")
(is (car (last (pathname-directory coleslaw-conf:*basedir*)))
"coleslaw" :test #'string=)
(finalize)