X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Flinux-os.lisp;h=14f758d034a5cd6f02bb580b599fc0bc1273832c;hb=48ec282d877900caf5ea4ab42e9d87e566ce6b43;hp=7ae0012c5d5c30f8f18523d0e1d690d3bc9a2571;hpb=fdf07da187cb31fd5bdd872c73245fd72877b1a1;p=sbcl.git diff --git a/src/code/linux-os.lisp b/src/code/linux-os.lisp index 7ae0012..14f758d 100644 --- a/src/code/linux-os.lisp +++ b/src/code/linux-os.lisp @@ -22,23 +22,33 @@ (defvar *software-version* nil) +;;; FIXME: More duplicated logic here vrt. other oses. Abstract into +;;; uname-software-version? (defun software-version () #!+sb-doc "Return a string describing version of the supporting software, or NIL if not available." (or *software-version* (setf *software-version* - (string-trim '(#\newline) - (with-output-to-string (stream) - (sb!ext:run-program "/bin/uname" `("-r") - :output stream)))))) + (string-trim '(#\newline) + (with-output-to-string (stream) + (sb!ext:run-program "/bin/uname" `("-r") + :output stream)))))) +;;; FIXME: This logic is duplicated in other backends: +;;; abstract, abstract. OS-COMMON-COLD-INIT-OR-REINIT, mayhaps? (defun os-cold-init-or-reinit () ; KLUDGE: don't know what to do here - #!+sparc ;; Can't use #x20000000 thru #xDFFFFFFF, but mach tries to let us. - (sb!sys:allocate-system-memory-at (sb!sys:int-sap #x20000000) #xc0000000) + (/show0 "entering linux-os.lisp OS-COLD-INIT-OR-REINIT") (setf *software-version* nil) + (/show0 "setting *DEFAULT-PATHNAME-DEFAULTS*") (setf *default-pathname-defaults* - (pathname (sb!unix:posix-getcwd/)))) + ;; (temporary value, so that #'NATIVE-PATHNAME won't blow up + ;; when we call it below:) + (make-trivial-default-pathname) + *default-pathname-defaults* + ;; (final value, constructed using #'NATIVE-PATHNAME:) + (native-pathname (sb!unix:posix-getcwd/))) + (/show0 "leaving linux-os.lisp OS-COLD-INIT-OR-REINIT")) ;;; Return system time, user time and number of page faults. (defun get-system-info ()