summaryrefslogtreecommitdiff
path: root/src/epaths.in
diff options
context:
space:
mode:
authorRobert Pluim <rpluim@gmail.com>2022-05-04 17:09:07 +0200
committerRobert Pluim <rpluim@gmail.com>2022-05-05 19:30:15 +0200
commit2087e5eb2bf6cfefe74b6b589c215c2144ed9fb0 (patch)
tree27b4865f176452535ec02666b16331ecf44445d7 /src/epaths.in
parentaebff74af27157b60a0d6549be718d85a809b985 (diff)
downloademacs-feature/more-fds.tar.gz
Allow the use of poll instead of selectfeature/more-fds
Increase the maximum number of open files allowed to 10 x FD_SETSIZE (which is what poll is limited to on macOS). * configure.ac (--with-poll): New option, default off, for requesting 'poll' support. Check for "sys/poll.h" header. (USE_POLL): New variable. (EMACS_CONFIG_FEATURES): Add USE_POLL. * etc/NEWS: Document --with-poll. * src/sysselect.h: New define EMACS_MAX_FD, defaulting to FD_SETSIZE, for the maximum number of file descriptors Emacs can use. * src/process.c: * src/sysdep.c: * src/nsterm.m (ns_select_1): (applicationDidFinishLaunching): Use EMACS_MAX_FD instead of FD_SETSIZE everywhere. * src/syspoll.h (SYSPOLL_H): New file for definitions related to use of 'poll'. * src/sysselect.h [USE_POLL]: Set EMACS_MAX_FD to 10 x FD_SETSIZE. (emacs_fd_set) [USE_POLL]: New type, used for bitsets of file descriptors. (FD_CLR, FD_ISSET, FD_SET, FD_ZERO) [USE_POLL]: Macros for manipulating bitsets. [USE_POLL]: Include "syspoll.h". * src/process.c (fd_sets_to_pollfds) [USE_POLL]: New function. Converts two 'emacs_fd_set' to an array of 'struct pollfd' (pollfds_to_fd_sets) [USE_POLL]: New function. Converts from an array of 'struct pollfd' to two 'emacs_fd_set'. (timespec_to_timeout) [USE_POLL]: New function, converts a 'struct timespec' to a timeout in milliseconds. (emacs_pselect) [USE_POLL]: Replacement for 'pselect' that calls 'poll' and does the appropriate conversions. Does not support sigmask.
Diffstat (limited to 'src/epaths.in')
0 files changed, 0 insertions, 0 deletions