syscall: Don't build wait status functions on RTEMS.
authorIan Lance Taylor <ian@gcc.gnu.org>
Tue, 13 Dec 2011 22:07:25 +0000 (22:07 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Tue, 13 Dec 2011 22:07:25 +0000 (22:07 +0000)
From-SVN: r182313

libgo/Makefile.am
libgo/Makefile.in
libgo/go/syscall/exec_stubs.go

index 3db823e8e1a6af3e15dec70ee8899ae6e6fbf026..67ae8710903244e94176f75b0221bbd6cc16e5f2 100644 (file)
@@ -1450,11 +1450,22 @@ syscall_exec_file = go/syscall/exec_unix.go
 endif
 
 # Define Wait4.
+if LIBGO_IS_RTEMS
+syscall_wait_file =
+else
 if HAVE_WAIT4
 syscall_wait_file = go/syscall/libcall_wait4.go
 else
 syscall_wait_file = go/syscall/libcall_waitpid.go
 endif
+endif
+
+# Support for pulling apart wait status.
+if LIBGO_IS_RTEMS
+syscall_wait_c_file =
+else
+syscall_wait_c_file = go/syscall/wait.c
+endif
 
 # Define Sleep.
 if LIBGO_IS_RTEMS
@@ -1564,7 +1575,7 @@ go_syscall_files = \
        syscall_arch.go
 go_syscall_c_files = \
        go/syscall/errno.c \
-       go/syscall/wait.c
+       $(syscall_wait_c_file)
 
 libcalls.go: s-libcalls; @true
 s-libcalls: Makefile go/syscall/mksyscall.awk $(go_base_syscall_files)
index 6552074a3da22dd051cb0a5377b2622c413dc604..2e1ea76eb2cd0bfd71c6edd19530c1a9c1640590 100644 (file)
@@ -1837,10 +1837,15 @@ go_unicode_utf8_files = \
 
 # Define ForkExec and Exec.
 @LIBGO_IS_RTEMS_TRUE@syscall_exec_file = go/syscall/exec_stubs.go
-@HAVE_WAIT4_FALSE@syscall_wait_file = go/syscall/libcall_waitpid.go
+@HAVE_WAIT4_FALSE@@LIBGO_IS_RTEMS_FALSE@syscall_wait_file = go/syscall/libcall_waitpid.go
+@HAVE_WAIT4_TRUE@@LIBGO_IS_RTEMS_FALSE@syscall_wait_file = go/syscall/libcall_wait4.go
 
 # Define Wait4.
-@HAVE_WAIT4_TRUE@syscall_wait_file = go/syscall/libcall_wait4.go
+@LIBGO_IS_RTEMS_TRUE@syscall_wait_file = 
+@LIBGO_IS_RTEMS_FALSE@syscall_wait_c_file = go/syscall/wait.c
+
+# Support for pulling apart wait status.
+@LIBGO_IS_RTEMS_TRUE@syscall_wait_c_file = 
 @LIBGO_IS_RTEMS_FALSE@syscall_sleep_file = go/syscall/sleep_select.go
 
 # Define Sleep.
@@ -1908,7 +1913,7 @@ go_syscall_files = \
 
 go_syscall_c_files = \
        go/syscall/errno.c \
-       go/syscall/wait.c
+       $(syscall_wait_c_file)
 
 @LIBGO_IS_LINUX_FALSE@os_lib_inotify_lo = 
 
index 74b0af597e8d1c4edc78be923219becc7f317d03..35bb17487b74c6f47f3cf097352c2f7af000c871 100644 (file)
@@ -7,17 +7,27 @@
 package syscall
 
 func ForkExec(argv0 string, argv []string, envv []string, dir string, fd []int) (pid int, err int) {
-       return -1, ENOSYS;
+       return -1, ENOSYS
 }
 
 func Exec(argv0 string, argv []string, envv []string) (err int) {
-       return ENOSYS;
+       return ENOSYS
 }
 
 func Wait4(pid int, wstatus *WaitStatus, options int, rusage *Rusage) (wpid int, err error) {
-       return -1, ENOSYS;
+       return -1, ENOSYS
 }
 
+func (w WaitStatus) Exited() bool    { return false }
+func (w WaitStatus) Signaled() bool  { return false }
+func (w WaitStatus) Stopped() bool   { return false }
+func (w WaitStatus) Continued() bool { return false }
+func (w WaitStatus) CoreDump() bool  { return false }
+func (w WaitStatus) ExitStatus() int { return 0 }
+func (w WaitStatus) Signal() int     { return 0 }
+func (w WaitStatus) StopSignal() int { return 0 }
+func (w WaitStatus) TrapCause() int  { return 0 }
+
 func raw_ptrace(request int, pid int, addr *byte, data *byte) Errno {
        return ENOSYS
 }