Add various *BSD O_ constants.
[perl.git] / ext / Fcntl / Makefile.PL
1 use ExtUtils::MakeMaker;
2 use ExtUtils::Constant 0.23 'WriteConstants';
3 WriteMakefile(
4     NAME        => 'Fcntl',
5     XSPROTOARG => '-noprototypes',              # XXX remove later?
6     VERSION_FROM => 'Fcntl.pm',
7     realclean => {FILES=> 'const-c.inc const-xs.inc'},
8 );
9
10 my @names = (qw(
11                DN_ACCESS DN_MODIFY DN_CREATE DN_DELETE DN_RENAME
12                DN_ATTRIB DN_MULTISHOT FAPPEND FASYNC FCREAT FDEFER
13                FDSYNC FD_CLOEXEC FEXCL FLARGEFILE FNDELAY FNONBLOCK
14                FRSYNC FSYNC FTRUNC F_ALLOCSP F_ALLOCSP64 F_COMPAT
15                F_DUP2FD F_DUPFD F_EXLCK F_FREESP F_FREESP64 F_FSYNC
16                F_FSYNC64 F_GETFD F_GETFL F_GETLEASE F_GETLK F_GETLK64
17                F_GETOWN F_GETSIG F_NODNY F_NOTIFY F_POSIX F_RDACC
18                F_RDDNY F_RDLCK F_RWACC F_RWDNY F_SETFD F_SETFL
19                F_SETLEASE F_SETLK F_SETLK64 F_SETLKW F_SETLKW64
20                F_SETOWN F_SETSIG F_SHARE F_SHLCK F_UNLCK F_UNSHARE
21                F_WRACC F_WRDNY F_WRLCK LOCK_MAND LOCK_READ LOCK_WRITE
22                LOCK_RW O_ACCMODE O_ALIAS O_ALT_IO O_APPEND O_ASYNC O_BINARY
23                O_CREAT O_DEFER O_DIRECT O_DIRECTORY O_DSYNC O_EVTONLY O_EXCL
24                O_EXLOCK O_IGNORE_CTTY O_LARGEFILE O_NDELAY O_NOATIME
25                O_NOCTTY O_NOFOLLOW O_NOINHERIT O_NOLINK O_NONBLOCK O_NOSIGPIPE
26                O_NOTRANS O_RANDOM O_RAW O_RDONLY O_RDWR O_RSRC O_RSYNC
27                O_SEQUENTIAL O_SHLOCK O_SYMLINK O_SYNC O_TEMPORARY O_TEXT
28                O_TRUNC O_TTY_INIT O_WRONLY S_ENFMT S_IEXEC S_IFBLK S_IFCHR
29                S_IFDIR S_IFIFO S_IFLNK S_IFREG S_IFSOCK S_IFWHT S_IREAD
30                S_IRGRP S_IROTH S_IRUSR S_IRWXG S_IRWXO S_IRWXU S_ISGID
31                S_ISTXT S_ISUID S_ISVTX S_IWGRP S_IWOTH S_IWRITE
32                S_IWUSR S_IXGRP S_IXOTH S_IXUSR),
33             {name=>"LOCK_SH", default=>["IV", "1"]},
34             {name=>"LOCK_EX", default=>["IV", "2"]},
35             {name=>"LOCK_NB", default=>["IV", "4"]},
36             {name=>"LOCK_UN", default=>["IV", "8"]},
37             {name=>"SEEK_SET", default=>["IV", "0"]},
38             {name=>"SEEK_CUR", default=>["IV", "1"]},
39             {name=>"SEEK_END", default=>["IV", "2"]},
40             {name=>"_S_IFMT", macro=>"S_IFMT", value=>"S_IFMT"});
41 WriteConstants(
42     PROXYSUBS => {autoload => 1},
43     NAME => 'Fcntl',
44     NAMES => \@names,
45 );