]> andersk Git - moira.git/blob - util/imake.includes/config.Imakefile
58d08e35ea49f947db7ea4f148846c32e6b27d75
[moira.git] / util / imake.includes / config.Imakefile
1 /**/#   $Source$
2 /**/#
3
4 /* 
5  * Configuration options.
6  */
7
8 /* GLOBAL_CDEFS are passed to every C compile statement */
9 /* Here are some of the common definitions which you might add to GLOBAL_CDEFS:
10  *      HESIOD - use hesiod lookup Moira server name
11  *      ZEPHYR - report critical errors via Zephyr
12  *      SYSLOG42 - report critical errors via 4.2BSD-style syslog routines
13  *      ATHENA - Athena-local hacks other sites probably don't want
14  *      GDSS - use the generic data signature service to verify user info
15  *      DBMS=xxx - currently supported is INGRES, INFORMIX, ORACLE
16  *      ULTRIX022 - if you are running on pre-3.0 Ultrix.
17  *      SunOS=xx - if you are running SunOS.  Set xx to 10 times the release
18  *              number (e.g. SunOS 3.5 => -DSunOS=35, SunOS 4.0 => -DSunOS=40)
19  *      NO_GETUSERSHELL - if your system doesn't have getusershell() in libc
20  *              (type 'nm /lib/libc.a | grep getusershell', if something
21  *               shows up, you should NOT turn this flag on)
22  */
23
24 /* Curses library */
25 #ifdef SOLARIS
26 CURSES= -L/usr/css/lib -lcurses -ltermcap
27 #else
28 CURSES= -lcurses -ltermcap
29 #endif
30
31 #ifdef _AIX
32 OSDEFS=-D_BSD -D_BSD_INCLUDES -DPOSIX
33 OSLIBS=-lbsd
34 CURSES=-lcurses
35 #endif
36
37 #if defined(sgi)
38 OSDEFS= -DPOSIX
39 #endif
40
41 #if defined(SOLARIS)
42 OSDEFS= -DPOSIX -DSOLARIS -I/usr/openwin/include
43 OSLIBS= -L/usr/ccs/lib -lcurses -ltermcap -lresolv \
44         -lsocket -lnsl -lc /usr/ucblib/libucb.a -lelf -ldl
45 CURSES= 
46 /* the curses and termcap libs are where they are on purpose. -vrt 4/28/93
47  */
48 #endif
49
50 #ifdef NeXT
51 OSLIBS= -lresolv
52 #endif
53
54
55 GLOBAL_CDEFS= -DHESIOD -DZEPHYR -DGDSS -DATHENA -DDBMS=INGRES -I/usr/athena/include $(OSDEFS)
56
57
58 /* SRCTOP is the root of the Moira source tree */
59 SRCTOP=/mit/moiradev/src
60
61 /* DESTDIR is the root of the tree to install into.  
62  * If null, install into the running system.
63  *
64  * DESTDIR='/' is guaranteed to cause trouble for systems which don't
65  * like double slashes in pathnames.
66  *
67  * All the installed programs and files are put into ${DESTDIR}/wherever, e.g.
68  * kinit would get installed into ${DESTDIR}${PROGDIR}/kuser
69  */
70
71 DESTDIR= 
72
73 /*
74  * These directories should be subdirectories of DESTDIR;
75  * they show up as absolute pathnames here.
76  */
77 /*
78  * Note: USRDIR should be the parent of most of these directories.
79  * If it is not, you may get errors when installing (the installation
80  * process attempts to create USRDIR, in order to assure that all the
81  * parents of these directories exist.
82  */
83 USRDIR= /usr
84 ETCDIR= /usr/athena/etc
85 PROGDIR=/usr/athena/bin
86 LIBDIR= /usr/athena/lib
87 LINTLIBDIR = /usr/lib/lint
88 INCLDIR= /usr/athena/include
89 MANDIR= /usr/athena/man
90
91
92 /*
93  * Define SVRBUILD if this machine has your DBMS installed on it so
94  * that the server programs can be built which link against the DBMS
95  * libraries.
96  */
97 /* #define SVRBUILD */
98
99 /* Define USELOCALTOOLS if you already have built and installed in
100  * your environment the following tools:
101         imake
102         makedepend
103  */
104 #define USELOCALTOOLS
105
106 /* Define USELOCALLIBS if you already have built and installed in
107  * your environment the following libraries and associated tools:
108         com_err
109  */
110 #define USELOCALLIBS
111
112 /*
113  * Define HESIOD if you have hesiod installed on your system and want
114  * to use it for the Moira clients to find the Moira server.
115  */
116 #define HESIOD
117
118 /*
119  * Define ZEPHYR if you have zephyr installed on your system and want
120  * to use it to report Moira server errors.  Also define the library
121  * to link against.
122  */
123 #define ZEPHYR
124 LZEPHYR=-lzephyr
125
126 /*
127  * Define GDSS if you use the Generic Data Signature Service to 
128  * stamp user records to guarentee their authenticity.  Also define
129  * location of library and includes.
130  */
131 #define GDSS
132 #if !defined(sgi)
133 LIBGDSS= /mit/gdss/`machtype`/libgdss.a
134 #else
135 LIBGDSS= /mit/gdss/lib/libgdss.a
136 #endif
137 GDSSINC= -I/mit/gdss/include
138
139 /*
140  * Define your DBMS here.  Currently, the code will work with either
141  * INGRES or INFORMIX.
142  */
143 #define INGRES
144
145 /*
146  * Define NEED_STRCASECMP if you don't have strcasecmp() in your libc.
147  * (likely for older 4.3 systems and pre-4.3 systems)
148  */
149 /* #define NEED_STRCASECMP */
150
151 /*
152  * Define USELINT if you want to build lint libraries while building
153  * Moira.
154  */
155 #if !defined(NeXT) && !defined(_AIX) && !defined(SOLARIS) && !defined(sgi)
156 #define USELINT
157 #endif
158
159 /*
160  * LINTLIBFLAG should be the flag used to tell lint to create a lint
161  * library.  On most BSD systems, this is -C
162  */
163 #if defined(ultrix) || defined(_AIX)
164 LINTLIBFLAG=-o
165 #else
166 LINTLIBFLAG=-C
167 #endif
168
169 MR_LIB=$(BUILDTOP)/lib/libmoira.a
170 MR_LIBDEP=$(MR_LIB)
171 MR_LINTLIB=$(BUILDTOP)/lib/llib-lmoira.ln
172 GDB_LIB=$(BUILDTOP)/gdb/libmrgdb.a
173 GDB_LIBDEP=$(GDB_LIB)
174 GDB_LINTLIB=$(BUILDTOP)/gdb/llib-lmrgdb.ln
175
176
177 /*
178  * The name of a command which compiles error tables.
179  */
180 #ifdef USELOCALLIBS
181 COMPILE_ET= compile_et
182 #else
183 COMPILE_ET= $(BUILDTOP)/util/et/compile_et
184 #endif
185 /*
186  * Loader argument to get the com_err library
187  */
188 #ifdef USELOCALLIBS
189 COM_ERR = -lcom_err
190 #else
191 COM_ERR = $(BUILDTOP)/util/et/libcom_err.a
192 #endif
193 /*
194  * Dependency name for COM_ERR, if any
195  */
196 #ifndef USELOCALLIBS
197 COM_ERR_DEP = $(COM_ERR)
198 #endif
199
200 LLIB = -L/usr/athena/lib
201
202 /* libraries most Moira programs use */
203 #ifdef HESIOD
204 CLIBS= $(MR_LIB) $(GDB_LIB) $(LLIB) $(LZEPHYR) $(COM_ERR) -lkrb -ldes -lhesiod
205 #else
206 CLIBS= $(MR_LIB) $(GDB_LIB) $(LLIB) $(LZEPHYR) $(COM_ERR) -lkrb -ldes
207 #endif
208
209 /* libraries SQL programs need */
210 #ifdef INGRES
211 SQL_LIB= /usr/ingres/lib/libingres.a -lm
212 #endif
213 #ifdef INFORMIX
214 SQL_LIB= /usr/informix/lib/libsql.a
215 #endif
216 #ifdef ORACLE
217 SQL_LIB= /usr/oracle/lib/#########
218 #endif
219
220
221 /* Define NEED_STRCASECMP if your C library doesn't have the BSD-style
222  * case insensitive string compare strcasecmp().
223  */
224 #ifdef _AIX
225 #define NEED_STRCASECMP
226 #endif
227
228 /* HAS_VSPRINTF should be defined if this function is in your C library */
229 #if defined(_AIX) || defined(sun) || defined(_AUX_SOURCE) || defined(sgi)
230 #define HAS_VSPRINTF
231 #else
232 #undef HAS_VSPRINTF
233 #endif
234
235 /*
236  * Define DEBUG_LIBS if you want to create versions of the libraries
237  * that have useful debugging information (the default rules will strip
238  * out extra symbols, including debugging symbols, from the symbol
239  * table.)  NOTE:  This only works if you do NOT turn on PROFILED_LIBS
240  * below.
241  * NOTE:  this doesn't turn on the debugging flag for your compiler; do
242  * that with the DBG make variable, below.
243  */
244 /* #define DEBUG_LIBS */
245
246 /*
247  * Define PROFILED_LIBS if you want to create profiled versions of the
248  * libraries used in Kerberos
249  */
250 #define PROFILED_LIBS
251
252 /*
253  * Define PROF_FLAG to be the flag to be passed to your C compiler to
254  * turn on profiling.
255  */
256 #ifdef vax
257 #define PROF_FLAG -pg
258 #else
259 #define PROF_FLAG -p
260 #endif 
261
262 /*
263  * The name of a command which builds an object library.
264  */
265 ARCHIVE= ar cru
266 /*
267  * The name of another program needed to post-process the archive.
268  */
269 #if defined(SOLARIS) || defined(sgi)
270 RANLIB= /bin/true
271 #else
272 RANLIB= ranlib
273 #endif
274
275
276 /* 
277  * Install commands:  installs a file into the destination tree.
278  * These commands are called with two arguments: the source and the
279  * destination of the install.
280  */
281 /* install a file */
282 INSTALLFILE= install -c -m 444
283 /* install a library */ 
284 INSTALLLIB= install -c -m 444
285 /* install a program */
286 INSTALLPROG= install -c -m 555 
287 /* invoke raw install program */
288 INSTALLRAW= install
289
290 LD=ld                   /* The name of the target's linker */
291
292 AS=as                   /* The name of the target's assembler */
293
294 LINT=lint               /* The name of `lint' */
295
296 #ifdef SOLARIS
297 CC=gcc -traditional
298 #else
299 #ifdef _AIX
300 #ifdef i386
301 CC=cc -q -D_BSD -DBSD_INCLUDES
302 #else /* i386 */
303 CC=cc -D_BSD -D_BSD_INCLUDES    /* Use BSD style header files & be quiet */
304 #endif /* i386 */
305 #else /* _AIX */
306 CC=cc                   /* The name of the C compiler for the target */
307 #endif /* _AIX */
308 #endif /* SOLARIS */
309
310 CCRO=$(CC) -R           /* Compile with initialized data read-only 
311                            & shared (if possible) */
312
313 HCC=$(CC)               /* The name of the C compiler on _this_
314                          * machine
315                          */
316
317 CPP=$(CC) -E            /* A command which invokes the C preprocessor */
318
319 #ifndef _AIX            /* RS6K optomizer is buggy, we don't know if it wall affect moira */
320 DBG=-O                  /* Debug or optimize? */
321 #endif /* _AIX */
322
323 HCFLAGS=$(CFLAGS)
324
325 TAGGER=etags            /* Program to index source files */
326
327 SHELL=/bin/sh           /* shell to use from make */
328 MAKE=make               /* name of make program */
329 RM=rm -f                /* delete one or more files/directories/links */
330 MV=mv                   /* rename/move a file */
331 CP=cp                   /* copy a file */
332 LN=ln -s                /* create a link */
333 LPR=lpr -p              /* print a file or files */
334 CHMOD=chmod             /* change mode of a file */
335 AWK=awk                 /* used to filter embeded SQL files */
This page took 0.051166 seconds and 3 git commands to generate.