Commit Graph

3 Commits

Author SHA1 Message Date
Mark Mitchell
b450502905 * configure.ac: On MinGW, define USE_WIN32API and link with
-lws2_32.
	* ser-tcp.c (<winsock2.h>): Include, for Windows.
	(ETIMEDOUT): Define, for Windows.
	(ioctl): Likewise.
	(closesocket): Define, for POSIX.
	(net_open): Adjust for differences in socket functions between
	Windows and UNIX.
	(net_close): Likweise.
	(net_read_prim): New function.
	(net_write_prim): Likewise.
	(_initialize_ser_tcp): Initialize winsock.  Fill in read_prim and
	write_prim.
	* ser-unix.h (ser_unix_readcchar): Remove.
	(ser_unix_read_prim): Declare.
	(ser_unix_write_prim): Likewise.
	* ser-unix.c (generic_readchar): Move to ser-base.c.
	(ser_unix_wait_for): Likewise.
	(do_unix_readchar): Likewise.
	(ser_unix_readchar): Likewise.
	(_initialize_ser_hardwire): Initialize read_prim and write_prim.
	(ser_unix_read_prim): New function.
	(ser_unix_write_prim): Likewise.
	* ser-base.h (generic_readchar): Declare.
	(ser_base_readchar): Likewise.
	* ser-base.c (<winsock2.h>): Include, for windows.
	(fd_event): Use the read primitive specified by the serial
	interface.
	(ser_base_wait_for): Moved from ser-unix.c
	(do_ser_base_read_char): Likewise.
	(generic_readchar): Likewise.
	(ser_base_readchar): Likewise.
	(ser_base_write): Use the write primitive specified by the serial
	interface.
	* ser-pipe.c (_initialize_ser_pipe): Use ser_base_readchar, not
	ser_unix_readchar.  Initialize read_prim and write_prim.
	* serial.c (struct serial_ops): Add read_prim and write_prim.
	* configure: Regenerate.
2005-04-21 05:34:33 +00:00
Mark Mitchell
dd5da072a1 * ser-base.c (ser_unix_write): Rename to ...
(ser_base_write): ... this.
	(ser_unix_nop_flush_output): Rename to ...
	(ser_base_flush_output): ... this.
	(ser_unix_flush_input): Rename to ...
	(ser_base_flush_input): ... this.
	(ser_unix_nop_send_break): Rename to ...
	(ser_base_send_break): ... this.
	(ser_unix_nop_drain_output): Rename to ...
	(ser_base_drain_output): ... this.
	(ser_unix_nop_raw): Rename to ...
	(ser_base_raw): ... this.
	(ser_unix_nop_get_tty_state): Rename to ...
	(ser_base_set_tty_state): ... this.
	(ser_unix_nop_noflush_set_tty_state): Rename to ...
	(ser_base_noflush_set_tty_state): ... this.
	(ser_unix_nop_print_tty_state): Rename to ...
	(ser_base_print_tty_state): ... this.
	(ser_unix_nop_setbaudrate): Rename to ...
	(ser_base_setbaudrate): ... this.
	(ser_unix_nop_setstopbits): Rename to ...
	(ser_base_setstopbits): ... this.
	(ser_unix_async): Rename to ...
	(ser_base_async): ... this.
	* ser-base.h (ser_unix_write): Rename to ...
	(ser_base_write): ... this.
	(ser_unix_nop_flush_output): Rename to ...
	(ser_base_flush_output): ... this.
	(ser_unix_flush_input): Rename to ...
	(ser_base_flush_input): ... this.
	(ser_unix_nop_send_break): Rename to ...
	(ser_base_send_break): ... this.
	(ser_unix_nop_drain_output): Rename to ...
	(ser_base_drain_output): ... this.
	(ser_unix_nop_raw): Rename to ...
	(ser_base_raw): ... this.
	(ser_unix_nop_get_tty_state): Rename to ...
	(ser_base_set_tty_state): ... this.
	(ser_unix_nop_noflush_set_tty_state): Rename to ...
	(ser_base_noflush_set_tty_state): ... this.
	(ser_unix_nop_print_tty_state): Rename to ...
	(ser_base_print_tty_state): ... this.
	(ser_unix_nop_setbaudrate): Rename to ...
	(ser_base_setbaudrate): ... this.
	(ser_unix_nop_setstopbits): Rename to ...
	(ser_base_setstopbits): ... this.
	(ser_unix_async): Rename to ...
	(ser_base_async): ... this.
	* ser-pipe.c (_initialize_ser_pipe): Update accordingly.
	* ser-tcp.c (_initialize_ser_tcp): Likewise.
	* ser-unix.c (hardwire_flush_input): Likewise.
	(_initializer_ser_hardwire): Likewise.
