diff options
author | rmanfredi <rmanfredi@2592e710-e01b-42a5-8df0-11608a6cc53d> | 2015-04-17 11:21:22 +0000 |
---|---|---|
committer | rmanfredi <rmanfredi@2592e710-e01b-42a5-8df0-11608a6cc53d> | 2015-04-17 11:21:22 +0000 |
commit | efd117dccf64f6a9b39fe014d7a67357f402fe26 (patch) | |
tree | 8958bd615ab847120ebbeb3e275eb65ffdf8a2cc | |
parent | 193718d68aee65912f5e4008ec3484d0deef9efb (diff) |
Added check for dirfd().
git-svn-id: svn://svn.code.sf.net/p/dist/code/trunk/dist@186 2592e710-e01b-42a5-8df0-11608a6cc53d
-rw-r--r-- | MANIFEST | 3 | ||||
-rw-r--r-- | mcon/U/d_dirfd.U | 42 |
2 files changed, 44 insertions, 1 deletions
@@ -205,6 +205,7 @@ mcon/U/d_deflate.U Do we have zlib's deflate()? mcon/U/d_devpoll.U Can we use /dev/poll? mcon/U/d_difftime.U Do we have difftime()? mcon/U/d_dirent_d_type.U Does struct dirent has a member d_type? +mcon/U/d_dirfd.U Do we have dirfd()? mcon/U/d_dladdr.U Do we have dladdr()? mcon/U/d_dlerror.U Do we have dlerror()? mcon/U/d_dliterphdr.U Do we have dl_iterate_phdr()? @@ -218,6 +219,7 @@ mcon/U/d_epoll.U Can we use epoll_xxx() routines? mcon/U/d_etext_symbol.U Whether linker defines the "etext" symbol mcon/U/d_euc2jis.U Do we have euc2jis()? mcon/U/d_fast_assert.U Can we use fast assertions? +mcon/U/d_fchdir.U Do we have fchdir()? mcon/U/d_fchmod.U Do we have fchmod()? mcon/U/d_fchown.U Do we have fchown()? mcon/U/d_fcntl.U Do we have fcntl()? @@ -278,7 +280,6 @@ mcon/U/d_iptos.U Do we have IP TOS support? mcon/U/d_ipv6.U Do we have IPv6 support? mcon/U/d_isascii.U Do we have isascii()? mcon/U/d_itimer.U Do we have setitimer()? -mcon/U/d_fchdir.U Do we have fchdir()? mcon/U/d_keepsig.U Will signal handlers need to be rearmed? mcon/U/d_kevent_udata.U Is udata within struct kevent an integer? mcon/U/d_killpg.U Do we have killpg()? diff --git a/mcon/U/d_dirfd.U b/mcon/U/d_dirfd.U new file mode 100644 index 0000000..269b2d4 --- /dev/null +++ b/mcon/U/d_dirfd.U @@ -0,0 +1,42 @@ +?RCS: +?RCS: Copyright (c) 2015 Raphael Manfredi +?RCS: +?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 License; a copy of which may be found at the root +?RCS: of the source tree for dist 4.0. +?RCS: +?MAKE:d_dirfd: Trylink cat i_dirent +?MAKE: -pick add $@ %< +?S:d_dirfd: +?S: This variable conditionally defines HAS_DIRFD when dirfd() is +?S: available to get the underlying file descriptor from opendir(). +?S:. +?C:HAS_DIRFD: +?C: This symbol, if defined, indicates that the dirfd() routine is +?C: available to get the underlying file descriptor from a DIR * +?C: opened by opendir(). +?C:. +?H:#$d_dirfd HAS_DIRFD /**/ +?H:. +?LINT:set d_dirfd +: see if dirfd exists +$cat >try.c <<EOC +#include <sys/types.h> +#$i_dirent I_DIRENT +#ifdef I_DIRENT +#include <dirent.h> +#endif +int main(void) +{ + static DIR *dir; + static int ret; + ret = dirfd(dir); + return ret ? 0 : 1; +} +EOC +cyn=dirfd +set d_dirfd +eval $trylink + |