diff options
Diffstat (limited to 'mcon/U/d_access.U')
-rw-r--r-- | mcon/U/d_access.U | 35 |
1 files changed, 27 insertions, 8 deletions
diff --git a/mcon/U/d_access.U b/mcon/U/d_access.U index 991982f..56de296 100644 --- a/mcon/U/d_access.U +++ b/mcon/U/d_access.U @@ -1,18 +1,19 @@ -?RCS: $Id: d_access.U 1 2006-08-24 12:32:52Z rmanfredi $ +?RCS: $Id: d_access.U 167 2013-05-08 17:58:00Z rmanfredi $ ?RCS: ?RCS: Copyright (c) 1991-1997, 2004-2006, Raphael Manfredi ?RCS: -?RCS: You may redistribute only under the terms of the Artistic Licence, +?RCS: You may redistribute only under the terms of the Artistic License, ?RCS: as specified in the README file that comes with the distribution. ?RCS: You may reuse parts of this distribution only within the terms of -?RCS: that same Artistic Licence; a copy of which may be found at the root +?RCS: that same Artistic License; a copy of which may be found at the root ?RCS: of the source tree for dist 4.0. ?RCS: ?RCS: $Log: d_access.U,v $ ?RCS: Revision 3.0 1993/08/18 12:05:42 ram ?RCS: Baseline for dist 3.0 netwide release. ?RCS: -?MAKE:d_access: test +cc cat +cppflags h_fcntl h_sysfile rm Inlibc Findhdr +?MAKE:d_access: test +cc cat +cppflags h_fcntl h_sysfile rm Trylink Findhdr \ + i_unistd ?MAKE: -pick add $@ %< ?S:d_access: ?S: This variable conditionally defines HAS_ACCESS if the access() system @@ -29,8 +30,21 @@ ?LINT:set d_access ?LINT:change h_fcntl h_sysfile : access call always available on UNIX -set access d_access -eval $inlibc +$cat >try.c <<EOC +#$i_unistd I_UNISTD +#ifdef I_UNISTD +#include <unistd.h> +#endif +int main(void) +{ + static int ret; + ret |= access("path", 1); + return ret ? 0 : 1; +} +EOC +cyn=access +set d_access +eval $trylink : locate the flags for 'access()' case "$d_access" in @@ -47,8 +61,13 @@ case "$d_access" in #ifdef I_UNISTD #include <unistd.h> #endif -int main() { - exit(R_OK); +int main(void) { + static int mode; + mode |= R_OK; + mode |= W_OK; + mode |= X_OK; + mode |= F_OK; + return mode ? 0 : 1; } EOCP : check sys/file.h first, no particular reason here |