-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathasdf-header.lisp
45 lines (36 loc) · 1015 Bytes
/
asdf-header.lisp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
;;;
;;; A package definition and a really quick macro for asdf files
;;;
(in-package :cl-user)
(defpackage queues-system
(:use :cl :asdf))
(in-package :queues-system)
;;;
;;; Variables
;;;
(eval-when (:compile-toplevel :load-toplevel :execute)
(defparameter *author* "Eric O'Connor")
(defparameter *version* "1.1.0")
(defparameter *license* "MIT"))
;;;
;;; Definition macro
;;;
(defmacro quick-defsystem (&key name deps (version *version*) desc files)
(flet ((str (x)
(string-downcase (symbol-name x))))
`(defsystem ,name
:name ,(str name)
:author ,*author*
:maintainer ,*author*
:description ,desc
:version ,version
:license ,*license*
,@(when deps
`(:depends-on ,deps))
:serial t
:components
,(loop for file in files collect
`(:file ,(str file))))))
;;; ==================================================================
;;; EOF
;;; ==================================================================