[Wisp-cvs] wisp/src/builtin dictbase.wisp,1.233,1.234 stdenv.wisp,1.353,1.354 sys.wisp,1.104,1.105
Status: Alpha
Brought to you by:
digg
|
From: <di...@us...> - 2002-09-04 14:26:59
|
Update of /cvsroot/wisp/wisp/src/builtin
In directory usw-pr-cvs1:/tmp/cvs-serv28473/src/builtin
Modified Files:
dictbase.wisp stdenv.wisp sys.wisp
Log Message:
Converted sys.nasm to sys.wth and death.c to death.wth .
Index: dictbase.wisp
===================================================================
RCS file: /cvsroot/wisp/wisp/src/builtin/dictbase.wisp,v
retrieving revision 1.233
retrieving revision 1.234
diff -u -d -r1.233 -r1.234
--- dictbase.wisp 26 Aug 2002 16:18:23 -0000 1.233
+++ dictbase.wisp 4 Sep 2002 14:26:56 -0000 1.234
@@ -155,14 +155,6 @@
(local sys:getppid (asm NN_sys_getppid))
(local sys:getuid (asm NN_sys_getuid))
(local sys:lstat (asm NN_sys_lstat))
-(local sys:ns:close (asm NN_sys_ns_close))
-(local sys:ns:dup (asm NN_sys_ns_dup))
-(local sys:ns:dup2 (asm NN_sys_ns_dup2))
-(local sys:ns:fork (asm NN_sys_ns_fork))
-(local sys:ns:getpgid (asm NN_sys_ns_getpgid))
-(local sys:ns:kill (asm NN_sys_ns_kill))
-(local sys:ns:listen (asm NN_sys_ns_listen))
-(local sys:ns:setsid (asm NN_sys_ns_setsid))
(local sys:select (asm NN_sys_select))
(local sys:stat (asm NN_sys_stat))
(local truncate (asm NN_truncate))
Index: stdenv.wisp
===================================================================
RCS file: /cvsroot/wisp/wisp/src/builtin/stdenv.wisp,v
retrieving revision 1.353
retrieving revision 1.354
diff -u -d -r1.353 -r1.354
--- stdenv.wisp 26 Aug 2002 16:20:08 -0000 1.353
+++ stdenv.wisp 4 Sep 2002 14:26:56 -0000 1.354
@@ -19,12 +19,10 @@
sys:getcwd sys:getegid sys:geteuid sys:getgid sys:getpgid
sys:getpgrp sys:getpid sys:getppid sys:getuid sys:kill
sys:link sys:listen sys:lseek sys:lstat sys:mkdir
- sys:nanosleep sys:ns:close sys:ns:dup sys:ns:dup2 sys:ns:fork
- sys:ns:getpgid sys:ns:kill sys:ns:listen sys:ns:setsid
- sys:open sys:pipe sys:read sys:rename sys:select sys:setpgid
- sys:setpgrp sys:setsid sys:stat sys:symlink sys:tcgetattr
- sys:tcsetattr sys:truncate sys:unlink sys:waitpid
- sys:write)))))
+ sys:nanosleep sys:open sys:pipe sys:read sys:rename
+ sys:select sys:setpgid sys:setpgrp sys:setsid sys:stat
+ sys:symlink sys:tcgetattr sys:tcsetattr sys:truncate
+ sys:unlink sys:waitpid sys:write)))))
(define (provide-syscalls target)
(for-each (lambda (p)
Index: sys.wisp
===================================================================
RCS file: /cvsroot/wisp/wisp/src/builtin/sys.wisp,v
retrieving revision 1.104
retrieving revision 1.105
diff -u -d -r1.104 -r1.105
--- sys.wisp 26 Aug 2002 16:18:24 -0000 1.104
+++ sys.wisp 4 Sep 2002 14:26:56 -0000 1.105
@@ -16,59 +16,26 @@
(eq? sig 'EAGAIN)))
(raise sig datum))))
-(define (sys:setsid)
- (my pid (sys:ns:setsid)
- (if (negative? pid)
- (signal-system-error pid `(sys:setsid))
- pid)))
-
-(define (sys:fork)
- (my pid (sys:ns:fork)
- (if (negative? pid)
- (signal-system-error pid `(sys:fork))
- pid)))
-
-(define (sys:close fd)
- (my res (sys:ns:close fd)
- (if (negative? res)
- (signal-system-error res `(sys:close ,fd))
- (begin))))
-
-(define (sys:dup fd)
- (my res (sys:ns:dup fd)
- (if (negative? res)
- (signal-system-error res `(sys:dup ,fd))
- res)))
-
-(define (sys:dup2 oldfd newfd)
- (my res (sys:ns:dup2 oldfd newfd)
- (if (negative? res)
- (signal-system-error res `(sys:dup2 ,oldfd ,newfd))
- res)))
-
-(define (sys:listen s backlog)
- (my res (sys:ns:listen s backlog)
- (if (negative? res)
- (signal-system-error res `(sys:listen ,s ,backlog))
- (begin))))
-
-(define (sys:kill pid sig)
- (my res (sys:ns:kill pid sig)
- (if (negative? res)
- (signal-system-error res `(sys:kill ,pid ,sig))
- (begin))))
-
-(define (sys:getpgid pid)
- (my res (sys:ns:getpgid pid)
- (if (negative? res)
- (signal-system-error res `(sys:getpgid ,pid))
- res)))
-
-(local (sys:setpgid pid pgid)
- (my res (encsi ((asm NN_sys_raw_setpgid) (decsi pid) (decsi pgid)))
- (if (negative? res)
- (signal-system-error res `(sys:setpgid ,pid ,pgid))
- (begin))))
+(metacode
+ (cons 'begin
+ (map (lambda (item)
+ (my (nroot . fargs) item
+ `(define (,(string->symbol "sys:$[nroot]") ,@fargs)
+ (my result ((asm ,(string->symbol "NN_sys_ns_$[nroot]")) ,@fargs)
+ (if (negative? result)
+ (signal-system-error
+ result (list ',(string->symbol "sys:$[nroot]")
+ ,@fargs))
+ result)))))
+ '((close fd)
+ (dup fd)
+ (dup2 oldfd newfd)
+ (fork)
+ (getpgid pid)
+ (kill pid sig)
+ (listen s backlog)
+ (setpgid pid pgid)
+ (setsid)))))
(local (sys:getpgrp)
(sys:getpgid 0))
|