source: trunk/source/cocoa-ide/compile-hemlock.lisp @ 15885

Last change on this file since 15885 was 15885, checked in by gz, 8 years ago

Get rid of icom (italics commands) file

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.3 KB
Line 
1(in-package "CCL")
2
3(defparameter *hemlock-src-dir-pathname* "ccl:cocoa-ide;hemlock;src;")
4
5(defparameter *hemlock-binary-dir-pathname* "ccl:cocoa-ide;hemlock;bin;openmcl;")
6
7(defparameter *hemlock-binary-file-extension*
8  (pathname-type (compile-file-pathname "foo.lisp")))
9
10(defun hemlock-source-pathname (name)
11  (make-pathname :name name
12                 :type "lisp"
13                 :defaults *hemlock-src-dir-pathname*))
14
15(defun hemlock-binary-pathname (name)
16  (make-pathname :name name
17                 :type *hemlock-binary-file-extension*
18                 :defaults *hemlock-binary-dir-pathname*))
19
20(defun compile-and-load-hemlock-file (name &optional force)
21  (let* ((source-pathname (hemlock-source-pathname name))
22         (binary-pathname (hemlock-binary-pathname name)))
23    (when (or force
24              (not (probe-file binary-pathname))
25              (> (file-write-date source-pathname)
26                 (file-write-date binary-pathname)))
27      (compile-file source-pathname :output-file binary-pathname :verbose t))
28    (load binary-pathname :verbose t)))
29
30
31(defparameter *hemlock-files*
32  '("package"
33
34    "hemlock-ext"                     
35               
36    "decls"                             ;early declarations of functions and stuff
37               
38    "struct"
39    "charmacs"
40    "key-event" 
41    "keysym-defs"
42    "cocoa-hemlock"
43    "rompsite"
44
45    "macros"
46
47    "views"
48    "line"
49    "ring"
50    "vars"
51    "interp"
52    "syntax"
53    "htext1"
54    "buffer" 
55    "charprops"
56    "htext2"
57    "htext3"
58    "htext4"
59    "files"
60    "search1"
61    "search2"
62    "table"
63    "modeline"
64    "pop-up-stream"
65    "font"
66    "streams"
67    "main"
68    "echo"
69    "echocoms"
70    "command"
71    "indent"
72    ;; moved     "comments"
73    "morecoms"
74    "undo"
75    "killcoms"
76    "searchcoms"
77    "isearchcoms"
78    "filecoms"
79    "doccoms"
80    "fill"
81    "text"
82    "lispmode"
83    "listener"
84    "comments"
85    "defsyn"
86    "edit-defs"
87    "register"
88    "completion"
89    "symbol-completion"
90    "bindings"
91    ))
92
93(defun compile-hemlock (&optional force)
94  (with-compilation-unit ()
95    (dolist (name *hemlock-files*)
96      (compile-and-load-hemlock-file name force)))
97  (fasl-concatenate "ccl:cocoa-ide;hemlock"
98                    (mapcar #'hemlock-binary-pathname *hemlock-files*)
99                    :if-exists :supersede)
100  (provide "HEMLOCK")
101  )
102
103
104(provide "COMPILE-HEMLOCK")
Note: See TracBrowser for help on using the repository browser.