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
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
46 /* the curses and termcap libs are where they are on purpose. -vrt 4/28/93
55 GLOBAL_CDEFS= -DHESIOD -DZEPHYR -DGDSS -DATHENA -DDBMS=INGRES -I/usr/athena/include $(OSDEFS)
58 /* SRCTOP is the root of the Moira source tree */
59 SRCTOP=/mit/moiradev/src
61 /* DESTDIR is the root of the tree to install into.
62 * If null, install into the running system.
64 * DESTDIR='/' is guaranteed to cause trouble for systems which don't
65 * like double slashes in pathnames.
67 * All the installed programs and files are put into ${DESTDIR}/wherever, e.g.
68 * kinit would get installed into ${DESTDIR}${PROGDIR}/kuser
74 * These directories should be subdirectories of DESTDIR;
75 * they show up as absolute pathnames here.
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.
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
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
97 /* #define SVRBUILD */
99 /* Define USELOCALTOOLS if you already have built and installed in
100 * your environment the following tools:
104 #define USELOCALTOOLS
106 /* Define USELOCALLIBS if you already have built and installed in
107 * your environment the following libraries and associated tools:
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.
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
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.
133 LIBGDSS= /mit/gdss/`machtype`/libgdss.a
135 LIBGDSS= /mit/gdss/lib/libgdss.a
137 GDSSINC= -I/mit/gdss/include
140 * Define your DBMS here. Currently, the code will work with either
141 * INGRES or INFORMIX.
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)
149 /* #define NEED_STRCASECMP */
152 * Define USELINT if you want to build lint libraries while building
155 #if !defined(NeXT) && !defined(_AIX) && !defined(SOLARIS) && !defined(sgi)
160 * LINTLIBFLAG should be the flag used to tell lint to create a lint
161 * library. On most BSD systems, this is -C
163 #if defined(ultrix) || defined(_AIX)
169 MR_LIB=$(BUILDTOP)/lib/libmoira.a
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
178 * The name of a command which compiles error tables.
181 COMPILE_ET= compile_et
183 COMPILE_ET= $(BUILDTOP)/util/et/compile_et
186 * Loader argument to get the com_err library
191 COM_ERR = $(BUILDTOP)/util/et/libcom_err.a
194 * Dependency name for COM_ERR, if any
197 COM_ERR_DEP = $(COM_ERR)
200 LLIB = -L/usr/athena/lib
202 /* libraries most Moira programs use */
204 CLIBS= $(MR_LIB) $(GDB_LIB) $(LLIB) $(LZEPHYR) $(COM_ERR) -lkrb -ldes -lhesiod
206 CLIBS= $(MR_LIB) $(GDB_LIB) $(LLIB) $(LZEPHYR) $(COM_ERR) -lkrb -ldes
209 /* libraries SQL programs need */
211 SQL_LIB= /usr/ingres/lib/libingres.a -lm
214 SQL_LIB= /usr/informix/lib/libsql.a
217 SQL_LIB= /usr/oracle/lib/#########
221 /* Define NEED_STRCASECMP if your C library doesn't have the BSD-style
222 * case insensitive string compare strcasecmp().
225 #define NEED_STRCASECMP
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)
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
241 * NOTE: this doesn't turn on the debugging flag for your compiler; do
242 * that with the DBG make variable, below.
244 /* #define DEBUG_LIBS */
247 * Define PROFILED_LIBS if you want to create profiled versions of the
248 * libraries used in Kerberos
250 #define PROFILED_LIBS
253 * Define PROF_FLAG to be the flag to be passed to your C compiler to
257 #define PROF_FLAG -pg
263 * The name of a command which builds an object library.
267 * The name of another program needed to post-process the archive.
269 #if defined(SOLARIS) || defined(sgi)
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.
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 */
290 LD=ld /* The name of the target's linker */
292 AS=as /* The name of the target's assembler */
294 LINT=lint /* The name of `lint' */
301 CC=cc -q -D_BSD -DBSD_INCLUDES
303 CC=cc -D_BSD -D_BSD_INCLUDES /* Use BSD style header files & be quiet */
306 CC=cc /* The name of the C compiler for the target */
310 CCRO=$(CC) -R /* Compile with initialized data read-only
311 & shared (if possible) */
313 HCC=$(CC) /* The name of the C compiler on _this_
317 CPP=$(CC) -E /* A command which invokes the C preprocessor */
319 #ifndef _AIX /* RS6K optomizer is buggy, we don't know if it wall affect moira */
320 DBG=-O /* Debug or optimize? */
325 TAGGER=etags /* Program to index source files */
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 */