diff options
author | Gabriel Dos Reis <gdr@axiomatics.org> | 2015-12-23 22:38:12 -0800 |
---|---|---|
committer | Gabriel Dos Reis <gdr@axiomatics.org> | 2015-12-23 22:38:12 -0800 |
commit | db9c4c7cd0c08a8b35a7d56d0279139021d8b945 (patch) | |
tree | aebda0694fe0b90435b686da85021c19c7eb8262 | |
parent | 72bbd833136a8a36eab1597c2f32f0890caeade8 (diff) | |
download | open-axiom-db9c4c7cd0c08a8b35a7d56d0279139021d8b945.tar.gz |
Retain Lisp code generated from algebra if asked.
-rw-r--r-- | src/ChangeLog | 7 | ||||
-rw-r--r-- | src/boot/translator.boot | 4 | ||||
-rw-r--r-- | src/interp/lisplib.boot | 11 | ||||
-rw-r--r-- | src/lisp/core.lisp.in | 3 |
4 files changed, 20 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 447fde62..645484fa 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2015-12-23 Gabriel Dos Reis <gdr@axiomatics.org> + + * interp/lisplib.boot (lisplibDoRename): Retain generated Lisp + file if asked. + * lisp/core.lisp.in ($LispFileType): Export. + * boot/translator.boot (retainFile?): Likewise. + 2014-11-20 Gabriel Dos Reis <gdr@integrable-solutions.net> * interp/lisplib.boot (lisplibDoRename): Fix thinko. diff --git a/src/boot/translator.boot b/src/boot/translator.boot index 34aa7816..8ba8e4fc 100644 --- a/src/boot/translator.boot +++ b/src/boot/translator.boot @@ -1,6 +1,6 @@ -- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007-2014, Gabriel Dos Reis. +-- Copyright (C) 2007-2015, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -40,7 +40,7 @@ import parser import ast namespace BOOTTRAN module translator (evalBootFile, loadNativeModule, loadSystemRuntimeCore, - string2BootTree, genImportDeclaration) + string2BootTree, genImportDeclaration, retainFile?) ++ If non nil, holds the name of the current module being translated. $currentModuleName := nil diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index 6ab93035..d708eb3f 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -1,6 +1,6 @@ -- Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -- All rights reserved. --- Copyright (C) 2007-2013, Gabriel Dos Reis. +-- Copyright (C) 2007-2015, Gabriel Dos Reis. -- All rights reserved. -- -- Redistribution and use in source and binary forms, with or without @@ -584,10 +584,17 @@ finalizeLisplib(db,libName) == lisplibDoRename db == lib := dbLibstream db output := dbOutputPath db => + codepath := filePath libCodeStream lib modpath := filePathString - makeFilePath(type <- $faslType,defaults <- filePath libCodeStream lib) + makeFilePath(type <- $faslType,defaults <- codepath) do renameFile(modpath,output) = 0 or copyFile(modpath,output) + -- Retain genetared Lisp code for inspection, if possible. + if retainFile? 'lisp then + lsp := filePathString codepath + dst := filePathString + makeFilePath(type <- $LispFileType,defaults <- output) + renameFile(lsp,dst) = 0 or copyFile(lsp,dst) removeFile libStationaryDirname lib output removeFile libDirname lib diff --git a/src/lisp/core.lisp.in b/src/lisp/core.lisp.in index cd1a6775..302a2c78 100644 --- a/src/lisp/core.lisp.in +++ b/src/lisp/core.lisp.in @@ -3,7 +3,7 @@ ;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. ;; All rights reserved. ;; -;; Copyright (C) 2007-2014, Gabriel Dos Reis. +;; Copyright (C) 2007-2015, Gabriel Dos Reis. ;; All rights reserved. ;; ;; Redistribution and use in source and binary forms, with or without @@ -182,6 +182,7 @@ "$targetPlatform" "$faslType" + "$LispFileType" "$delayedFFI" "$useLLVM" "$effectiveFaslType" |