diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 7 | ||||
-rw-r--r-- | src/boot/initial-env.lisp | 2 | ||||
-rw-r--r-- | src/boot/translator.boot | 10 | ||||
-rw-r--r-- | src/lisp/Makefile.in | 7 | ||||
-rw-r--r-- | src/lisp/core.lisp.in | 5 |
5 files changed, 28 insertions, 3 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index ba5b34b1..f1db0f63 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,5 +1,12 @@ 2010-05-07 Gabriel Dos Reis <gdr@cse.tamu.edu> + * lisp/core.lisp.in ($FilesToRetain): New. Export. + * lisp/Makefile.in: Tidy. + * boot/translator.boot (retainFile?): New. + (compileBootHandler): Use it. + +2010-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + * interp/as.boot: Miscellaneous cleanup. * interp/ax.boot: Likewise. * interp/br-con.boot: Likewise. diff --git a/src/boot/initial-env.lisp b/src/boot/initial-env.lisp index dd67e0c4..34a4efc4 100644 --- a/src/boot/initial-env.lisp +++ b/src/boot/initial-env.lisp @@ -1,6 +1,6 @@ ;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. -;; Copyright (C) 2007-2009, Gabriel Dos Reis. +;; Copyright (C) 2007-2010, Gabriel Dos Reis. ;; All rights reserved. ;; ;; Redistribution and use in source and binary forms, with or without diff --git a/src/boot/translator.boot b/src/boot/translator.boot index ebedbe56..ff996f23 100644 --- a/src/boot/translator.boot +++ b/src/boot/translator.boot @@ -745,12 +745,20 @@ translateBootFile(progname, options, file) == outFile := getOutputPathname options or defaultBootToLispFile file BOOTTOCL(file, ENOUGH_-NAMESTRING outFile) +retainFile? ext == + Option 'all in $FilesToRetain or Option 'yes in $FilesToRetain => true + Option 'no in $FilesToRetain => false + Option ext in $FilesToRetain + +TRACE retainFile? + compileBootHandler(progname, options, file) == intFile := BOOTTOCL(file, getIntermediateLispFile(file,options)) errorCount() ~= 0 => nil intFile => objFile := compileLispHandler(progname, options, intFile) - DELETE_-FILE intFile + if not retainFile? 'lisp then + DELETE_-FILE intFile objFile nil diff --git a/src/lisp/Makefile.in b/src/lisp/Makefile.in index 4933e90b..c1685b47 100644 --- a/src/lisp/Makefile.in +++ b/src/lisp/Makefile.in @@ -1,4 +1,4 @@ -# Copyright (C) 2007-2009, Gabriel Dos Reis. +# Copyright (C) 2007-2010, Gabriel Dos Reis. # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -137,10 +137,15 @@ float_type = @float_type@ double_type = @double_type@ string_type = @string_type@ +oa_comma =, + +oa_keep_files = $(patsubst %,|%|,$(subst $(oa_comma), ,@oa_keep_files@)) + edit = sed \ -e 's|@open_axiom_installdir[@]|$(open_axiom_installdir)|g' \ -e 's|@axiom_optimize_options[@]|$(axiom_optimize_options)|g' \ -e 's|@oa_editor[@]|$(oa_editor)|g' \ + -e 's/@oa_keep_files[@]/$(oa_keep_files)/g' \ -e 's|@host[@]|$(host)|g' \ -e 's|@build[@]|$(build)|g' \ -e 's|@target[@]|$(target)|g' \ diff --git a/src/lisp/core.lisp.in b/src/lisp/core.lisp.in index 5078b47a..94e8823c 100644 --- a/src/lisp/core.lisp.in +++ b/src/lisp/core.lisp.in @@ -91,6 +91,7 @@ "$LispOptimizeOptions" "$StandardLinking" "$ECLVersionNumber" + "$FilesToRetain" "getOptionValue" "getCommandLineArguments" @@ -136,6 +137,10 @@ (defconstant |$systemInstallationDirectory| "@open_axiom_installdir@/") +;; File kinds to retain. +(defconstant |$FilesToRetain| + '(@oa_keep_files@)) + ;; Lisp compiler optimization settings. (defconstant |$LispOptimizeOptions| '(@axiom_optimize_options@)) |