basis/extra: cleanup some platform requires.
							parent
							
								
									dcbe85fe9c
								
							
						
					
					
						commit
						b7ed0a431c
					
				| 
						 | 
				
			
			@ -22,5 +22,4 @@ HOOK: cache-directory os ( -- path )
 | 
			
		|||
    { [ os windows? ] [ "io.files.temp.windows" ] }
 | 
			
		||||
    { [ os macosx? ] [ "io.files.temp.macosx" ] }
 | 
			
		||||
    { [ os unix? ] [ "io.files.temp.unix" ] }
 | 
			
		||||
    [ "unknown io.files.temp platform" throw ]
 | 
			
		||||
} cond require
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -15,9 +15,9 @@ HOOK: find-in-applications os ( directories filename -- path )
 | 
			
		|||
    [ [ find-in-path* ] keep over [ append-path ] [ 2drop f ] if ]
 | 
			
		||||
    if-empty ;
 | 
			
		||||
 | 
			
		||||
os {
 | 
			
		||||
    { [ dup macosx? ] [ drop "io.standard-paths.macosx" require ] }
 | 
			
		||||
    { [ dup unix? ] [ drop "io.standard-paths.unix" require ] }
 | 
			
		||||
    { [ dup windows? ] [ drop "io.standard-paths.windows" require ] }
 | 
			
		||||
} cond
 | 
			
		||||
{
 | 
			
		||||
    { [ os windows? ] [ "io.standard-paths.windows" ] }
 | 
			
		||||
    { [ os macosx? ] [ "io.standard-paths.macosx" ] }
 | 
			
		||||
    { [ os unix? ] [ "io.standard-paths.unix" ] }
 | 
			
		||||
} cond require
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,14 +1,14 @@
 | 
			
		|||
USING: kernel system combinators alien.syntax alien.c-types
 | 
			
		||||
math vocabs vocabs.loader unix classes.struct ;
 | 
			
		||||
USING: accessors alien.c-types alien.syntax classes.struct
 | 
			
		||||
kernel sequences system unix vocabs ;
 | 
			
		||||
IN: unix.stat
 | 
			
		||||
 | 
			
		||||
! File Types
 | 
			
		||||
 | 
			
		||||
CONSTANT: S_IFMT   0o170000   ! These bits determine file type.
 | 
			
		||||
 | 
			
		||||
CONSTANT: S_IFDIR  0o40000   ! Directory.
 | 
			
		||||
CONSTANT: S_IFCHR  0o20000   ! Character device.
 | 
			
		||||
CONSTANT: S_IFBLK  0o60000   ! Block device.
 | 
			
		||||
CONSTANT: S_IFDIR  0o040000   ! Directory.
 | 
			
		||||
CONSTANT: S_IFCHR  0o020000   ! Character device.
 | 
			
		||||
CONSTANT: S_IFBLK  0o060000   ! Block device.
 | 
			
		||||
CONSTANT: S_IFREG  0o100000   ! Regular file.
 | 
			
		||||
CONSTANT: S_IFIFO  0o010000   ! FIFO.
 | 
			
		||||
CONSTANT: S_IFLNK  0o120000   ! Symbolic link.
 | 
			
		||||
| 
						 | 
				
			
			@ -21,10 +21,7 @@ STRUCT: fsid
 | 
			
		|||
TYPEDEF: fsid __fsid_t
 | 
			
		||||
TYPEDEF: fsid fsid_t
 | 
			
		||||
 | 
			
		||||
<< os {
 | 
			
		||||
    { linux   [ "unix.stat.linux"   require ] }
 | 
			
		||||
    { macosx  [ "unix.stat.macosx"  require ] }
 | 
			
		||||
} case >>
 | 
			
		||||
<< "unix.stat." os name>> append require >>
 | 
			
		||||
 | 
			
		||||
