forked from sharplispers/clx
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build-clx.lisp
33 lines (25 loc) · 913 Bytes
/
build-clx.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
;;; -*- Mode: Lisp; Package: Xlib; Log: clx.log -*-
;;; Load this file if you want to compile CLX in its entirety.
(proclaim '(optimize (speed 3) (safety 1) (space 1)
(compilation-speed 0)))
;;; Hide CLOS from CLX, so objects stay implemented as structures.
;;;
#||
(when (find-package "CLOS")
(rename-package (find-package "CLOS") "NO-CLOS-HERE"))
(when (find-package "PCL")
(rename-package (find-package "PCL") "NO-PCL-HERE"))
(when (find-package "SB-PCL")
(rename-package (find-package "SB-PCL") "NO-SB-PCL-HERE"))
||#
(when (find-package "XLIB")
(delete-package "XLIB"))
(unless (find-package "XLIB")
(make-package "XLIB" :use '("COMMON-LISP")))
#-sbcl
(compile-file "clx:defsystem.lisp" :error-file nil :load t)
#+sbcl
(progn (compile-file "clx:defsystem.lisp")
(load "clx:defsystem"))
(with-compilation-unit ()
(#+cmu xlib:compile-clx #-cmu compile-clx (pathname "CLX:")))