added additional docs for a debian system.
[CommonLispStat.git] / init.lisp
blob35b7edfcdc0b8c79a21ae9a1171bb87e05c97217
1 ;;; Basic initialization for LispStat
2 ;;; Time-stamp: <2008-05-15 08:26:47 tony>
3 ;;; Created: <2007-05-30 17:09:47 blindglobe>
5 ;; Goal:
6 ;;
7 ;; - 1. Associate ASDF directory for loading.
8 ;; - 2. Make sure that we have initialized any locally defined global variables
9 ;; 3. ensure appropriate tools are linked in for loading.
10 ;; i.e. if features don't exist, load from particular locations in
11 ;; this directory structure.
12 ;; 4. Print out and capture environmental features, i.e. presence and
13 ;; version of packages.
14 ;; 5.
16 ;; (setf *my-base-directory*
17 ;; #p"/home/tony/sandbox/CLS.git/"
18 ;; #p"/Users/ungil/lisp/CommonLispStat/")
23 ;; What package should we be in? Contaminating cl-user is probably EVIL.
25 ;; Need to replace this with some form of self-referential structure.
27 ;; Add the critical paths to the ASDF facility and set up other
28 ;; things; currently this will not do the other setups.
30 (progn
31 (defvar *lispstat-home-dir*
32 ;; #p"/home/tony/sandbox/CommonLispStat.git/"
33 ;; #p"/cygdrive/c/local/sandbox/Lisp/CommonLispStat/"
34 ;; #p"/Users/ungil/lisp/CommonLispStat/")
35 ;; #p"/home/rossini/public_html/GIT.repos/CommonLispStat/"
36 #p"/home/tony/Desktop/sandbox/CLS.git/"
37 "Value considered \"home\" for our data")
39 (setf *lispstat-home-dir*
40 ;; #p"/cygdrive/c/local/sandbox/Lisp/CommonLispStat/"
41 ;; #p"/home/tony/sandbox/CommonLispStat.git/"
42 ;; #p"/Users/ungil/lisp/CommonLispStat/")
43 ;; #p"/home/rossini/public_html/GIT.repos/CommonLispStat/"
44 #p"/home/tony/Desktop/sandbox/CLS.git/"
47 (defmacro ls-dir (root-str)
48 `(pathname (concatenate 'string (namestring *lispstat-home-dir*) ,root-str)))
50 (defmacro ls-defdir (target-dir-var root-str)
51 `(defvar ,target-dir-var (ls-dir ,root-str)))
53 ;;(macroexpand '(ls-defdir *lispstat-asdf-dir* "ASDF"))
54 ;;(macroexpand-1 '(ls-defdir *lispstat-asdf-dir* "ASDF"))
55 ;;(macroexpand-1 '(ls-dir "ASDF"))
57 (ls-defdir *lispstat-asdf-dir* "ASDF/")
58 (ls-defdir *lispstat-data-dir* "data/")
59 (ls-defdir *lispstat-external-dir* "external/")
60 (ls-defdir *lispstat-examples-dir* "examples/")
62 ;; Load ASDF if it isn't loaded
63 #-asdf(load (pathname (concatenate 'string (namestring *lispstat-external-dir*) "asdf")))
65 ;; (pushnew #p"C:/Lisp/libs/" asdf-util:*source-dirs* :test #'equal)
66 (pushnew *lispstat-asdf-dir* asdf:*central-registry*))
68 (progn
69 ;; Load needed packages
71 (asdf:oos 'asdf:load-op :cffi) ;; FFI
72 (asdf:oos 'asdf:load-op :lift) ;; Unit Testing
74 ;; Finally...
75 (asdf:oos 'asdf:load-op :lispstat)
79 ;; Things to never automatically do...
81 #+nil(progn
83 ;; loading
84 (asdf:oos 'asdf:load-op :lift-test)
86 ;; compiling
87 (asdf:oos 'asdf:compile-op :cffi)
88 ;; (asdf:oos 'asdf:compile-op :lisp-unit)
89 (asdf:oos 'asdf:compile-op :lift)
90 (asdf:oos 'asdf:compile-op :rclg)
91 (asdf:oos 'asdf:compile-op :cl-cairo2)
92 ;; (asdf:operate 'asdf:load-op 'cffi)
93 ;; (asdf:operate 'asdf:load-op 'rclg)
94 (asdf:oos 'asdf:load-op :celtk)
95 (asdf:oos 'asdf:compile-op :lispstat :force t)
96 ;; (asdf:operate 'asdf:compile-op 'lispstat)
98 ;; Things to do later...
100 #+nil(asdf:oos 'asdf:load-op :clem) ;; matrix stuff
101 #+nil(asdf:oos 'asdf:load-op :clem-test)
102 #+nil(asdf:oos 'asdf:load-op :clem-benchmark)
103 #+nil(asdf:oos 'asdf:load-op :cells)