For what it's worth, here it the patch I applied to
bindings/linuxlibc6/linux.lisp to get it to compile w/ my glibc
version 2.2.5.
I could not figure out why gcc was complaining about div() or ldiv()
so I had to just comment them out; obviously that won't be good for
the general release :) I suspect it's related to the fact that these
routines are the only ones that return structures.
anyway, here is what I changed ....
cvs server: Diffing .
Index: linux.lisp
===================================================================
RCS file: /cvsroot/clisp/clisp/modules/bindings/linuxlibc6/linux.lisp,v
retrieving revision 1.17
diff -r1.17 linux.lisp
626c626
< (def-call-out __ctype_get_mb_cur_max (:arguments) (:return-type int))
---
> (def-call-out __ctype_get_mb_cur_max (:arguments) (:return-type size_t))
663,666c663,666
< (:arguments (seed uint) (statebuf c-pointer) (statelen size_t))
< (:return-type c-pointer))
< (def-call-out setstate (:arguments (statebuf c-pointer))
< (:return-type c-pointer))
---
> (:arguments (seed uint) (statebuf c-string) (statelen size_t))
> (:return-type c-string))
> (def-call-out setstate (:arguments (statebuf c-string))
> (:return-type c-string))
698c698
< (:return-type (c-ptr (c-array ushort 3)) :none))
---
> (:return-type (c-ptr ushort) :none))
761c761
< (def-call-out unsetenv (:arguments (name c-string)) (:return-type nil))
---
> (def-call-out unsetenv (:arguments (name c-string)) (:return-type int))
784c784
< (:return-type (c-ptr (c-array-max character #.PATH_MAX))))
---
> (:return-type c-string))
804,806c804,806
< (def-call-out div (:arguments (numer int) (denom int)) (:return-type div_t))
< (def-call-out ldiv (:arguments (numer long) (denom long))
< (:return-type ldiv_t))
---
> ; (def-call-out div (:arguments (numer int) (denom int)) (:return-type div_t))
> ; (def-call-out ldiv (:arguments (numer long) (denom long))
> ; (:return-type ldiv_t))
/* -------------------- Cut here ---------- */
|