aboutsummaryrefslogtreecommitdiff
path: root/src/lisp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lisp')
-rw-r--r--src/lisp/Makefile.in17
-rw-r--r--src/lisp/core.lisp.in11
2 files changed, 27 insertions, 1 deletions
diff --git a/src/lisp/Makefile.in b/src/lisp/Makefile.in
index 5bf625d4..c9a76d8d 100644
--- a/src/lisp/Makefile.in
+++ b/src/lisp/Makefile.in
@@ -117,12 +117,27 @@ base-lisp$(EXEEXT): core.$(FASLEXT)
axiom_optimize_options = @axiom_optimize_options@
+void_type = @void_type@
+char_type = @char_type@
+int_type = @int_type@
+float_type = @float_type@
+double_type = @double_type@
+string_type = @string_type@
+pointer_type = @pointer_type@
+
edit = sed \
-e 's|@open_axiom_installdir[@]|$(open_axiom_installdir)|g' \
-e 's|@axiom_optimize_options[@]|$(axiom_optimize_options)|g' \
-e 's|@host[@]|$(host)|g' \
-e 's|@build[@]|$(build)|g' \
- -e 's|@target[@]|$(target)|g'
+ -e 's|@target[@]|$(target)|g' \
+ -e 's|@void_type[@]|$(void_type)|g' \
+ -e 's|@char_type[@]|$(char_type)|g' \
+ -e 's|@int_type[@]|$(int_type)|g' \
+ -e 's|@float_type[@]|$(float_type)|g' \
+ -e 's|@double_type[@]|$(double_type)|g' \
+ -e 's|@string_type[@]|$(string_type)|g' \
+ -e 's|@pointer_type[@]|$(pointer_type)|g'
core.lisp: $(srcdir)/core.lisp.in
$(edit) $< > $@.tmp
diff --git a/src/lisp/core.lisp.in b/src/lisp/core.lisp.in
index 23b119ac..433dc720 100644
--- a/src/lisp/core.lisp.in
+++ b/src/lisp/core.lisp.in
@@ -72,6 +72,7 @@
"$faslType"
"$systemInstallationDirectory"
+ "$NativeTypeTable"
"getCommandLineArguments"
"processCommandLine"
@@ -774,3 +775,13 @@
#+ :sbcl
(eval-when (:load-toplevel :execute)
(pushnew #'shoe-provide-module sb-ext:*module-provider-functions*))
+
+;; native data type translation table
+(defconstant |$NativeTypeTable|
+ '((|void| . @void_type@)
+ (|char| . @char_type@)
+ (|int| . @int_type@)
+ (|float| . @float_type@)
+ (|double| . @double_type@)
+ (|string| . @string_type@)
+ (|pointer| . @pointer_type@)))