1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145
|
#### Makefile for drac
## Tuneables
# Paths
DESTDIR =
INSTALL = install
EBIN = /usr/sbin
COURIER_BIN = /usr/lib/courier/authlib
MAN = /usr/share/man/man
# OS-Dependant settings
# Choose one of this pair...
# -DTI_RPC # Transport-independant RPC
# -DSOCK_RPC # Socket RPC
# Choose one of this pair...
# -DFCNTL_LOCK # fcntl() locking
# -DFLOCK_LOCK # flock() locking
# Choose one of this pair...
# -DSYSINFO # hostname from sysinfo()
# -DGETHOST # hostname from gethostname()
# If rpcgen -C is specified below...
# -DDASH_C # ANSI-C mode
# Settings for postfix and exim
# Do not set these for sendmail
# -DREQ_HASH # requires hash format
# -DCIDR_KEY # keys in CIDR format
# -DTERM_KD # keys and data nul-terminated
DEFS = -DSOCK_RPC -DFCNTL_LOCK -DGETHOST -DDASH_C
# Compiler flags
CC = gcc
RANLIB = :
CFLAGS = $(DEFS) -g -O2 -fPIC
#CFLAGS = $(DEFS) -g -I/usr/local/src/db/db-2.4.14/Unix
#CFLAGS = $(DEFS) -g -I/usr/local/src/db/db.1.85/PORT/sunos.5.2/include
LDLIBS = -ldb
#LDLIBS = -L/usr/local/src/db/db-2.4.14/Unix -lnsl -ldb
#LDLIBS = -L/usr/local/src/db/db.1.85/PORT/sunos.5.2 -lnsl -ldb
TSTLIBS = -L. -ldrac
RPCGENFLAGS = -C -I
#RPCGENFLAGS = -C
COURIERLIBS = -L. -ldrac
# Man sections
MANLIB = 3
MANADM = 8
## Nothing to change after this point
# Package files
DOCFILES = COPYRIGHT Changes INSTALL PORTING README version.h dracauth.3 \
rpc.dracd.1m dracd.allow-sample dracd-setup dracd-setup.linux
MAKEFILE = Makefile
RPC_SRC = drac.x
LIB_SRC = dracauth.c
SVC_SRC = rpc.dracd.c
TST_SRC = testing.c
TST6_SRC = testing6.c
COURIER_SRC = courier-authdrac.c
PACKAGE = $(DOCFILES) $(MAKEFILE) $(RPC_SRC) $(LIB_SRC) $(SVC_SRC) $(TST_SRC) $(COURIER_SRC)
# Final targets
CLIENT = testing
CLIENT6 = testing6
SERVER = rpc.dracd
LIBRAR = libdrac.a
COURIER = authdrac
# rpcgen output
RPC_H = drac.h
RPC_XDR = drac_xdr.c
RPC_SVC = drac_svc.c
RPC_CLNT = drac_clnt.c
RPC_ALL = $(RPC_H) $(RPC_XDR) $(RPC_SVC) $(RPC_CLNT)
# Object files
LIB_OBJ = dracauth.o
SVC_OBJ = rpc.dracd.o
TST_OBJ = testing.o
TST6_OBJ = testing6.o
H_OBJS = drac_xdr.o drac_svc.o drac_clnt.o $(SVC_OBJ) $(LIB_OBJ)
L_OBJS = $(LIB_OBJ) drac_xdr.o drac_clnt.o
S_OBJS = $(SVC_OBJ) drac_xdr.o drac_svc.o
COURIER_OBJ = courier-authdrac.o
# Rules
all: $(CLIENT) $(CLIENT6) $(SERVER) $(COURIER)
$(RPC_ALL): $(RPC_SRC)
rpcgen $(RPCGENFLAGS) $(RPC_SRC)
$(H_OBJS): $(RPC_H)
$(LIB_OBJ) $(SVC_OBJ): $(MAKEFILE)
$(LIBRAR): $(L_OBJS)
rm -f $@
ar cq $@ $(L_OBJS)
$(RANLIB) $@
$(CLIENT): $(TST_OBJ) $(LIBRAR)
$(CC) -o $(CLIENT) $(TST_OBJ) $(TSTLIBS)
$(CLIENT6): $(TST6_OBJ) $(LIBRAR)
$(CC) -o $(CLIENT6) $(TST6_OBJ) $(TSTLIBS)
$(SERVER): $(S_OBJS)
$(CC) -o $(SERVER) $(S_OBJS) $(LDLIBS)
$(COURIER): $(COURIER_OBJ) $(LIBRAR)
$(CC) -o $(COURIER) $(COURIER_OBJ) $(COURIERLIBS)
clean:
rm -f core $(RPC_ALL) $(H_OBJS) \
$(TST_OBJ) $(TST6_OBJ) \
$(CLIENT) $(CLIENT6) \
$(COURIER) $(COURIER_OBJ) \
$(SERVER) $(LIBRAR)
tar: $(PACKAGE)
tar cf drac.tar $(PACKAGE)
install: $(SERVER)
$(INSTALL) -c -o bin -g bin -m 0755 $(SERVER) $(DESTDIR)$(EBIN)
$(INSTALL) -c -o bin -g bin -m 0755 $(COURIER) $(DESTDIR)$(COURIER_BIN)
install-man: $(SERVER).1m dracauth.3
$(INSTALL) -c -m 0444 $(SERVER).1m $(MAN)$(MANADM)/$(SERVER).$(MANADM)
$(INSTALL) -c -m 0444 dracauth.3 $(MAN)$(MANLIB)/dracauth.$(MANLIB)
|