+2005-03-22 Jeff Johnston <jjohnstn@redhat.com>
+
+ * configure.host: For arc, set -DREENTRANT_SYSCALLS_PROVIDED flag on.
+ * libc/sys/arc/syscalls.c: Change functions to use __errno_r rather
+ than errno.
+
2005-03-22 Christopher Faylor <cgf@timesys.com>
* libc/include/machine/_types.h: Make trivial change to comment to
newlib_cflags="${newlib_cflags} -DARM_RDI_MONITOR"
fi
;;
+ arc*)
+ newlib_cflags="${newlib_cflags} -DREENTRANT_SYSCALLS_PROVIDED"
+ ;;
avr*)
newlib_cflags="${newlib_cflags} -DNO_EXEC -DSMALL_MEMORY -DMISSING_SYSCALL_NAMES"
;;
SYSCALL (SYS_read, rc, err, fd, buf, nbytes);
if (err)
- errno = err;
+ __errno_r (r) = err;
return rc;
}
SYSCALL (SYS_write, rc, err, fd, buf, nbytes);
if (err)
- errno = err;
+ __errno_r (r) = err;
return rc;
}
#endif
SYSCALL (SYS_open, rc, err, buf, flags, mode);
- errno = err;
+ if (err)
+ __errno_r (r) = err;
return rc;
}
SYSCALL (SYS_close, rc, err, fd, 0, 0);
if (err)
- errno = err;
+ __errno_r (r) = err;
return rc;
}
SYSCALL (SYS_lseek, rc, err, fd, offset, whence);
if (err)
- errno = err;
+ __errno_r (r) = err;
return rc;
}
SYSCALL (SYS_fstat, rc, err, fd, buf, 0);
if (err)
- errno = err;
+ __errno_r (r) = err;
return rc;
}
SYSCALL (SYS_kill, rc, err, pid, sig, 0);
if (err)
- errno = err;
+ __errno_r (r) = err;
return rc;
}