port.h
上传用户:tianjinjs
上传日期:2007-01-05
资源大小:309k
文件大小:3k
源码类别:

Modem编程

开发平台:

Unix_Linux

  1. /*
  2.  * port.h General include file that includes all nessecary files
  3.  * for the configured system. This is a general file,
  4.  * not application dependant. It maybe a bit of overhead
  5.  * but simplifies porting greatly.
  6.  *
  7.  * This file is part of the minicom communications package,
  8.  * Copyright 1991-1995 Miquel van Smoorenburg.
  9.  *
  10.  * This program is free software; you can redistribute it and/or
  11.  * modify it under the terms of the GNU General Public License
  12.  * as published by the Free Software Foundation; either version
  13.  * 2 of the License, or (at your option) any later version.
  14.  */
  15. #ifdef ISC
  16. #  include <sys/bsdtypes.h>
  17. #endif
  18. #if defined(_HAVE_PARAM_H) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__)
  19. #  include <sys/param.h>
  20. #endif
  21. #include <sys/types.h>
  22. #if defined (_POSIX) || defined(_BSD43) || (defined(BSD) && (BSD >= 199103))
  23. #  include <unistd.h>
  24. #  include <stdlib.h>
  25. #else
  26.    char *getenv();
  27. #endif
  28. #if defined (__linux__)
  29. #  include <termcap.h>
  30. #else
  31.   char *tgetstr(), *tgoto();
  32.   int tgetent(), tputs(), tgetnum(), tgetflag();
  33. #endif
  34. #ifdef _UWIN2P0
  35. # include <time.h>
  36. # define MAXNAMLEN 80
  37. #endif
  38. #include <signal.h>
  39. #include <fcntl.h>
  40. #include <setjmp.h>
  41. #include <sys/stat.h>
  42. #ifdef _MINIX
  43. #include <sys/times.h>
  44. #else
  45. #include <sys/time.h>
  46. #endif
  47. #include <string.h>
  48. #include <stdio.h>
  49. #include <pwd.h>
  50. #include <ctype.h>
  51. #include <errno.h>
  52. #if defined(_BSD43) || defined(_SYSV) || (defined(BSD) && (BSD >= 199103))
  53. #  define NOSTREAMS
  54. #  include <sys/file.h>
  55. #endif
  56. #if defined(_COH42) || defined(_SEQUENT)
  57. #  include <sys/select.h>
  58. #endif
  59. /* This one's for Coherent 3. What about Coherent 4 ? */
  60. #ifdef _COH3
  61. #  include <access.h>
  62. #  define W_OK AWRITE
  63. #  define R_OK AREAD
  64. #endif
  65. /* And for ancient systems like SVR2 */
  66. #ifndef W_OK
  67. #  define W_OK 2
  68. #  define R_OK 4
  69. #endif
  70. #ifndef SEEK_SET
  71. #  define SEEK_SET 0
  72. #  define SEEK_END 2
  73. #endif
  74. #ifndef _NSIG
  75. #  ifndef NSIG
  76. #    define _NSIG 31
  77. #  else
  78. #    define _NSIG NSIG
  79. #  endif
  80. #endif
  81. /* A general macro for prototyping. */
  82. #ifndef _PROTO
  83. #  if __STDC__
  84. #    define _PROTO(fun, args) fun args
  85. #  else
  86. #  define _PROTO(fun, args) fun()
  87. #  endif
  88. #endif
  89. #ifdef _COH42
  90. #  define time_t long
  91. #endif
  92. /* Enable music routines. Could we use defined(i386) here? */
  93. #if defined(__linux__) || defined(_COH42) || defined(_SCO)
  94. #  ifdef _SELECT
  95. #    define VC_MUSIC 1
  96. #  endif
  97. #endif
  98. /* Availability of setreuid(uid_t, uid_t) */
  99. #if defined(__linux__) || defined(_BSD43) || (defined(BSD) && (BSD >= 199103))
  100. #  define HAS_REUID
  101. #endif
  102. /* Availability of fchown(int, uid_t, gid_t) */
  103. #if defined (_SYSV) || defined (_BSD43) || defined(_DGUX_SOURCE)
  104. #  if !defined(_SVR2) && !defined(_SYSV3) && !defined(_COH42)
  105. #    define HAS_FCHOWN
  106. #  endif
  107. #endif