From: Alastair B. <lis...@us...> - 2009-12-24 00:08:23
|
Update of /cvsroot/sbcl/sbcl/contrib/sb-posix In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv27238/contrib/sb-posix Modified Files: interface.lisp Log Message: 1.0.33.30: Fix sb-posix build on win32. * This was entirely symbol-export issues between win32 and non-win32. Index: interface.lisp =================================================================== RCS file: /cvsroot/sbcl/sbcl/contrib/sb-posix/interface.lisp,v retrieving revision 1.57 retrieving revision 1.58 diff -u -d -r1.57 -r1.58 --- interface.lisp 17 Dec 2009 23:25:04 -0000 1.57 +++ interface.lisp 24 Dec 2009 00:08:12 -0000 1.58 @@ -728,7 +728,10 @@ ;;; environment -(export 'getenv :sb-posix) +(eval-when (:compile-toplevel :load-toplevel) + ;; Do this at compile-time as Win32 code below refers to it as + ;; sb-posix:getenv. + (export 'getenv :sb-posix)) (defun getenv (name) (let ((r (alien-funcall (extern-alien "getenv" (function (* char) c-string)) @@ -760,11 +763,13 @@ (progn ;; Windows doesn't define a POSIX setenv, but happily their _putenv is sane. (define-call* "putenv" int minusp (string c-string)) + (export 'setenv :sb-posix) (defun setenv (name value overwrite) (declare (string name value)) (if (and (zerop overwrite) (sb-posix:getenv name)) 0 (putenv (concatenate 'string name "=" value)))) + (export 'unsetenv :sb-posix) (defun unsetenv (name) (declare (string name)) (putenv (concatenate 'string name "=")))) |