: file-status ( pathname -- stat )
 | 
			
		||||
    \ stat <struct> [ [ stat-func ] unix-system-call drop ] keep ;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,9 +1,6 @@
 | 
			
		|||
! Copyright (C) 2008 Doug Coleman.
 | 
			
		||||
! See http://factorcode.org/license.txt for BSD license.
 | 
			
		||||
USING: combinators system vocabs ;
 | 
			
		||||
USING: accessors sequences system vocabs ;
 | 
			
		||||
IN: unix.statvfs
 | 
			
		||||
 | 
			
		||||
os {
 | 
			
		||||
    { linux   [ "unix.statvfs.linux"   require ] }
 | 
			
		||||
    { macosx  [ "unix.statvfs.macosx"  require ] }
 | 
			
		||||
} case
 | 
			
		||||
"unix.statvfs." os name>> append require
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,4 +1,5 @@
 | 
			
		|||
USING: kernel system alien.c-types alien.syntax combinators vocabs ;
 | 
			
		||||
USING: accessors alien.c-types alien.syntax system vocabs ;
 | 
			
		||||
FROM: sequences => append ;
 | 
			
		||||
IN: unix.types
 | 
			
		||||
 | 
			
		||||
TYPEDEF: char int8_t
 | 
			
		||||
| 
						 | 
				
			
			@ -44,7 +45,4 @@ C-TYPE: rlimit
 | 
			
		|||
C-TYPE: rusage
 | 
			
		||||
C-TYPE: sockaddr
 | 
			
		||||
 | 
			
		||||
os {
 | 
			
		||||
    { linux   [ "unix.types.linux"   require ] }
 | 
			
		||||
    { macosx  [ "unix.types.macosx"  require ] }
 | 
			
		||||
} case
 | 
			
		||||
"unix.types." os name>> append require
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -134,7 +134,4 @@ ERROR: no-such-user obj ;
 | 
			
		|||
: user-home ( name/uid -- path )
 | 
			
		||||
    dup user-passwd [ nip dir>> ] [ no-such-user ] if* ;
 | 
			
		||||
 | 
			
		||||
os {
 | 
			
		||||
    { [ dup macosx? ] [ drop "unix.users.macosx" require ] }
 | 
			
		||||
    { [ dup linux? ] [ drop ] }
 | 
			
		||||
} cond
 | 
			
		||||
os macosx? [ "unix.users.macosx" require ] when
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -8,8 +8,8 @@ IN: io.files.trash
 | 
			
		|||
HOOK: send-to-trash os ( path -- )
 | 
			
		||||
 | 
			
		||||
{
 | 
			
		||||
    { [ os windows? ] [ "io.files.trash.windows" ] }
 | 
			
		||||
    { [ os macosx? ] [ "io.files.trash.macosx" ] }
 | 
			
		||||
    { [ os unix? ] [ "io.files.trash.unix" ] }
 | 
			
		||||
    { [ os windows?  ] [ "io.files.trash.windows" ] }
 | 
			
		||||
} cond require
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -6,9 +6,8 @@ IN: time
 | 
			
		|||
HOOK: set-time os ( timestamp -- )
 | 
			
		||||
HOOK: adjust-time-monotonic os ( timestamp -- seconds )
 | 
			
		||||
 | 
			
		||||
os {
 | 
			
		||||
    { [ dup macosx? ] [ drop "time.macosx" require ] }
 | 
			
		||||
    { [ dup windows? ] [ drop "time.windows" require ] }
 | 
			
		||||
    { [ dup unix? ] [ drop "time.unix" require ] }
 | 
			
		||||
    [ drop ]
 | 
			
		||||
} cond
 | 
			
		||||
{
 | 
			
		||||
    { [ os windows? ] [ "time.windows" ] }
 | 
			
		||||
    { [ os macosx? ] [ "time.macosx" ] }
 | 
			
		||||
    { [ os unix? ] [ "time.unix" ] }
 | 
			
		||||
} cond require
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue