quicklisp-to-nix: preload some implementation-provided dependencies

This commit is contained in:
Michael Raskin 2020-10-24 11:42:33 +02:00
parent 82a6ddb0c1
commit f9b03920fc

View File

@ -7,11 +7,19 @@
(:export #:dump-image))
(in-package :ql-to-nix-system-info)
(eval-when (:compile-toplevel :load-toplevel :execute)
(defparameter *implementation-systems*
(append
#+sbcl(list :sb-posix :sb-bsd-sockets)))
(mapcar (function require) *implementation-systems*))
(declaim (optimize (debug 3) (speed 0) (space 0) (compilation-speed 0) (safety 3)))
;; This file cannot have any dependencies beyond quicklisp and asdf.
;; Otherwise, we'll miss some dependencies!
;; (Implementation-provided dependencies are special, though)
;; We can't load quicklisp until runtime (at which point we'll create
;; an isolated quicklisp installation). These wrapper functions are
;; nicer than funcalling intern'd symbols every time we want to talk
@ -441,6 +449,8 @@ Run with --debug and/or --verbose for more info.
(when cache-dir
(setf cache-dir (pathname-as-directory (parse-namestring cache-dir))))
(mapcar (function require) *implementation-systems*)
(with-quicklisp (dir) (:cache-dir (or cache-dir :temp))
(declare (ignore dir))