Parent Directory | Revision Log
|Links to HEAD:||(view) (annotate)|
Need to precompile the ef slots for both unicode and non-unicode builds. (This was broken in the 2010-04 snapshot.) code/fd-stream-comp.lisp: o Precompile ef slots there for ISO8859-1. code/fd-stream-extfmts.lisp: o Remove the precompile stuff. tools/worldcom.lisp: o Compile fd-stream-comp. tools/worldload.lisp: o Load fd-stream-comp.
Merge intl-branch 2010-03-18 to HEAD. To build, you need to use boot-2010-02-1 as the bootstrap file. You should probably also use the new -P option for build.sh to generate and update the po files while building.
Restart internalization work. This new branch starts with code from the intl-branch on date 2010-02-12 18:00:00+0500. This version works and LANG=en@piglatin bin/lisp works (once the piglatin translation is added).
Add support for localization. From Paul Foley. bootfiles/20a/boot-2010-02-1.lisp: o New file to bootstrap localization support. code/intl.lisp: o New file that implements localization. code/exports.lisp: o Define INTL package o Add INTL package to LISP tools/worldbuild.lisp tools/worldcom.lisp tools/worldload.lisp o Compile intl.lisp
room.lisp doesn't currently build, so don't even bother to load it. Don't need it right now.
Merge Unicode work to trunk. From label unicode-utf16-extfmt-2009-06-11.
Merge changes from utf16 branch to update to snapshot 2008-12.
Merge Snapshot 2008-12 to this branch. Some tweaks needed in boot-2008-05-cross-unicode-x86.lisp and the Config files. FreeBSD and Darwin/x86 untested, but Linux and Solaris build ok.
Merge in SSE2 changes from sse2-packed-branch (tag sse2-packed-2008-11-12).
Set the *target-core-name* to lisp-sse2.core, lisp-x87.core, or lisp.core, as appropriate.
Restore buildability without unicode.
More updates from Paul. fd-stream-extfmt.lisp actually implements the external formats which now work. Cross-compile works fine. code/fd-stream-extfmt.lisp: o New file implementing external formats tools/worldcom.lisp: o Compile extfmts.lisp before fd-stream, since fd-stream uses some macros from extfmts. o Compile fd-stream-extfmt tools/worldload.lisp: o Load fd-stream-extfmt at the end. (Can't load it as part of kernel.core. Not enough is set up yet.) code/extfmts.lisp: o Avoid loading files, etc., early in the boot sequence o Add INVERT-TABLE function needed by some formats. code/fd-stream.lisp: o Some cleanups (I think) o Fix EOF handling
Import Paul Foley's external-formats support. New files: o code/extfmts.lisp o pcl/simple-streams/external-formats/iso8859-1.lisp o pcl/simple-streams/external-formats/void.lisp code/exports.lisp: o Export the new symbols STRING-TO-OCTETS, OCTETS-TO-STRING, *DEFAULT-EXTERNAL-FORMAT*, ENCODE-STRING, and DECODE-STRING from the STREAM package o Make the symbols in the EXT package too. pcl/simple-streams/internal.lisp: o Move the implementation of STRING-TO-OCTETS and friends to a new file (extfmts.lisp). pcl/simple-streams/external-formats/utf-8.lisp: o New implementation. tools/make-main-dist.sh: o Create new target directory to hold external formats o Copy all of the external formats to the new directory. tools/pclcom.lisp: o Compile new code tools/worldcom.lisp: o Compile code/extfmts.lisp tools/worldload.lisp: o Load code/extfmts.lisp
Environment access functions from CLtL2. Not all of the functions specified in CLtL2 are implemented yet. These functions live in the EXTENSIONS package. code/env-access.lisp: o The implementation. (Based on code from SBCL) code/exports.lisp: o Export the symbols from the EXTENSIONS package. o Import them into the C package. tools/worldcom.lisp: o Compile env-access.lisp; tools/worldload.lisp: o Load env-access.
Remove package nickname additions. This actions cause the standard build process to error.
Merge code from main branch of 2005-12-17 to ppc gencgc branch. Still doesn't work of course.
Merge snapshot-2005-05 to this branch.
Apply Lynn Quam's proposed enhancements to fd-streams allowing input streams opened with element-type (unsigned-byte 8) to be also opened for character input. This gives simple-streams semantics to fd-streams. * code/fd-stream.lisp o Make FD-STREAM-IN use PICK-INPUT-ROUTINE to select the correct type of input. o Add *FD-STREAM-ENABLE-CHARACTER-AND-BINARY-INPUT* to allow binary and character input. Currently defaults to NIL, but will change to T. * code/stream.lisp o New READ-INTO-SIMPLE-STRING to allow stream element-type of (unsigned-byte 8). o Support reading and writing simple arrays of single-float and double-float. o Strings can be written to streams of element-type '(unsigned-byte 8). * tools/worldcom.lisp o Compile stream-vector-io.lisp. * tools/worldload.lisp o Load stream-vector-io. * code/stream-vector-io.lisp o New file implementing READ-VECTOR and WRITE-VECTOR.
Move the loop pretty-printer to its own file because of the MIT license. pprint-loop.lisp: o New file containing the loop pprinter, with XP license pprint.lisp: o Remove loop pprinter code. o Call initializer to enable the loop pprinter at the right time. worldcom.lisp: o Compile pprint-loop worldload.lisp: o Load pprint-loop at the right time.
Perform trivial merge from head to unicode-branch.
TRACE was broken if CMUCL wasn't built from a version that included PCL, because it needed PCL's walker code. Fix this by always building with PCL's walker, which is independent of PCL: code/fwrappers.lisp: o Always use the PCL version, assuming PCL walker is included. pcl/defsys.lisp: o Don't build walk.lisp here, because it's built as a part of CMUCL. o Fix up dependencies. tools/worldcom.lisp: o Compile up pcl/walk.lisp tools/worldload.lisp: o Load up pcl/walk.lisp
Remove package nicknames USER from COMMON-LISP-USER. Add a new package COMMON-LISP which LISP uses, so that COMMON-LISP no longer has the non-ANSI nickname LISP. To bootstrap, use boot13.lisp as target:bootstrap.lisp with pmai's build scripts, and do a full compile. * src/bootfiles/18e/boot13.lisp: Change for all the package changes. * src/code/exports.lisp: New package common-lisp, which lisp uses. * src/tools/worldload.lisp: * src/tools/setup.lisp: Use cl-user instead of user. Use lisp:: instead of cl::. * src/tools/worldcom.lisp: * src/tools/snapshot-update.lisp: * src/tools/pclcom.lisp: * src/tools/mk-lisp: * src/tools/hemcom.lisp: * src/tools/config.lisp: * src/tools/comcom.lisp: * src/tools/clxcom.lisp: * src/tools/clmcom.lisp: * src/pcl/defsys.lisp: * src/motif/lisp/initial.lisp: * src/interface/initial.lisp: * src/hemlock/lispmode.lisp (setup-lisp-mode): Use cl-user instead of user. * src/code/save.lisp (assert-user-package): * src/code/print.lisp (%with-standard-io-syntax): Find cl-user package instead of user. * src/code/package.lisp (package-locks-init): Add lisp. (package-init): Don't add user nickname to cl-user. * src/code/ntrace.lisp (*trace-encapsulate-package-names*): Add common-lisp. * src/code/hash.lisp (toplevel): * src/code/hash-new.lisp (toplevel): Use in-package :lisp instead of :common-lisp. * src/code/float-trap.lisp (sigfpe-handler): Don't qualify floating-point-inexact with ext:. * src/pcl/simple-streams/strategy.lisp (sc): * src/pcl/simple-streams/null.lisp (null-read-char): * src/pcl/simple-streams/internal.lisp (allocate-buffer) (free-buffer): * src/pcl/simple-streams/impl.lisp (%check, %read-line) (%peek-char, %read-byte): * src/pcl/simple-streams/file.lisp (open-file-stream) (device-close): * src/pcl/simple-streams/classes.lisp (simple-stream) (device-close): * src/pcl/macros.lisp (toplevel): * src/pcl/braid.lisp (lisp::sxhash-instance): * src/pcl/env.lisp (toplevel): * src/compiler/generic/objdef.lisp (symbol-hash): * src/code/stream.lisp (read-sequence, write-sequence): * src/code/macros.lisp (defmacro, deftype): * src/code/eval.lisp (interpreted-function): * src/code/defstruct.lisp (defstruct): * src/code/debug.lisp (debug-eval-print): Use lisp:: instead of cl::.
Add fwrappers. Rewrite TRACE and PROFILE to use fwrappers. To bootstrap, use boot12.lisp with pmai's scripts. * src/bootfiles/18e/boot12.lisp: New file. * src/tools/worldload.lisp, src/tools/worldcom.lisp: * src/tools/worldbuild.lisp: Add code:fwrappers. * src/docs/cmu-user/extensions.tex (Function Wrappers): New section. * src/code/fwrappers.lisp: New file. * src-fw/pcl/defs.lisp (gdefinition): Don't check for profiled functions. * src-fw/code/exports.lisp: Add walker and fwrappers. * src-fw/code/fdefinition.lisp (fdefn-init): Set *valid-function-names* to nil. (encapsulation): Structure removed. (do-encapsulations, encapsulation, last-encapsulation) (push-encapsulation, encapsulate, unencapsulate, encapsulated-p): Removed. There is a compatibility layer in fwrappers.lisp. (fdefinition, %set-fdefinition): Rewritten. * src/code/profile.lisp: Remove #+cmu and #-cmu. ("PROFILE"): Use fwrappers. (*profile-info*): Removed. (profile-info): Redefined. (*existing-encapsulations*): Removed. (reset-profile-info, profile-info-profiling-values): New functions. (make-profile-encapsulation): Removed. (profile): New function name syntax. (make-profile-fwrapper-name, make-profile-fwrapper): New functions. (def-profile-fwrapper): Precompute some fwrappers. (ensure-profile-fwrapper, find-profile-fwrapper, pi-or-lose): New functions. (profile-1-function): Rewritten. (unprofile-1-function): Ditto. (re-profile-redefined-function): New function. (toplevel): Push it on *setf-fdefinition-hook*. * src/code/ntrace.lisp (trace-call): Removed. (trace-fwrapper): New fwrapper. (trace-1): Use fwrap instead of encapsulate. (untrace-1): Use funwrap instead of unencapsulate.
Revived SGI MIPS port, from Mike McDonald.
Make (time ...) and the profiler do precise measuring of space allocation. It will also not overflow or bomb out when consing amounts cross most-positive fixnum. The new profiler also has an interface to plug in your own print function (also dictates sorting or results). This is written on gencgc/x86 but tests indicated the fallsbacks for other platforms work. The dfixnum package included here is sketchy.
Checked in Brian Spilsbury's experimental Unicode, locales, and dialect support patchset. This lives on its own branch, so that people can play with it and tweak it, without disturbing 18e release engineering on the main branch. Bootstrapping has only been tried on LINKAGE_TABLE x86/Linux builds. A working cross-compile script is checked in under bootfiles/19a/boot1-cross-unicode.lisp. The script still leaves you with some interactive errors, on the cross compile, which you should answer with 2. See the mailing list for more information.
The removal of the OLD-XX package nicknames for the VM packages causes problems for certain kinds of cross-compiles, which need the nickname at worldload time to gather up OLD-XX references into the non-OLD package. Hence we temporarily add the OLD-XX nicknames back during world-load.
Changed :no-compiler conditionals to include :runtime, since the latter implies the former. This change makes runtime-only builds work again. All the runtime vs. no-* feature confusion should probably be fixed at some time in the future by letting runtime push the relevant no-* features onto *features*.
Mega commit to bring RELENG_18 branch in sync with HEAD in preparation for release tagging 18d.
Change the save-lisp to respect the target: search-list, so that the final core is now saved to target:lisp/lisp.core, instead of the current directory.
We can't have complex forms in worldload, since we might be building a core without the compiler (e.g. runtime cores). Neither let nor dolist are allowed. The nreverse is there to keep the order of the remaining features unchanged, since set-difference reverses the list in the process.
Fix wrong sense of boolean test for RUNTIME feature. This was causing purify to not run while saving a core resulting in too big core on x86 with gencgc collector.
From Eric Marsden: Remove some build-time features that should not be in distributed .cores (:no-pcl :no-clm, etc).
Add support for ANSI specified :print-function and :print-object defstruct options while preserving previous behaviour. ANSI processing is enabled by ext:*ansi-defstruct-options-p* which must be NIL while compiling CMUCL, PCL, CLX, HEMLOCK to avoid flushing defined print-functions. This switch is turned ON when worldload builds a core with PCL in it.
Change a defvar to proclaim as defvar now requires the compiler be loaded. This enables the "runtime" system to be built again.
o Compiler backend for the PowerPC contributed by Gary Byers.
This (huge) revision brings the RELENG_18 branch up to the current HEAD. Note code/unix-glib2.lisp not yet included -- not sure it is ready to go.
Rewrite of the x86/GENCGC purify stack scavenging to reduce the chance of heap corruption and to try and handle return address on the stack. Enhance new-genesis to save the code fixups for x86 code objects allowing the code to be placed in the dynamic heap and thus garbage collected by purify.
Don't load rand or rand-mt19937 during a worldload on the x86 port as it is linked into the core.
Support for rand-mt19937.
Small comment fix.
Clarify the usage of loading native code into the dynamic space on the x86 port under CGC and GENCGC.
Fix the GENCGC support; can't use feature conditional forms in the early stages so will have to be hand edited.
Support for loading the GENCGC system; requires a few hacks to get the code into the dynamic heap.
Werkowskis source kit 1.03.7
Move loop after module because the bolix loop uses provide.
Load PCL before CLX so that it can use PCL stuff.
Fix the sgi update...
Updated for the SGI.
Try a different GC hack for flushing vop-parse info.
Move environment compacting to PURIFY. Avoid spurious purifies.
Always call pprint-init, since it doesn't depend on the compiler anymore.
Fix purify #-no-hemlock to #-(or runtime no-hemlock)
Changed stuff to use :RUNTIME feature to suppress loading everything, and to use the new maybe-byte-load and byte-load-over functions to load lots of byte code when RUNTIME is present.
#-gengc'ed a bunch of stuff that doesn't work on the gengc system.
Added support for the alpha.
Flushed calls to backq-init and sharp-init. Initialize std-lisp-readable from *readable* instead of vice-versa, becase *readable* is bound by load & can't be effectively assigned.
Moved stuff around some more.
Add some missing loads, and don't use file-comment until extensions is loaded.
Load error.*bytef, not bc-error.fasl.
Flushed obsolete comment. Load sharpm and backq. Load byte-compiled versions of error, defmacro and debug.
Changed lisp: search-list to target: for consistency with all other tools. Preserve value of target: so that sources can be located.
Load the CLM library file instead of individual fasls.
Comment out (load "code:inspect") cause it isn't used and it has errors.
Set up a default for modules:. Note: we have to do it here instead of in module.lisp because we clear the search lists after loading module.lisp.
Don't load purify when building a gengc system.
Don't load code/inspect if we are loading clm.
o.k., the actual problem was that hemlock was being purified w/o compressing its environment. I just deleted that purify.
Hmmmn, try shrink-vector on the tables, since some of them still seem to hang around.
delete spurious purify
Clobber the vectors of the VOLATILE-INFO-ENVs after we compact them, since someone is somehow retaining a reference to these structures in purify.
Added stuff to load in the Motif interface.
Get load of module.lisp for provide/require.
Add load of module.lisp for provide/require.
Explicitly load inspect after pcl instead of implicitly as part of clx-library.
Eliminate load of trace.lisp (the old tracer.)
Added hppa and x86 support.
Remove load of NTRACE
Don't stick the lisp-implementation version on the compiler version.
Load CLX and Hemlock from the combined -library files.
Changed the way the garbage collector gets turned on.
Merged trunk changes with gengc stuff.
Don't SETQ *LOAD-VERBOSE*, because the default value is now T. Moved the parsed-vop trashing stuff here from loadbackend, so we can load backends without lossing the parsed-vop info without having to bash on *features*.
Hacked over the stuff to load the compiler. The backend is now put in it's own compact-info-env so we can more easily build cross compilers.
Merged new-alien changes onto trunk.
new alien changes.
Call PURIFY multiple times & make multiple info environments. Hopefully this will improve locality.
Flushed some noise that was commented out. Use (lisp::clear-all-search-lists) to clear the search lists instead of explicitly calling clrhash on the hash table.
Don't load pprint because it's loaded in worldbuild now.
Added load of code:final.
Removed one of the two loads of pprint, because we only need one.
Changed XP to PPRINT.
Added new file ntrace.lisp.
Changes for gengc system.
Load save at worldbuild time instead of worldload time so that sunos-os can refer to *before-save-initializations*.
Fixed value stored into *hemlock-version*.
Added a load of syscall because we need to re-run some of the exports. This is bogus.
Added note about needing (load (open ...)).
Loaded hemload from tools: instead of hem:.
Changed "load-hem" to "hemload".
Changed version hackery. Now we only prompt for the lisp-implementation-version, and then tack that onto the end of the compiler and hemlock versions.
Added inspect to the load order.
Added load of setf-funs. Flushed some old commented-out stuff.
Moved load of room to after compiler, and made it conditional on the no-compiler features, since it depends on the VM object format database.
Added profile to the load.
Added RT support.
Added NO-COMPILER, just for grins.
New file header with RCS header FILE-COMMENT.
Added load of foreign, 'cause it now exists for the new system.
Just load pcl:pclload and let it load everything else.
Set the search lists vm: and assem: conditionally.
Added load of ``loop.lisp''
Set the logical name vm: instead of mips:, 'cause that's what loadcom expects now. Include both the generic and specific dirs in vm: and assem:.
Added load of query, 'cause it got left out. #|...|#'ed the :constants arg to purify, 'cause it doesn't work.
Pass the compact info environment into purify as a constant.
Added noise to load PCL if :no-pcl isn't in *features*. Moved the (in-package "USER") from before the save-lisp progn to inside it so that the progn form gets read into the correct package.
Added an (in-package "USER") right before the save-lisp so that command line switches will run with *package* bound correctly.
Added CLX. Added switched (:no-xp, :no-hemlock, :no-clx) to keep from loading those parts.
Moved MIPS branch onto trunk; no merge necessary.
Added hemlock to the load.
Added run-program to the list of loads.
Took out the #|/|# surrounding the loads of internet, wire, and remote.
Uncommmented-out hemlock loading, and specified the right base file for the load-foreign call.
Added noise to load and initialize the pretty printer.
Moved the order of some things around so that save gets loaded before we try to use any of the functions in it.
Get around the fact that we can't evaluate conditions by calling a function to verify that worldload was started in the user package. Load code:sysmacs. Supply #'initial-init-function to the save-lisp, so that gc will be turned on.
Added search-list assem. Added loads of rand, trace, weak, and loadcom.
Added purify, save, commandline, sort, time, tty-inspect, and describe to the loads.
Initial MIPS version.
Un-commented-out loading of CLX, instead making it conditional on the CLX feature.
Changed the :INIT-FUNCTION to SAVE-LISP to be the compiled WORLD-LOAD-INIT-FUNCTION, rather than an interpreted lambda.
Added some force-output's and moved run-program to after the initial load-foreign.
Flushed hacking on *ALREADY-MAYBE-GCING*. Instead, we call GC-ON in the SAVE-LISP init function.
Commented out load of logical-names.lisp so that we can build from different areas more easily.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.
|Powered by ViewVC 1.1.5|