1 /*
2  *  nn Linux system definition file (nn/conf/s-linux.h), prepared by
3  *  ddb@ddb.com (David Dyer-Bennet) 7-Aug-96.
4  *  For Linux kernel 2.0 (tested on 2.0.11), based on work from
5  *  kai@toppoint.de (Kai Voigt) and another person who did not sign
6  *  his work.
7  */
8 
9 /*
10  *	Include header files containing the following definitions:
11  *
12  * 		off_t, time_t, struct stat
13  */
14 
15 #include <sys/types.h>
16 #include <sys/stat.h>
17 
18 
19 /*
20  *	Define if your system instead has <termios.h>
21  */
22 
23 #define	HAVE_TERMIOS_H			/* */
24 
25 /*
26  *	Define to use terminfo database.
27  *	Otherwise, termcap is used
28  */
29 
30 /* #define	USE_TERMINFO			/* */
31 
32 /*
33  *	Specify the library (or libraries) containing the termcap/terminfo
34  *	routines.
35  *
36  *	Notice:  nn only uses the low-level terminal access routines
37  *	(i.e. it does not use curses).
38  */
39 
40 #define TERMLIB	-lncurses
41 
42 /*
43  *	Define HAVE_STRCHR if strchr() and strrchr() are available
44  */
45 
46 #define HAVE_STRCHR			/* */
47 
48 /*
49  *	Define if a signal handler has type void (see signal.h)
50  */
51 
52 #define	SIGNAL_HANDLERS_ARE_VOID	/* */
53 
54 /*
55  *	Define if signals must be set again after they are caught
56  */
57 
58 #define	RESET_SIGNAL_WHEN_CAUGHT	/* */
59 
60 /*
61  *	Define FAKE_INTERRUPT if a keyboard interrupt (^C) cannot interrupt
62  *	a read() system call.  This happens on a few BSD based systems
63  *	which don't have SV_INTERRUPT defined in <signal.h> and no
64  *	siginterrupt() call to make systems call interruptable.
65  *	However, if siginterrupt() is available, but SV_INTERRUPT isn't
66  *	defined, then simply define that instead of FAKE_INTERRUPT!
67  */
68 
69 /* #define FAKE_INTERRUPT	/* */
70 
71 /*
72  *	Define HAVE_HARD_SLEEP if sending a SIGALRM isn't enough to
73  *	interrupt a sleep() call - typical symptom is that nnadmin W
74  *	doesn't wakeup the nnmaster.
75  */
76 
77 /* #define HAVE_HARD_SLEEP		/* BSD ? */
78 
79 /*
80  *	Define HAVE_UALARM if your system has a 4.3 BSD like ualarm() call.
81  *	Else define MICRO_ALARM(n) to timeout in n/10 seconds if possible.
82  *	Don't define either if system only has the standard alarm() call.
83  */
84 
85 /* #define HAVE_UALARM			/* BSD 4.3 */
86 /* #define MICRO_ALARM(n)	xxxx(n)	/* */
87 
88 /*
89  *	Define if your system has BSD like job control (SIGTSTP works)
90  */
91 
92 #define HAVE_JOBCONTROL			/* */
93 
94 
95 /*
96  *	Define if your system has a 4.3BSD like syslog library.
97  */
98 
99 #undef HAVE_SYSLOG
100 
101 /*
102  *	Define if your system provides the "directory(3X)" access routines
103  *
104  *	If true, include the header file(s) required by the package below
105  *	(remember that <sys/types.h> or equivalent is included above)
106  *	Also typedef Direntry to the proper struct type.
107  */
108 
109 #define	HAVE_DIRECTORY			/* */
110 
111 #include <dirent.h>			/* System V */
112 /* #include <sys/dir.h>				/* BSD */
113 
114 typedef struct dirent Direntry;		/* System V */
115 /* typedef struct direct Direntry;		/* BSD */
116 
117 /*
118  *	Define if your system has a mkdir() library routine
119  */
120 
121 #define	HAVE_MKDIR			/* */
122 
123 /*
124  *	Pick one:
125  *	Define HAVE_GETHOSTNAME if you have a BSD like gethostname routine.
126  *	Define HAVE_UNAME if a system V compatible uname() is available.
127  *	Define HOSTNAME_FILE "...." to a file containing the hostname.
128  *	Define HOSTNAME_WHOAMI if sysname is defined in <whoami.h>.
129  *
130  *	As a final resort, define HOSTNAME to the name of your system
131  *	(in config.h).
132  */
133 
134 #define HAVE_GETHOSTNAME			/* BSD systems */
135 /* #define HAVE_UNAME */			/* System V */
136 /* #define HOSTNAME_FILE "/etc/uucpname"	/* or another file */
137 /* #define HOSTNAME_WHOAMI			/* in <whoami.h> */
138 
139 /*
140  *	Define HAVE_MULTIGROUP if system has simultaneous multiple group
141  *	membership capability (BSD style).
142  *	Also define NGROUPS or include the proper .h file if NGROUPS is
143  *	not defined in <sys/param.h>.
144  */
145 
146 #define HAVE_MULTIGROUP	/* BSD */
147 
148 /*
149  *	Define DETACH_TERMINAL to be a command sequence which
150  *	will detatch a process from the control terminal
151  *	Also include system files needed to perform this HERE.
152  *	If not possible, just define it (empty)
153  */
154 
155 /* #include "...." */
156 
157 #define	DETACH_TERMINAL /* setpgrp(); */
158 
159 
160 /*
161  *	Specify where the Bourne Shell is.
162  */
163 
164 #define SHELL		"/bin/sh"
165 
166 /*
167  *	Define OLD_AWK to the name of the "old awk" program if your
168  *	standard 'awk' is 'nawk' (new awk).  Use full path if necessary.
169  *	(This is a temporary hack until I get time to fix the scripts
170  *	which breaks nawk).
171  */
172 
173 /* #define OLD_AWK	"oawk"		/* */
174 
175 /*
176  *	Define AVOID_SHELL_EXEC if the system gets confused by
177  *		#!/bin/sh
178  *	lines in shell scripts, e.g. only reads #! and thinks it
179  *	is a csh script.
180  */
181 
182 /* #define AVOID_SHELL_EXEC		/* */
183 
184 /*
185  *	Specify the default mailer
186  */
187 
188 /* #define	MAILX		"/usr/bin/mailx"	/* SV */
189 /* #define	MAILX	"/usr/ucb/Mail"		/* BSD */
190 #define	MAILX	"/bin/mailx"	/* linux */
191 
192 /*
193  *	Define the maximum length of any pathname that may occur
194  */
195 
196 #define	FILENAME 	256
197 
198 /*
199  *	Define USE_MALLOC_H if the faster malloc() in -lmalloc should be used.
200  *	This requires that -lmalloc is added to EXTRA_LIB below.
201  *
202  *	You can tune the malloc package through the following definitions
203  *	according to the descriptions in malloc(3X):
204  */
205 
206 /* #define USE_MALLOC_H		/* */
207 
208 /* #define MALLOC_GRAIN		sizeof(double)		/* M_GRAIN */
209 /* #define MALLOC_MAXFAST	(MALLOC_GRAIN*4)	/* M_MXFAST */
210 /* #define MALLOC_FASTBLOCKS	100			/* M_NLBLKS */
211 
212 /*
213  *	NNTP support requires tcp/ip with socket interface.
214  *
215  *	Define NO_RENAME if the rename() system call is not available.
216  *	Define EXCELAN if the tcp/ip package is EXCELAN based.
217  *	Define NNTP_EXTRA_LIB to any libraries required only for nntp.
218  */
219 
220 /* #define NO_RENAME			/* */
221 /* #define EXCELAN			/* */
222 /* #define NNTP_EXTRA_LIB -lsocket	/* */
223 
224 /*
225  *	Define standard compiler flags here:
226  */
227 
228 #define COMPILER_FLAGS -O2
229 
230 /*
231  *	Define standard loader flags here:
232  */
233 
234 #define LOADER_FLAGS -L/usr/lib
235 
236 /*
237  *	If your system requires other libraries when linking nn
238  *	specify them here:
239  */
240 
241 #define EXTRA_LIB
242 
243 /*
244  *  Stuff that config.h says to define in your system file...
245  */
246 
247 /*
248  * 	Define RESIZING to make nn understand dynamic window-resizing.
249  * 	(It uses the TIOCGWINSZ ioctl found on most 4.3BSD systems)
250  */
251 
252 #define RESIZING
253 
254