forked from usocket/usocket
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathusocket.system
More file actions
89 lines (83 loc) · 2.98 KB
/
usocket.system
File metadata and controls
89 lines (83 loc) · 2.98 KB
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
;;; -*- Mode: LISP; Package: :cl-user; BASE: 10; Syntax: ANSI-Common-Lisp; -*-
;;;
;;; Time-stamp: <2010-12-20 11:36:14 IST>
;;; Touched: Mon Dec 20 11:35:11 2010 +0530 <enometh@meer.net>
;;; Bugs-To: enometh@meer.net
;;; Status: Experimental. Do not redistribute
;;; Copyright (C) 2010 Madhu. All Rights Reserved.
;;;
;;; ;madhu 101220 "Packages/usocket-svn-r569/"
;;; ;madhu 191210 "usocket-0.8.2"
(in-package "CL-USER")
(defvar *usocket-source-dir*
(merge-pathnames "usocket/" (translate-logical-pathname "EXTERN:")))
(defvar *usocket-binary-dir* (binary-directory *usocket-source-dir*))
;;; NOTE: the key "art" here is, no need to recompile any file when switching
;;; between a native backend and IOlib backend. -- Chun Tian (binghe)
#+sample
(pushnew :usocket-iolib *features*)
(mk:defsystem :usocket
:source-pathname *usocket-source-dir*
:binary-pathname *usocket-binary-dir*
:source-extension "lisp"
:depends-on (:split-sequence
#+(and (or sbcl ecl)
(not usocket-iolib)) :sb-bsd-sockets
#+(and mkcl (not usocket-iolib)) :sockets
#+usocket-iolib :iolib)
:components ((:file "package")
(:module "vendor" :depends-on ("package")
:components (#+mcl (:file "kqueue")
#+mcl (:file "OpenTransportUDP")))
(:file "usocket" :depends-on ("vendor"))
(:file "condition" :depends-on ("usocket"))
#-usocket-iolib
(:module "backend" :depends-on ("condition")
:components (#+abcl (:file "abcl")
#+(or allegro cormanlisp)
(:file "allegro")
#+clisp (:file "clisp")
#+(or openmcl clozure)
(:file "openmcl")
#+clozure (:file "clozure" :depends-on ("openmcl"))
#+cmu (:file "cmucl")
#+(or sbcl ecl clasp mkcl)
(:file "sbcl")
#+(or ecl mkcl) (:file "ecl" :depends-on ("sbcl"))
#+clasp (:file "clasp" :depends-on ("sbcl"))
#+lispworks (:file "lispworks")
#+mcl (:file "mcl")
#+mocl (:file "mocl")
#+scl (:file "scl")
#+genera (:file "genera")
#+mezzano (:file "mezzano")))
#-usocket-iolib
(:file "option" :depends-on ("backend"))
#+usocket-iolib
(:module "backend" :depends-on ("condition")
:components ((:file "iolib"))))
#+nil
((:file "pkg")
(:module "vendor" :depends-on ("pkg")
:components
((:file "split-sequence")
#+mcl (:file "kqueue")
#+openmcl (:file "ccl-send")
(:file "spawn-thread")))
(:file "usocket" :depends-on ("vendor"))
(:file "condition" :depends-on ("usocket"))
(:module "backend" :depends-on ("condition")
:components
(#+abcl
(:file "abcl")
#+clisp (:file "clisp")
#+cmu (:file "cmucl")
#+scl (:file "scl")
#+(or sbcl ecl mkcl) (:file "sbcl")
#+lispworks (:file "lispworks")
#+mcl (:file "mcl")
#+openmcl (:file "openmcl")
#+allegro (:file "allegro")))
(:file "server" :depends-on ("backend"))))
#+nil
(mk:oos :usocket :load :compile-during-load t)