;; writing beginning boilerplate
(format t "/*~%")
(dolist (line
- '("This is a machine-generated file. Do not edit it by hand."
+ '("This is a machine-generated file. Please do not edit it by hand."
""
"This file contains low-level information about the"
"internals of a particular version and configuration"
(format t "#ifndef _SBCL_H_~%#define _SBCL_H_~%")
(terpri)
+ ;; propagating *SHEBANG-FEATURES* into C-level #define's
+ (dolist (shebang-feature-name (sort (mapcar #'symbol-name
+ sb-cold:*shebang-features*)
+ #'string<))
+ (format t
+ "#define LISP_FEATURE_~A~%"
+ (substitute #\_ #\- shebang-feature-name)))
+ (terpri)
+
;; writing miscellaneous constants
(format t "#define SBCL_CORE_VERSION_INTEGER ~D~%" sbcl-core-version-integer)
(format t
;; writing codes/strings for internal errors
(format t "#define ERRORS { \\~%")
- ;; FIXME: Is this just DO-VECTOR?
+ ;; FIXME: Is this just DOVECTOR?
(let ((internal-errors sb!c:*backend-internal-errors*))
(dotimes (i (length internal-errors))
(format t " ~S, /*~D*/ \\~%" (cdr (aref internal-errors i)) i)))