5 * Configuration options.
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)
26 CURSES= -L/usr/css/lib -lcurses -ltermcap
28 CURSES= -lcurses -ltermcap
32 OSDEFS=-D_BSD -D_BSD_INCLUDES -DPOSIX
38 OSDEFS= -DPOSIX -DSOLARIS -I/usr/openwin/include
39 OSLIBS= -L/usr/ccs/lib -lcurses -ltermcap -lresolv \
40 -lsocket -lnsl -lc /usr/ucblib/libucb.a -lelf -ldl
42 /* the curses and termcap libs are where they are on purpose. -vrt 4/28/93
51 GLOBAL_CDEFS= -DHESIOD -DZEPHYR -DGDSS -DATHENA -DDBMS=INGRES -I/usr/athena/include $(OSDEFS)
54 /* SRCTOP is the root of the Moira source tree */
55 SRCTOP=/mit/moiradev/src
57 /* DESTDIR is the root of the tree to install into.
58 * If null, install into the running system.
60 * DESTDIR='/' is guaranteed to cause trouble for systems which don't
61 * like double slashes in pathnames.
63 * All the installed programs and files are put into ${DESTDIR}/wherever, e.g.
64 * kinit would get installed into ${DESTDIR}${PROGDIR}/kuser
70 * These directories should be subdirectories of DESTDIR;
71 * they show up as absolute pathnames here.
74 * Note: USRDIR should be the parent of most of these directories.
75 * If it is not, you may get errors when installing (the installation
76 * process attempts to create USRDIR, in order to assure that all the
77 * parents of these directories exist.
80 ETCDIR= /usr/athena/etc
81 PROGDIR=/usr/athena/bin
82 LIBDIR= /usr/athena/lib
83 LINTLIBDIR = /usr/lib/lint
84 INCLDIR= /usr/athena/include
85 MANDIR= /usr/athena/man
89 * Define SVRBUILD if this machine has your DBMS installed on it so
90 * that the server programs can be built which link against the DBMS
93 /* #define SVRBUILD */
95 /* Define USELOCALTOOLS if you already have built and installed in
96 * your environment the following tools:
100 #define USELOCALTOOLS
102 /* Define USELOCALLIBS if you already have built and installed in
103 * your environment the following libraries and associated tools:
110 * Define HESIOD if you have hesiod installed on your system and want
111 * to use it for the Moira clients to find the Moira server.
116 * Define ZEPHYR if you have zephyr installed on your system and want
117 * to use it to report Moira server errors. Also define the library
124 * Define GDSS if you use the Generic Data Signature Service to
125 * stamp user records to guarentee their authenticity. Also define
126 * location of library and includes.
129 LIBGDSS= /mit/gdss/`machtype`/libgdss.a
130 GDSSINC= -I/mit/gdss/include
133 * Define your DBMS here. Currently, the code will work with either
134 * INGRES or INFORMIX.
139 * Define NEED_STRCASECMP if you don't have strcasecmp() in your libc.
140 * (likely for older 4.3 systems and pre-4.3 systems)
142 /* #define NEED_STRCASECMP */
145 * Define USELINT if you want to build lint libraries while building
148 #if !defined(NeXT) && !defined(_AIX) && !defined(SOLARIS)
153 * LINTLIBFLAG should be the flag used to tell lint to create a lint
154 * library. On most BSD systems, this is -C
156 #if defined(ultrix) || defined(_AIX)
162 MR_LIB=$(BUILDTOP)/lib/libmoira.a
164 MR_LINTLIB=$(BUILDTOP)/lib/llib-lmoira.ln
165 GDB_LIB=$(BUILDTOP)/gdb/libmrgdb.a
166 GDB_LIBDEP=$(GDB_LIB)
167 GDB_LINTLIB=$(BUILDTOP)/gdb/llib-lmrgdb.ln
171 * The name of a command which compiles error tables.
174 COMPILE_ET= compile_et
176 COMPILE_ET= $(BUILDTOP)/util/et/compile_et
179 * Loader argument to get the com_err library
184 COM_ERR = $(BUILDTOP)/util/et/libcom_err.a
187 * Dependency name for COM_ERR, if any
190 COM_ERR_DEP = $(COM_ERR)
193 * The name of a command which compiles command tables.
196 MAKE_COMMANDS= mk_cmds
198 MAKE_COMMANDS= $(BUILDTOP)/util/ss/mk_cmds
201 * Loader argument to get the ss library
206 SS_LIB = $(BUILDTOP)/util/ss/libss.a
209 * Dependency name for SS_LIB, if any
212 SS_LIBDEP = $(SS_LIB)
215 LLIB = -L/usr/athena/lib
217 /* libraries most Moira programs use */
219 CLIBS= $(MR_LIB) $(GDB_LIB) $(LLIB) $(LZEPHYR) $(COM_ERR) -lkrb -ldes -lhesiod
221 CLIBS= $(MR_LIB) $(GDB_LIB) $(LLIB) $(LZEPHYR) $(COM_ERR) -lkrb -ldes
224 /* libraries SQL programs need */
226 SQL_LIB= /usr/ingres/lib/libingres.a -lm
229 SQL_LIB= /usr/informix/lib/libsql.a
232 SQL_LIB= /usr/oracle/lib/#########
236 /* Define NEED_STRCASECMP if your C library doesn't have the BSD-style
237 * case insensitive string compare strcasecmp().
240 #define NEED_STRCASECMP
243 /* HAS_VSPRINTF should be defined if this function is in your C library */
244 #if defined(_AIX) || defined(sun) || defined(_AUX_SOURCE)
251 * Define DEBUG_LIBS if you want to create versions of the libraries
252 * that have useful debugging information (the default rules will strip
253 * out extra symbols, including debugging symbols, from the symbol
254 * table.) NOTE: This only works if you do NOT turn on PROFILED_LIBS
256 * NOTE: this doesn't turn on the debugging flag for your compiler; do
257 * that with the DBG make variable, below.
259 /* #define DEBUG_LIBS */
262 * Define PROFILED_LIBS if you want to create profiled versions of the
263 * libraries used in Kerberos
265 #define PROFILED_LIBS
268 * Define PROF_FLAG to be the flag to be passed to your C compiler to
272 #define PROF_FLAG -pg
278 * The name of a command which builds an object library.
282 * The name of another program needed to post-process the archive.
292 * Install commands: installs a file into the destination tree.
293 * These commands are called with two arguments: the source and the
294 * destination of the install.
297 INSTALLFILE= install -c -m 444
298 /* install a library */
299 INSTALLLIB= install -c -m 444
300 /* install a program */
301 INSTALLPROG= install -c -m 555
302 /* invoke raw install program */
305 LD=ld /* The name of the target's linker */
307 AS=as /* The name of the target's assembler */
309 LINT=lint /* The name of `lint' */
316 CC=cc -q -D_BSD -DBSD_INCLUDES
318 CC=cc -D_BSD -D_BSD_INCLUDES /* Use BSD style header files & be quiet */
321 CC=cc /* The name of the C compiler for the target */
325 CCRO=$(CC) -R /* Compile with initialized data read-only
326 & shared (if possible) */
328 HCC=$(CC) /* The name of the C compiler on _this_
332 CPP=$(CC) -E /* A command which invokes the C preprocessor */
334 #ifndef _AIX /* RS6K optomizer is buggy, we don't know if it wall affect moira */
335 DBG=-O /* Debug or optimize? */
340 TAGGER=etags /* Program to index source files */
342 MAKE=make /* name of make program */
343 RM=rm -f /* delete one or more files/directories/links */
344 MV=mv /* rename/move a file */
345 CP=cp /* copy a file */
346 LN=ln -s /* create a link */
347 LPR=lpr -p /* print a file or files */
348 CHMOD=chmod /* change mode of a file */
349 AWK=awk /* used to filter embeded SQL files */