(/show0 "entering TOPLEVEL-INIT")
(let (;; value of --sysinit option
(sysinit nil)
+ ;; t if --no-sysinit option given
+ (no-sysinit nil)
;; value of --userinit option
(userinit nil)
+ ;; t if --no-userinit option given
+ (no-userinit nil)
;; values of --eval options, in reverse order; and also any
;; other options (like --load) which're translated into --eval
;;
(if sysinit
(startup-error "multiple --sysinit options")
(setf sysinit (pop-option))))
+ ((string= option "--no-sysinit")
+ (pop-option)
+ (setf no-sysinit t))
((string= option "--userinit")
(pop-option)
(if userinit
(startup-error "multiple --userinit options")
(setf userinit (pop-option))))
+ ((string= option "--no-userinit")
+ (pop-option)
+ (setf no-userinit t))
((string= option "--eval")
(pop-option)
(push (pop-option) reversed-evals))
;; figure out what's going on.)
(restart-case
(progn
- (process-init-file sysinit-truename)
- (process-init-file userinit-truename)
+ (unless no-sysinit (process-init-file sysinit-truename))
+ (unless no-userinit (process-init-file userinit-truename))
(process-eval-options (reverse reversed-evals)))
(abort ()
:report "Skip to toplevel READ/EVAL/PRINT loop."