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
|
#
#ident "@(#)smail/pd/pathalias:RELEASE-3_2_0_102:Makefile,v 1.19 1997/05/07 22:59:18 woods Exp"
#
# pathalias -- by steve bellovin, as told to peter honeyman
SHELL=/bin/sh
AR=ar
LINT=lint
SRC_PREFIX=
MKDEPEND=${ROOT}/conf/lib/mkdepend.sh
MKDEFS=${ROOT}/conf/lib/mkdefs.sh
CHECKDEFS=${ROOT}/conf/lib/checkdefs.sh
MKDIRS=${ROOT}/conf/lib/mkdirs.sh
INST=${ROOT}/conf/lib/inst.sh
INSTM=${ROOT}/conf/lib/instm.sh
XEXEC=${SHELL} ${ROOT}/conf/lib/xexec.sh
DEFS_SH=defs.sh
DEFS_H=defs.h
DEFS_SED=defs.sed
ROOT = ../..
UTILSRC = ${ROOT}/util
MAINSRC = ${ROOT}/src
INCLUDES = -I${UTILSRC} -I${MAINSRC} $$DBM_INCLUDES $$INCLUDES
CFLAGS = -DSTATIC=static $$CFLAGS
YFLAGS = -d
OBJ = addlink.o addnode.o domain.o local.o main.o mapit.o mapaux.o mem.o parse.o printit.o
HDRS = def.h config.h
CSRC = addlink.c addnode.c domain.c local.c main.c mapit.c mapaux.c mem.c printit.c
MORE_OBJ = makedb.o
MORE_CSRC = makedb.c
MISCSRC = Makefile CHANGES README
YSRC = parse.y
SRC = $(CSRC) $(HDRS) $(MISCSRC) $(YSRC) $(MORE_CSRC)
LSRC = $(CSRC) parse.c
TARGETS = pathalias makedb
COMPAT_LIB_DIR=${ROOT}/compat
COMPAT_LIB=${COMPAT_LIB_DIR}/compat.a
all: ${TARGETS}
pathalias: $(OBJ) ${COMPAT_LIB}
@. ./${DEFS_SH}; ${XEXEC} $$CC ${CFLAGS} $$LDFLAGS ${OBJ} ${GETOPT} \
-o pathalias $$LIBS $$DBM_LIB ${COMPAT_LIB}
${COMPAT_LIB}:
cd ${COMPAT_LIB_DIR}; ${MAKE}
mkdefs ${DEFS_H} ${DEFS_SH} ${DEFS_SED}: ${ROOT}/conf/EDITME
ROOT=${ROOT} ${SHELL} ${MKDEFS}
${ROOT}/conf/EDITME: # cannot depend on anything!
cd ${ROOT}/conf; ${MAKE} EDITME
.c.o:
@. ./${DEFS_SH}; ${XEXEC} $$CC ${CFLAGS} ${INCLUDES} -c $*.c
names:
@for i in ${SRC}; do echo ${SRC_PREFIX}$$i; done
${OBJ} ${MORE_OBJ}: ${DEFS_SH} ${DEFS_H}
depend local_depend: ${SRC} parse.c check_defs
@. ./${DEFS_SH}; ${XEXEC} ${SHELL} ${MKDEPEND} $$CPPFLAGS ${INCLUDES} \
Makefile ${CSRC} ${MORE_CSRC} parse.c
. ./${DEFS_SH}; echo "$$DEFS_DEPEND" >> Makefile
chmod -w Makefile
check_defs:
SHELL=${SHELL} ROOT=${ROOT} ${SHELL} ${CHECKDEFS}
install: all ${DEFS_SH}
@. ./${DEFS_SH}; \
case "$$DONT_INSTALL" in \
?*) echo Testing ... install ignored; exit 0;; \
esac; \
${XEXEC} ${SHELL} ${MKDIRS} -m 0755 $$UTIL_BIN_DIR; \
s_flag=; \
case "$$STRIP" in \
?*) s_flag=-s;;\
esac; \
${XEXEC} ${SHELL} ${INSTM} $$s_flag -m 0555 $$UTIL_BIN_DIR ${TARGETS}
parse.o: parse.c
parse.c: parse.y $(HDRS)
$(YACC) $(YFLAGS) parse.y
sed 's/y\.tab\.c/parse.c/' < y.tab.c > $@
rm -f y.tab.c
makedb: makedb.o ${DEFS_SH} ${COMPAT_LIB}
@. ./${DEFS_SH}; ${XEXEC} $$CC ${CFLAGS} $$LDFLAGS makedb.o ${GETOPT} \
-o makedb $$LIBS $$DBM_LIB ${COMPAT_LIB}
makedb.o: config.h
clean:
rm -f ${DEFS_SH} ${DEFS_H} ${DEFS_SED}
rm -f *.o y.tab.? parse.c
clobber: clean
rm -f pathalias makedb
tags: $(CSRC) $(HSRC)
ctags -w $(CSRC) $(HSRC)
TAGS: $(CSRC) $(HSRC)
etags -w $(CSRC) $(HSRC)
bundle:
@bundle ${SRC}
lint: $(LSRC)
${LINT} ${LINTFLAGS} $(CFLAGS) $(LSRC)
${LINT} ${LINTFLAGS} makedb.c
# DO NOT REMOVE THIS LINE, OR "make depend" WILL NOT WORK
|