[Openmcl-cvs-notifications] r10050 - /trunk/source/level-0/l0-io.lisp
gb at clozure.com
gb at clozure.com
Wed Jul 16 10:22:49 EDT 2008
Author: gb
Date: Wed Jul 16 10:22:49 2008
New Revision: 10050
Log:
Conditionalize for Solaris.
Modified:
trunk/source/level-0/l0-io.lisp
Modified: trunk/source/level-0/l0-io.lisp
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/source/level-0/l0-io.lisp (original)
+++ trunk/source/level-0/l0-io.lisp Wed Jul 16 10:22:49 2008
@@ -27,6 +27,8 @@
(require "DARWINX8664-SYSCALLS")
#+freebsd-target
(require "X8664-FREEBSD-SYSCALLS")
+ #+solarisx8664-target
+ (require "X8664-SOLARIS-SYSCALLS")
)
=
=
@@ -224,7 +226,15 @@
(fd-lseek fd curpos #$SEEK_SET)))))
=
(defun fd-ftruncate (fd new)
- (syscall syscalls::ftruncate fd new))
+ #-solaris-target
+ (syscall syscalls::ftruncate fd new)
+ #+solaris-target
+ (rlet ((lck #>flock))
+ (setf (pref lck :flock.l_whence) 0
+ (pref lck :flock.l_start) new
+ (pref lck :flock.l_type) #$F_WRLCK
+ (pref lck :flock.l_len) 0)
+ (syscall syscalls::fcntl fd #$F_FREESP lck)))
=
(defun %string-to-stderr (str)
(with-cstrs ((s str))
More information about the Openmcl-cvs-notifications
mailing list