[comp.emacs] using Xenix 2.3.2 select

ron@mlfarm.UUCP (Ronald Florence) (10/03/89)

After some fiddling, I have gotten GNU Emacs 18.50 to run using the
select() system call in Xenix 2.3.2.  Since the conditional defines
may already be present in a later version of Emacs, I'll give the
steps rather than patch or diff files here:

	1.  Uncomment the defines for HAVE_SELECT, HAVE_PTYS,
	HAVE_TIMEVAL and FIRST_PTY_LETTER 'p' in s-xenix.h.

	2.  Write conditionals to include <sys/select.h> in files
	dispnew.c, fileio.c, process.c, and sysdep.c instead of the
	BSD <sys/time.h> or USG <time.h>.

	3.  Conditionally include a dummy utimes() in sysdep.c.  Xenix
	lacks a real utimes(), which would be used for the optional
	fourth argument to function copy-file.

	4.  In function wait_reading_process_input() in process.c,
	conditionally include, before the call to select(), the line

		Exception &= ~1;

The last step works around the bug that causes the select() call in
Xenix 2.3.2 to break if stdin is included in the exception file
descriptors.  The other Xenix select() bugs are either cured in
version 2.3.2 or do not affect Emacs.

That's all.


		
-- 

Ronald Florence			...{hsi,rayssd}!mlfarm!ron