Implemented unix.stat for freebsd
parent
0e4ee18110
commit
27c4515be6
|
@ -0,0 +1,30 @@
|
||||||
|
USING: kernel alien.syntax math ;
|
||||||
|
|
||||||
|
IN: unix.stat
|
||||||
|
|
||||||
|
! FreeBSD 8.0-CURRENT
|
||||||
|
|
||||||
|
C-STRUCT: stat
|
||||||
|
{ "__dev_t" "st_dev" }
|
||||||
|
{ "ino_t" "st_ino" }
|
||||||
|
{ "mode_t" "st_mode" }
|
||||||
|
{ "nlink_t" "st_nlink" }
|
||||||
|
{ "uid_t" "st_uid" }
|
||||||
|
{ "gid_t" "st_gid" }
|
||||||
|
{ "__dev_t" "st_rdev" }
|
||||||
|
{ "timespec" "st_atim" }
|
||||||
|
{ "timespec" "st_mtim" }
|
||||||
|
{ "timespec" "st_ctim" }
|
||||||
|
{ "off_t" "st_size" }
|
||||||
|
{ "blkcnt_t" "st_blocks" }
|
||||||
|
{ "blksize_t" "st_blksize" }
|
||||||
|
{ "fflags_t" "st_flags" }
|
||||||
|
{ "__uint32_t" "st_gen" }
|
||||||
|
{ "__int32_t" "st_lspare" }
|
||||||
|
{ "timespec" "st_birthtimespec" }
|
||||||
|
! not sure about the padding here.
|
||||||
|
{ "__uint32_t" "pad0" }
|
||||||
|
{ "__uint32_t" "pad1" } ;
|
||||||
|
|
||||||
|
FUNCTION: int stat ( char* pathname, stat* buf ) ;
|
||||||
|
FUNCTION: int lstat ( char* pathname, stat* buf ) ;
|
|
@ -62,6 +62,7 @@ FUNCTION: int mkdir ( char* path, mode_t mode ) ;
|
||||||
{
|
{
|
||||||
{ "linux" [ "unix.stat.linux" require ] }
|
{ "linux" [ "unix.stat.linux" require ] }
|
||||||
{ "macosx" [ "unix.stat.macosx" require ] }
|
{ "macosx" [ "unix.stat.macosx" require ] }
|
||||||
|
{ "freebsd" [ "unix.stat.freebsd" require ] }
|
||||||
[ drop ]
|
[ drop ]
|
||||||
}
|
}
|
||||||
case
|
case
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
USING: alien.syntax ;
|
||||||
|
|
||||||
|
IN: unix.types
|
||||||
|
|
||||||
|
TYPEDEF: ushort __uint16_t
|
||||||
|
TYPEDEF: uint __uint32_t
|
||||||
|
TYPEDEF: int __int32_t
|
||||||
|
TYPEDEF: longlong __int64_t
|
||||||
|
|
||||||
|
TYPEDEF: __uint32_t __dev_t
|
||||||
|
TYPEDEF: __uint32_t ino_t
|
||||||
|
TYPEDEF: __uint16_t mode_t
|
||||||
|
TYPEDEF: __uint16_t nlink_t
|
||||||
|
TYPEDEF: __uint32_t uid_t
|
||||||
|
TYPEDEF: __uint32_t gid_t
|
||||||
|
TYPEDEF: __int64_t off_t
|
||||||
|
TYPEDEF: __int64_t blkcnt_t
|
||||||
|
TYPEDEF: __uint32_t blksize_t
|
||||||
|
TYPEDEF: __uint32_t fflags_t
|
|
@ -9,6 +9,7 @@ os
|
||||||
{
|
{
|
||||||
{ "linux" [ "unix.types.linux" require ] }
|
{ "linux" [ "unix.types.linux" require ] }
|
||||||
{ "macosx" [ "unix.types.macosx" require ] }
|
{ "macosx" [ "unix.types.macosx" require ] }
|
||||||
|
{ "freebsd" [ "unix.types.freebsd" require ] }
|
||||||
[ drop ]
|
[ drop ]
|
||||||
}
|
}
|
||||||
case
|
case
|
Loading…
Reference in New Issue