aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog14
-rw-r--r--src/algebra/Makefile.in6
-rw-r--r--src/algebra/Makefile.pamphlet6
-rw-r--r--src/interp/compiler.boot3
-rw-r--r--src/interp/i-syscmd.boot3
-rw-r--r--src/interp/sys-driver.boot2
-rw-r--r--src/interp/sys-globals.boot5
-rw-r--r--src/lisp/core.lisp.in1
8 files changed, 32 insertions, 8 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index daccf126..105b6db0 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,17 @@
+2008-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * lisp/core.lisp.in (getOptionValue): Export.
+ * interp/sys-driver.boot (initializeGlobalState): Record value for
+ --system-algebra.
+ * interp/sys-globals.boot ($buildingSystemAlgebra): Declare.
+ * interp/compiler.boot (compileSpad2Cmd): Don't build local
+ database if compiling system algebra.
+ * interp/i-syscmd.boot (compileAsharpCmd1): Likewise.
+ * algebra/Makefile.pamphlet (%.NRLIB/code.$(FASLEXT)): Use
+ --system-algebra.
+ (SPADPRSR.NRLIB/code.$(FASLEXT)): Likewise.
+ (PARSER.NRLIB/code.$(FASLEXT)): Likewise.
+
2008-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/Makefile.pamphlet: Simplify build of interpsys and AXIOMsys.
diff --git a/src/algebra/Makefile.in b/src/algebra/Makefile.in
index f230c252..1586fff7 100644
--- a/src/algebra/Makefile.in
+++ b/src/algebra/Makefile.in
@@ -863,7 +863,7 @@ ${OUT}/%.$(FASLEXT): %.NRLIB/code.$(FASLEXT)
.PRECIOUS: %.NRLIB/code.$(FASLEXT)
%.NRLIB/code.$(FASLEXT): %.spad
@ rm -rf $*.NRLIB
- ${INTERPSYS} --strap=strap --compile $<
+ ${INTERPSYS} --strap=strap --system-algebra --compile $<
# Compile bootstrap file to machine object code, and the result
# immediately available for AXIOMsys consumption.
strap/%.$(FASLEXT): %.lsp
@@ -904,11 +904,11 @@ $(axiom_build_texdir)/diagrams.tex: $(axiom_src_docdir)/diagrams.tex
SPADPRSR.NRLIB/code.$(FASLEXT): spad-parser.spad
@ rm -rf SPADPRSR.NRLIB
- ${INTERPSYS} --compile $<
+ ${INTERPSYS} --system-algebra --compile $<
PARSER.NRLIB/code.$(FASLEXT): script-parser.spad
@ rm -rf PARSER.NRLIB
- ${INTERPSYS} --compile $<
+ ${INTERPSYS} --system-algebra --compile $<
diff --git a/src/algebra/Makefile.pamphlet b/src/algebra/Makefile.pamphlet
index 45536ced..aaf1a1e9 100644
--- a/src/algebra/Makefile.pamphlet
+++ b/src/algebra/Makefile.pamphlet
@@ -1798,7 +1798,7 @@ ${OUT}/%.$(FASLEXT): %.NRLIB/code.$(FASLEXT)
.PRECIOUS: %.NRLIB/code.$(FASLEXT)
%.NRLIB/code.$(FASLEXT): %.spad
@ rm -rf $*.NRLIB
- ${INTERPSYS} --strap=strap --compile $<
+ ${INTERPSYS} --strap=strap --system-algebra --compile $<
@
<<genericBOOTSTRAPfiles>>=
@@ -1855,11 +1855,11 @@ $(axiom_build_texdir)/diagrams.tex: $(axiom_src_docdir)/diagrams.tex
SPADPRSR.NRLIB/code.$(FASLEXT): spad-parser.spad
@ rm -rf SPADPRSR.NRLIB
- ${INTERPSYS} --compile $<
+ ${INTERPSYS} --system-algebra --compile $<
PARSER.NRLIB/code.$(FASLEXT): script-parser.spad
@ rm -rf PARSER.NRLIB
- ${INTERPSYS} --compile $<
+ ${INTERPSYS} --system-algebra --compile $<
@
<<diagrams.tex (OUT from IN)>>=
diff --git a/src/interp/compiler.boot b/src/interp/compiler.boot
index 644a7f79..b3f6a7f7 100644
--- a/src/interp/compiler.boot
+++ b/src/interp/compiler.boot
@@ -1741,7 +1741,8 @@ compileSpad2Cmd args ==
compilerDoitWithScreenedLisplib(constructor, fun)
else
compilerDoit(constructor, fun)
- extendLocalLibdb $newConlist
+ if not $buildingSystemAlgebra then
+ extendLocalLibdb $newConlist
terminateSystemCommand()
spadPrompt()
diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot
index 9390db26..d45895b2 100644
--- a/src/interp/i-syscmd.boot
+++ b/src/interp/i-syscmd.boot
@@ -608,7 +608,8 @@ compileAsharpCmd1 args ==
else if ^beQuiet then
sayKeyedMsg("S2IZ0084", nil)
- extendLocalLibdb $newConlist
+ if not $buildingSystemAlgebra then
+ extendLocalLibdb $newConlist
compileAsharpArchiveCmd args ==
-- Assume we entered from the "compiler" function, so args ^= nil
diff --git a/src/interp/sys-driver.boot b/src/interp/sys-driver.boot
index 593244f3..f620ea09 100644
--- a/src/interp/sys-driver.boot
+++ b/src/interp/sys-driver.boot
@@ -189,6 +189,8 @@ initializeGlobalState() ==
RESTART0()
$NEWSPAD := true
$SPAD := true
+ $buildingSystemAlgebra :=
+ getOptionValue(Option '"system-algebra",%systemOptions())
++ execute Spad script
executeSpadScript(progname,options,file) ==
diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot
index bd47c14e..c66f0d82 100644
--- a/src/interp/sys-globals.boot
+++ b/src/interp/sys-globals.boot
@@ -468,3 +468,8 @@ $OutputStream :=
$ErrorStream :=
MAKE_-SYNONYM_-STREAM "*STANDARD-OUTPUT*"
+
+--%
+
+++ True if we are building the system algebra.
+$buildingSystemAlgebra := false
diff --git a/src/lisp/core.lisp.in b/src/lisp/core.lisp.in
index 6dff8f44..1339de0f 100644
--- a/src/lisp/core.lisp.in
+++ b/src/lisp/core.lisp.in
@@ -80,6 +80,7 @@
"$NativeTypeTable"
"$LispOptimizeOptions"
+ "getOptionValue"
"getCommandLineArguments"
"processCommandLine"
"handleCommandLine"