2005-03-25 20:06:36 +00:00
Mark Mitchell
3eb25fda5d * Makefile.in (SFILES): Add ser-base.c.
(ser_base_h): New variable.
	(ser-base.o): New target.
	(ser-pipe.o): Depend on $(ser_base_h).
	(ser-tcp.o): Likewise.
	(ser-unix.o): Likewise.  Do not depend on $(event_loop_h).
	* configure.ac (SER_HARDWIRE): Include ser-base.o where
	appropriate.
	* ser-base.c: New file.
	(push_event): Move from ser-unix.c.
	(fd_event): Likewise.
	(reschedule): Likewise.
	(ser_unix_write): Likewise.
	(ser_unix_nop_flush_output): Likewise.
	(ser_unix_flush_input): Likewise.
	(ser_unix_nop_send_break): Likewise.
	(ser_unix_nop_drain_output): Likewise.
	(ser_unix_nop_raw): Likewise.
	(ser_unix_nop_get_tty_state): Likewise.
	(ser_unix_nop_set_tty_state): Likewise.
	(ser_unix_nop_noflush_set_tty_state): Likewise.
	(ser_unix_nop_print_tty_state): Likewise.
	(ser_unix_nop_setbaudrate): Likewise.
	(ser_unix_nop_setstopbits): Likewise.
	(ser_unix_async): Likewise.
	* ser-base.h: New file.
	* ser-pipe.c (ser-base.h): Include it.
	* ser-tcp.c (ser-base.h): Likewise.
	* ser-unix.h (ser_unix_nop_flush_output): Remove.
	(ser_unix_flush_input): Likewise.
	(ser_unix_nop_send_break): Likewise.
	(ser_unix_nop_raw): Likewise.
	(ser_unix_nop_get_tty_state): Likewise.
	(ser_unix_nop_set_tty_state): Likewise.
	(ser_unix_nop_print_tty_state): Likewise.
	(ser_unix_nop_noflush_set_tty_state): Likewise.
	(ser_unix_nop_setbaudrate): Likewise.
	(ser_unix_nop_setstopbits): Likewise.
	(ser_unix_nop_drain_output): Likewise.
	(ser_unix_wait_for): Likewise.
	(ser_unix_write): Likewise.
	(ser_unix_async): Likewise.
	* ser-unix.c (event-loop.h): Do not include it.
	(push_event): Move to ser-base.c.
	(fd_event): Likewise.
	(reschedule): Likewise.
	(ser_unix_write): Likewise.
	(ser_unix_nop_flush_output): Likewise.
	(ser_unix_flush_input): Likewise.
	(ser_unix_nop_send_break): Likewise.
	(ser_unix_nop_drain_output): Likewise.
	(ser_unix_nop_raw): Likewise.
	(ser_unix_nop_get_tty_state): Likewise.
	(ser_unix_nop_set_tty_state): Likewise.
	(ser_unix_nop_noflush_set_tty_state): Likewise.
	(ser_unix_nop_print_tty_state): Likewise.
	(ser_unix_nop_setbaudrate): Likewise.
	(ser_unix_nop_setstopbits): Likewise.
	(ser_unix_async): Likewise.
	(ser_unix_wait_for): Make it static.
	* configure: Regenerated.
2005-03-25 19:47:23 +00:00