X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fruntime%2Fwrap.c;h=93c6bcfdb9baef66c52b8e671ae4718b2c750883;hb=3357d40adfad43ce33a84cdf888977299241f8c8;hp=f0e5746363a14dd17d473b393acea2fd1280477f;hpb=46e428110e302636b345928f6f052b8a282c64fa;p=sbcl.git diff --git a/src/runtime/wrap.c b/src/runtime/wrap.c index f0e5746..93c6bcf 100644 --- a/src/runtime/wrap.c +++ b/src/runtime/wrap.c @@ -173,11 +173,20 @@ typedef off_t ffi_off_t; #elif defined(LISP_FEATURE_MIPS) typedef unsigned long ffi_dev_t; /* Linux/MIPS struct stat doesn't use dev_t */ typedef off_t ffi_off_t; +#elif defined(LISP_FEATURE_DARWIN) +typedef dev_t ffi_dev_t; +typedef off_t ffi_off_t; #else typedef u32 ffi_dev_t; /* since Linux dev_t can be 64 bits */ typedef u32 ffi_off_t; /* since OpenBSD 2.8 st_size is 64 bits */ #endif +#if defined(LISP_FEATURE_DARWIN) +typedef blksize_t ffi_blksize_t; +#else +typedef unsigned long ffi_blksize_t; +#endif + /* a representation of stat(2) results which doesn't depend on CPU or OS */ struct stat_wrapper { /* KLUDGE: The verbose wrapped_st_ prefixes are to protect us from @@ -204,7 +213,7 @@ struct stat_wrapper { #endif ffi_dev_t wrapped_st_rdev; /* device type (if inode device) */ ffi_off_t wrapped_st_size; /* total size, in bytes */ - unsigned long wrapped_st_blksize; /* blocksize for filesystem I/O */ + ffi_blksize_t wrapped_st_blksize; /* blocksize for filesystem I/O */ unsigned long wrapped_st_blocks; /* number of blocks allocated */ time_t wrapped_st_atime; /* time_t of last access */ time_t wrapped_st_mtime; /* time_t of last modification */