source: trunk/source/level-0/l0-init.lisp @ 14403

Last change on this file since 14403 was 14403, checked in by rme, 9 years ago

Add :arm to *features* when #+arm-target. Closes ticket:770.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 6.8 KB
Line 
1;;;-*-Mode: LISP; Package: CCL -*-
2;;;
3;;;   Copyright (C) 2009 Clozure Associates
4;;;   Copyright (C) 1994-2001 Digitool, Inc
5;;;   This file is part of Clozure CL. 
6;;;
7;;;   Clozure CL is licensed under the terms of the Lisp Lesser GNU Public
8;;;   License , known as the LLGPL and distributed with Clozure CL as the
9;;;   file "LICENSE".  The LLGPL consists of a preamble and the LGPL,
10;;;   which is distributed with Clozure CL as the file "LGPL".  Where these
11;;;   conflict, the preamble takes precedence. 
12;;;
13;;;   Clozure CL is referenced in the preamble as the "LIBRARY."
14;;;
15;;;   The LLGPL is also available online at
16;;;   http://opensource.franz.com/preamble.html
17
18(in-package "CCL")
19
20(defconstant array-total-size-limit
21  #.(expt 2 (- target::nbits-in-word target::num-subtag-bits))
22  "the exclusive upper bound on the total number of elements in an array")
23
24
25;Features for #+/- conditionalization:
26(defparameter *features*
27  '(:common-lisp
28    :openmcl
29    :ccl
30    :ccl-1.2
31    :ccl-1.3
32    :ccl-1.4
33    :ccl-1.5
34    :ccl-1.6
35    :clozure
36    :clozure-common-lisp
37    :ansi-cl
38    #-windows-target :unix
39    :openmcl-unicode-strings
40    ;; Threads and MOP stuff is pretty redundant.
41    :openmcl-native-threads
42    :openmcl-partial-mop
43    :mcl-common-mop-subset
44    :openmcl-mop-2
45    ;; Thread-private hash-tables were introduced in version 1.0
46    :openmcl-private-hash-tables
47    ;; Hash-consing support (special primitives for allocating
48    ;; and managing statically allocated CONS cells) will be
49    ;; added in 1.1
50    ;; Was dropped in 1.2
51    ;; :openmcl-hash-consing
52    #+eabi-target :eabi-target
53    #+ppc-target :powerpc
54    #+ppc-target :ppc-target
55    #+ppc-target :ppc-clos              ; used in encapsulate
56    #+ppc32-target :ppc32-target
57    #+ppc32-target :ppc32-host
58    #+ppc64-target :ppc64-target
59    #+ppc64-target :ppc64-host
60    #+x8632-target :x8632-target
61    #+x8632-target :x8632-host
62    #+x8664-target :x86-64
63    #+x8664-target :x86_64
64    #+x8632-target :x86
65    #+x86-target :x86-target
66    #+x86-target :x86-host
67    #+x8664-target :x8664-target
68    #+x8664-target :x8664-host
69    #+arm-target :arm
70    #+arm-target :arm-target
71    #+linux-target :linux-host
72    #+linux-target :linux-target
73    #+linuxppc-target :linuxppc-target
74    #+linuxppc-target :linuxppc-host
75    #+linuxx86-target :linuxx86-target
76    #+linuxx8664-target :linuxx8664-target
77    #+linuxx8664-target :linuxx8664-host
78    #+linuxx8632-target :linuxx8632-target
79    #+linuxx8632-target :linuxx8632-host
80    #+linuxarm-target :linuxarm-target
81    #+linuxarm-target :linuxarm-host
82    #+darwinarm-target :darwinarm-target
83    #+darwinarm-target :darwinarm-host
84    #+darwinppc-target :darwinppc-target
85    #+darwinppc-target :darwinppc-host
86    #+darwinppc-target :darwin-target
87    #+freebsd-target :freebsd-host
88    #+freebsd-target :freebsd-target
89    #+freebsdx86-target :freebsdx86-target
90    #+freebsdx8664-target :freebsdx8664-target
91    #+freebsdx8664-target :freebsdx8664-host
92    #+freebsdx8632-target :freebsdx8632-target
93    #+freebsdx8632-target :freebsdx8632-host
94    #+darwin-target :darwin-host
95    #+darwin-target :darwin-target
96    #+darwinx86-target :darwinx86-target
97    #+darwinx8632-target :darwinx8632-target
98    #+darwinx8632-target :darwinx8632-host
99    #+darwinx8664-target :darwinx8664-target
100    #+darwinx8664-target :darwinx8664-host
101    #+windows-target :windows-host
102    #+windows-target :windows-target
103    #+win64-target :win64-target
104    #+win64-target :win64-host
105    #+win32-target :win32-target
106    #+win32-target :win32-host
107    #+solaris-target :solaris-host
108    #+solaris-target :solaris-target
109    #+solarisx86-target :solarisx86-target
110    #+solarisx8664-target :solarisx8664-target
111    #+solarisx8664-target :solarisx8664-host
112    #+solarisx8632-target :solarisx8632-target
113    #+solarisx8632-target :solarisx8632-host
114    #+(and ppc-target poweropen-target) :poweropen-target
115    #+64-bit-target :64-bit-target
116    #+64-bit-target :64-bit-host
117    #+32-bit-target :32-bit-target
118    #+32-bit-target :32-bit-host
119    #+darwin-target :darwin
120    #+linux-target :linux
121    #+freebsd-target :freebsd
122    #+solaris-target :solaris
123    #+windows-target :windows
124    #+little-endian-target :little-endian-target
125    #+little-endian-target :little-endian-host
126    #+big-endian-target :big-endian-target
127    #+big-endian-target :big-endian-host
128    )
129  "a list of symbols that describe features provided by the
130   implementation")
131
132(defparameter *optional-features* () "Set by build process")
133
134(defparameter *load-verbose* nil
135  "the default for the :VERBOSE argument to LOAD")
136
137;All Lisp package variables... Dunno if this still matters, but it
138;used to happen in the kernel...
139(dolist (x '(* ** *** *APPLYHOOK* *DEBUG-IO*
140             *DEFAULT-PATHNAME-DEFAULTS* *ERROR-OUTPUT* *EVALHOOK*
141             *FEATURES* *LOAD-VERBOSE* *MACROEXPAND-HOOK* *MODULES*
142             *PACKAGE* *PRINT-ARRAY* *PRINT-BASE* *PRINT-CASE* *PRINT-CIRCLE*
143             *PRINT-ESCAPE* *PRINT-GENSYM* *PRINT-LENGTH* *PRINT-LEVEL*
144             *PRINT-PRETTY* *PRINT-RADIX* *QUERY-IO* *RANDOM-STATE* *READ-BASE*
145             *READ-DEFAULT-FLOAT-FORMAT* *READ-SUPPRESS* *READTABLE*
146             *STANDARD-INPUT* *STANDARD-OUTPUT* *TERMINAL-IO* *TRACE-OUTPUT*
147             + ++ +++ - / // /// ARRAY-DIMENSION-LIMIT ARRAY-RANK-LIMIT
148             ARRAY-TOTAL-SIZE-LIMIT BOOLE-1 BOOLE-2 BOOLE-AND BOOLE-ANDC1
149             BOOLE-ANDC2 BOOLE-C1 BOOLE-C2 BOOLE-CLR BOOLE-EQV BOOLE-IOR
150             BOOLE-NAND BOOLE-NOR BOOLE-ORC1 BOOLE-ORC2 BOOLE-SET BOOLE-XOR
151             CALL-ARGUMENTS-LIMIT CHAR-CODE-LIMIT
152             DOUBLE-FLOAT-EPSILON DOUBLE-FLOAT-NEGATIVE-EPSILON
153             INTERNAL-TIME-UNITS-PER-SECOND LAMBDA-LIST-KEYWORDS
154             LAMBDA-PARAMETERS-LIMIT LEAST-NEGATIVE-DOUBLE-FLOAT
155             LEAST-NEGATIVE-LONG-FLOAT LEAST-NEGATIVE-SHORT-FLOAT
156             LEAST-NEGATIVE-SINGLE-FLOAT LEAST-POSITIVE-DOUBLE-FLOAT
157             LEAST-POSITIVE-LONG-FLOAT LEAST-POSITIVE-SHORT-FLOAT
158             LEAST-POSITIVE-SINGLE-FLOAT LONG-FLOAT-EPSILON
159             LONG-FLOAT-NEGATIVE-EPSILON MOST-NEGATIVE-DOUBLE-FLOAT
160             MOST-NEGATIVE-FIXNUM MOST-NEGATIVE-LONG-FLOAT
161             MOST-NEGATIVE-SHORT-FLOAT MOST-NEGATIVE-SINGLE-FLOAT
162             MOST-POSITIVE-DOUBLE-FLOAT MOST-POSITIVE-FIXNUM
163             MOST-POSITIVE-LONG-FLOAT MOST-POSITIVE-SHORT-FLOAT
164             MOST-POSITIVE-SINGLE-FLOAT MULTIPLE-VALUES-LIMIT PI
165             SHORT-FLOAT-EPSILON SHORT-FLOAT-NEGATIVE-EPSILON
166             SINGLE-FLOAT-EPSILON SINGLE-FLOAT-NEGATIVE-EPSILON))
167  (%symbol-bits x (%ilogior2 (%symbol-bits x) (ash 1 $sym_bit_special))))
168
169(defparameter *loading-file-source-file* nil)
170(defparameter *loading-toplevel-location* nil)
171
172(defvar *nx-speed* 1)
173(defvar *nx-space* 1)
174(defvar *nx-safety* 1)
175(defvar *nx-cspeed* 1)
176(defvar *nx-debug* 1)
177
178(defparameter *case-sensitive-filesystem* t)
179
180;;; end
Note: See TracBrowser for help on using the repository browser.