Annotation of GNUtools/emacs/lisp/loadup.el, revision 1.1.1.1

1.1       root        1: ;Load up standardly loaded Lisp files for Emacs.
                      2: ;; This is loaded into a bare Emacs to make a dumpable one.
                      3: ;; Copyright (C) 1985, 1986 Free Software Foundation, Inc.
                      4: 
                      5: ;; This file is part of GNU Emacs.
                      6: 
                      7: ;; GNU Emacs is free software; you can redistribute it and/or modify
                      8: ;; it under the terms of the GNU General Public License as published by
                      9: ;; the Free Software Foundation; either version 1, or (at your option)
                     10: ;; any later version.
                     11: 
                     12: ;; GNU Emacs is distributed in the hope that it will be useful,
                     13: ;; but WITHOUT ANY WARRANTY; without even the implied warranty of
                     14: ;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
                     15: ;; GNU General Public License for more details.
                     16: 
                     17: ;; You should have received a copy of the GNU General Public License
                     18: ;; along with GNU Emacs; see the file COPYING.  If not, write to
                     19: ;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
                     20: 
                     21: ;;; Disable undo in the *scratch* buffer so it doesn't get dumped.
                     22: (buffer-flush-undo (get-buffer "*scratch*"))
                     23: 
                     24: (load "subr")
                     25: (garbage-collect)
                     26: (load "loaddefs.el")  ;Don't get confused if someone compiled loaddefs by mistake.
                     27: (garbage-collect)
                     28: (load "simple")
                     29: (garbage-collect)
                     30: (load "help")
                     31: (garbage-collect)
                     32: (load "files")
                     33: (garbage-collect)
                     34: (load "indent")
                     35: (load "window")
                     36: (load "paths.el")  ;Don't get confused if someone compiled paths by mistake.
                     37: (garbage-collect)
                     38: (load "startup")
                     39: (load "lisp")
                     40: (garbage-collect)
                     41: (load "page")
                     42: (load "register")
                     43: (garbage-collect)
                     44: (load "paragraphs")
                     45: (load "lisp-mode")
                     46: (garbage-collect)
                     47: (load "text-mode")
                     48: (load "fill")
                     49: (garbage-collect)
                     50: (load "c-mode")
                     51: (garbage-collect)
                     52: (load "isearch")
                     53: (garbage-collect)
                     54: (load "replace")
                     55: (if (eq system-type 'vax-vms)
                     56:     (progn
                     57:       (garbage-collect)
                     58:       (load "vmsproc")))
                     59: (garbage-collect)
                     60: (load "abbrev")
                     61: (garbage-collect)
                     62: (load "buff-menu")
                     63: (if (eq system-type 'vax-vms)
                     64:     (progn
                     65:       (garbage-collect)
                     66:       (load "vms-patch")))
                     67: 
                     68: ;If you want additional libraries to be preloaded and their
                     69: ;doc strings kept in the DOC file rather than in core,
                     70: ;you may load them with a "site-load.el" file.
                     71: ;But you must also cause them to be scanned when the DOC file
                     72: ;is generated.  For VMS, you must edit ../etc/makedoc.com.
                     73: ;For other systems, you must edit ../src/ymakefile.
                     74: (if (load "site-load" t)
                     75:     (garbage-collect))
                     76: 
                     77: (load "version.el")  ;Don't get confused if someone compiled version.el by mistake.
                     78: 
                     79: ;; Note: all compiled Lisp files loaded above this point
                     80: ;; must be among the ones parsed by make-docfile
                     81: ;; to construct DOC.  Any that are not processed
                     82: ;; for DOC will not have doc strings in the dumped Emacs.
                     83: 
                     84: (message "Finding pointers to doc strings...")
                     85: (if (fboundp 'dump-emacs)
                     86:     (let ((name emacs-version))
                     87:       (while (string-match "[^-+_.a-zA-Z0-9]+" name)
                     88:        (setq name (concat (downcase (substring name 0 (match-beginning 0)))
                     89:                           "-"
                     90:                           (substring name (match-end 0)))))
                     91:       (copy-file (expand-file-name "../etc/DOC")
                     92:                 (concat (expand-file-name "../etc/DOC-") name)
                     93:                 t)
                     94:       (Snarf-documentation (concat "DOC-" name)))
                     95:     (Snarf-documentation "DOC"))
                     96: (message "Finding pointers to doc strings...done")
                     97: 
                     98: ;Note: You can cause additional libraries to be preloaded
                     99: ;by writing a site-init.el that loads them.
                    100: ;See also "site-load" above.
                    101: (load "site-init" t)
                    102: (garbage-collect)
                    103: 
                    104: ;;; Re-enable undo in the *scratch* buffer, so the dumped Emacs will
                    105: ;;; start up that way.
                    106: (buffer-enable-undo (get-buffer "*scratch*"))
                    107: 
                    108: (if (or (equal (nth 3 command-line-args) "dump")
                    109:        (equal (nth 4 command-line-args) "dump"))
                    110:     (if (eq system-type 'vax-vms)
                    111:        (progn 
                    112:          (message "Dumping data as file temacs.dump")
                    113:          (dump-emacs "temacs.dump" "temacs")
                    114:          (kill-emacs))
                    115:       (if (fboundp 'dump-emacs-data)
                    116:          ;; Handle the IBM RS/6000, and perhaps eventually other machines.
                    117:          (progn
                    118:            ;; This strange nesting is so that the variable `name'
                    119:            ;; is not bound when the data is dumped.
                    120:            (message "Dumping data as file ../etc/EMACS-DATA")
                    121:            (dump-emacs-data "../etc/EMACS-DATA")
                    122:            (kill-emacs))
                    123:        (let ((name (concat "emacs-" emacs-version)))
                    124:          (while (string-match "[^-+_.a-zA-Z0-9]+" name)
                    125:            (setq name (concat (downcase (substring name 0 (match-beginning 0)))
                    126:                               "-"
                    127:                               (substring name (match-end 0)))))
                    128:          (message "Dumping under names xemacs and %s" name))
                    129:        (condition-case ()
                    130:            (delete-file "xemacs")
                    131:          (file-error nil))
                    132:        (dump-emacs "xemacs" "temacs")
                    133:        ;; Recompute NAME now, so that it isn't set when we dump.
                    134:        (let ((name (concat "emacs-" emacs-version)))
                    135:          (while (string-match "[^-+_.a-zA-Z0-9]+" name)
                    136:            (setq name (concat (downcase (substring name 0 (match-beginning 0)))
                    137:                               "-"
                    138:                               (substring name (match-end 0)))))
                    139:          (add-name-to-file "xemacs" name t))
                    140:        (kill-emacs))))
                    141: 
                    142: ;; Avoid error if user loads some more libraries now.
                    143: (setq purify-flag nil)
                    144: 
                    145: ;; For machines with CANNOT_DUMP defined in config.h,
                    146: ;; this file must be loaded each time Emacs is run.
                    147: ;; So run the startup code now.
                    148: 
                    149: (or (fboundp 'dump-emacs)
                    150:     (eval top-level))

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.