This commit adds the remainder of the outstanding PPC/Darwin port merge.
Besides support for Darwin foreign loading, and updates to the ppc-vm and bsd-os files, this commit removes unix:unix-errno as a foreign variable and replaces it with a function named unix-errno, and a (setf unix-errno). This makes both glibc support cleaner, and enables ports like PPC/Darwin (and the upcoming win32 port) which have no easy way of accessing errno as a foreign variable able to support this functionality at all. The current implementation of this is rather make-shift, it would likely be much cleaner to go the SBCL way and mediate all access to errno via defined functions in the C runtime. As an interim feature, the frobbing of the float-trap-modes is currently commented out for Darwin because of ongoing breakage.
Showing
- code/bsd-os.lisp 11 additions, 3 deletionscode/bsd-os.lisp
- code/float-trap.lisp 3 additions, 1 deletioncode/float-trap.lisp
- code/foreign.lisp 56 additions, 4 deletionscode/foreign.lisp
- code/internet.lisp 5 additions, 5 deletionscode/internet.lisp
- code/ppc-vm.lisp 66 additions, 2 deletionscode/ppc-vm.lisp
- code/signal.lisp 3 additions, 3 deletionscode/signal.lisp
- code/unix-glibc2.lisp 9 additions, 12 deletionscode/unix-glibc2.lisp
- code/unix.lisp 48 additions, 7 deletionscode/unix.lisp
Please register or sign in to comment