home *** CD-ROM | disk | FTP | other *** search
/ Unix System Administration Handbook 1997 October / usah_oct97.iso / news / nn.tar / nn-6.5.1 / conf / s-template.h < prev    next >
C/C++ Source or Header  |  1996-08-26  |  7KB  |  302 lines

  1. /*
  2.  *    Use this file as a template for new s- files
  3.  */
  4.  
  5.  
  6. /*
  7.  *    Include header files containing the following definitions:
  8.  *
  9.  *         off_t, time_t, struct stat
  10.  */
  11.  
  12. #include <sys/types.h>
  13. #include <sys/stat.h>
  14.  
  15.  
  16. /*
  17.  *    Define if your system doesn't have memmove()
  18.  */
  19.  
  20. /* #define NO_MEMMOVE    /* */
  21.  
  22. /*
  23.  *    Define if your system has system V like ioctls
  24.  *    and <termio.h>
  25.  */
  26.  
  27. #define    HAVE_TERMIO_H            /* */
  28.  
  29. /*
  30.  *    Define if your system instead has <termios.h>
  31.  */
  32.  
  33. /* #define    HAVE_TERMIOS_H        /* */
  34.  
  35. /*
  36.  *    Define to use terminfo database.
  37.  *    Otherwise, termcap is used
  38.  */
  39.  
  40. #define    USE_TERMINFO            /* */
  41.  
  42. /*
  43.  *    Specify the library (or libraries) containing the termcap/terminfo
  44.  *    routines.
  45.  *
  46.  *    Notice:  nn only uses the low-level terminal access routines
  47.  *    (i.e. it does not use curses).
  48.  */
  49.  
  50. #define TERMLIB    -ltermlib
  51.  
  52. /*
  53.  *    Define HAVE_STRCHR if strchr() and strrchr() are available
  54.  */
  55.  
  56. #define HAVE_STRCHR            /* */
  57.  
  58. /*
  59.  *    Availability of varargs/vprintf/vsprintf is normally assumed
  60.  *    on most systems, *unless* NO_VARARGS is defined either here or
  61.  *    in the m- file.
  62.  *
  63.  *    To overrule a NO_VARARGS in the m- file, define HAVE_VARARGS
  64.  *    below if the varargs feature is available, *including* the
  65.  *    vprintf/vsprintf routines.
  66.  *
  67.  *    You may also define NO_VARARGS here, if varargs or the v*printf
  68.  *    are not available on this OS, but the m- file doesn't say so.
  69.  */
  70.  
  71. /* #define HAVE_VARARGS /* Ignore NO_VARARGS -- else default */
  72. /* #define NO_VARARGS /* */
  73.  
  74. /*
  75.  *    Define if a signal handler has type void (see signal.h)
  76.  */
  77.  
  78. #define    SIGNAL_HANDLERS_ARE_VOID    /* */
  79.  
  80. /*
  81.  *    Define if signals must be set again after they are caught
  82.  */
  83.  
  84. #define    RESET_SIGNAL_WHEN_CAUGHT    /* */
  85.  
  86. /*
  87.  *    Define FAKE_INTERRUPT if a keyboard interrupt (^C) cannot interrupt
  88.  *    a read() system call.  This happens on a few BSD based systems
  89.  *    which don't have SV_INTERRUPT defined in <signal.h> and no
  90.  *    siginterrupt() call to make systems call interruptable.  
  91.  *    However, if siginterrupt() is available, but SV_INTERRUPT isn't
  92.  *    defined, then simply define that instead of FAKE_INTERRUPT!
  93.  */
  94.  
  95. /* #define FAKE_INTERRUPT    /* */
  96.  
  97. /*
  98.  *    Define HAVE_HARD_SLEEP if sending a SIGALRM isn't enough to
  99.  *    interrupt a sleep() call - typical symptom is that nnadmin W
  100.  *    doesn't wakeup the nnmaster.
  101.  */
  102.  
  103. /* #define HAVE_HARD_SLEEP        /* BSD ? */
  104.  
  105. /*
  106.  *    Define HAVE_UALARM if your system has a 4.3 BSD like ualarm() call.
  107.  *    Else define MICRO_ALARM(n) to timeout in n/10 seconds if possible.
  108.  *    Don't define either if system only has the standard alarm() call.
  109.  */
  110.  
  111. /* #define HAVE_UALARM            /* BSD 4.3 */
  112. /* #define MICRO_ALARM(n)    xxxx(n)    /* */
  113.  
  114. /*
  115.  *    Define if your system has BSD like job control (SIGTSTP works)
  116.  */
  117.  
  118. /* #define HAVE_JOBCONTROL            /* */
  119.  
  120.  
  121. /*
  122.  *    Define if your system has a 4.3BSD like syslog library.
  123.  */
  124.  
  125. #undef HAVE_SYSLOG
  126.  
  127. /*
  128.  *    Define if your system provides the "directory(3X)" access routines
  129.  *
  130.  *    If true, include the header file(s) required by the package below
  131.  *    (remember that <sys/types.h> or equivalent is included above)
  132.  *    Also typedef Direntry to the proper struct type.
  133.  */
  134.  
  135. #define    HAVE_DIRECTORY            /* */
  136.  
  137. #include <dirent.h>            /* System V */
  138. /* #include <sys/dir.h>                /* BSD */
  139.  
  140. typedef struct dirent Direntry;        /* System V */
  141. /* typedef struct direct Direntry;        /* BSD */
  142.  
  143. /*
  144.  *    Define if your system has a mkdir() library routine
  145.  */
  146.  
  147. #define    HAVE_MKDIR            /* */
  148.  
  149. /*
  150.  *    Pick one:
  151.  *    Define HAVE_GETHOSTNAME if you have a BSD like gethostname routine.
  152.  *    Define HAVE_UNAME if a system V compatible uname() is available.
  153.  *    Define HOSTNAME_FILE "...." to a file containing the hostname.
  154.  *    Define HOSTNAME_WHOAMI if sysname is defined in <whoami.h>.
  155.  *
  156.  *    As a final resort, define HOSTNAME to the name of your system
  157.  *    (in config.h).
  158.  */
  159.  
  160. /* #define HAVE_GETHOSTNAME            /* BSD systems */
  161. /* #define HAVE_UNAME                /* System V */
  162. /* #define HOSTNAME_FILE "/etc/uucpname"    /* or another file */
  163. /* #define HOSTNAME_WHOAMI            /* in <whoami.h> */
  164.  
  165. /*
  166.  *    Define HAVE_MULTIGROUP if system has simultaneous multiple group
  167.  *    membership capability (BSD style).
  168.  *    Also define NGROUPS or include the proper .h file if NGROUPS is
  169.  *    not defined in <sys/param.h>.
  170.  *    Also define GIDSET_TYPE to the type of the elements in the array
  171.  *    initialized by getgroups() if different from "int" (many systems
  172.  *    have a gid_t, but very few use it for getgroups()).
  173.  */
  174.  
  175. /* #define HAVE_MULTIGROUP    /* BSD */
  176.  
  177. /*
  178.  *    Define DETATCH_TERMINAL to be a command sequence which
  179.  *    will detatch a process from the control terminal
  180.  *    Also include system files needed to perform this HERE.
  181.  *    If not possible, just define it (empty)
  182.  */
  183.  
  184. /* #include "...." */
  185.  
  186. #define    DETATCH_TERMINAL /* setpgrp(); */
  187.  
  188.  
  189. /*
  190.  *    Specify where the Bourne Shell is.
  191.  */
  192.  
  193. #define SHELL        "/bin/sh"
  194.  
  195. /*
  196.  *    Define OLD_AWK to the name of the "old awk" program if your
  197.  *    standard 'awk' is 'nawk' (new awk).  Use full path if necessary.
  198.  *    (This is a temporary hack until I get time to fix the scripts
  199.  *    which breaks nawk).
  200.  */
  201.  
  202. /* #define OLD_AWK    "oawk"        /* */
  203.  
  204. /*
  205.  *    Define AVOID_SHELL_EXEC if the system gets confused by
  206.  *        #!/bin/sh
  207.  *    lines in shell scripts, e.g. only reads #! and thinks it
  208.  *    is a csh script.
  209.  */
  210.  
  211. /* #define AVOID_SHELL_EXEC        /* */
  212.  
  213. /*
  214.  *    Specify the default mailer to be invoked by nnmail
  215.  */
  216.  
  217. #define    MAILX        "/usr/bin/mailx"    /* SV */
  218. /* #define    MAILX    "/usr/ucb/Mail"        /* BSD */
  219.  
  220. /*
  221.  *    Define the maximum length of any pathname that may occur
  222.  */
  223.  
  224. #define    FILENAME     256
  225.  
  226. /*
  227.  *    Define USE_MALLOC_H if the faster malloc() in -lmalloc should be used.
  228.  *    This requires that -lmalloc is added to EXTRA_LIB below.
  229.  *
  230.  *    You can tune the malloc package through the following definitions
  231.  *    according to the descriptions in malloc(3X):
  232.  */
  233.  
  234. /* #define USE_MALLOC_H        /* */
  235.  
  236. /* #define MALLOC_GRAIN        sizeof(double)        /* M_GRAIN */
  237. /* #define MALLOC_MAXFAST    (MALLOC_GRAIN*4)    /* M_MXFAST */
  238. /* #define MALLOC_FASTBLOCKS    100            /* M_NLBLKS */
  239.  
  240. /*
  241.  *    NNTP support requires tcp/ip with socket interface.
  242.  *
  243.  *    Define NO_RENAME if the rename() system call is not available.
  244.  *    Define NO_BZERO if the bzero() function is not available.
  245.  *    Define EXCELAN if the tcp/ip package is EXCELAN based.
  246.  *    Define NNTP_EXTRA_LIB to any libraries required only for nntp.
  247.  */
  248.  
  249. /* #define NO_RENAME            /* */
  250. /* #define NO_BZERO            /* */
  251. /* #define EXCELAN            /* */
  252. /* #define NNTP_EXTRA_LIB -lsocket    /* */
  253.  
  254. /*
  255.  *     Define RESIZING to make nn understand dynamic window-resizing.
  256.  *     (It uses the TIOCGWINSZ ioctl found on most 4.3BSD systems)
  257.  *    This should be defined in the conf/s-xxxxx.h file.
  258.  */
  259.  
  260. /* #define RESIZING    /* */
  261.  
  262. /*
  263.  *    Include file configuration.  Most systems with an ANSI conformant C
  264.  *    compiler should have these.  If you have them, you should use them!
  265.  *
  266.  *    IF YOU HAVE THESE FILES, IT IS *VERY IMPORTANT* THAT YOU INCLUDE THEM
  267.  */
  268.  
  269. /* Do you have /usr/include/string.h */
  270. /* #define HAVE_STRING_H    /* */
  271.  
  272. /* Do you have /usr/include/unistd.h */
  273. /* #define HAVE_UNISTD_H    /* */
  274.  
  275. /* Do you have /usr/include/stdlib.h */
  276. /* #define HAVE_STDLIB_H    /* */
  277.  
  278. /* Do you have /usr/include/memory.h */
  279. /* #define HAVE_MEMORY_H    /* */
  280.  
  281. /* Do you have /usr/include/fcntl.h */
  282. /* #define HAVE_FCNTL_H        /* */
  283.  
  284. /*
  285.  *    Define standard compiler flags here:
  286.  */
  287.  
  288. #define COMPILER_FLAGS
  289.  
  290. /*
  291.  *    Define standard loader flags here:
  292.  */
  293.  
  294. #define LOADER_FLAGS
  295.  
  296. /*
  297.  *    If your system requires other libraries when linking nn
  298.  *    specify them here:
  299.  */
  300.  
  301. #define EXTRA_LIB
  302.