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 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166
|
#
#ident "@(#)smail/compat:RELEASE-3_2_0_115:Makefile,v 1.23 2003/06/18 07:03:37 woods Exp"
#
# Makefile for the smail compat library.
#
# Copyright (C) 1987, 1988 Ronald S. Karr and Landon Curt Noll
# Copyright (C) 1992 Ronald S. Karr
#
# See the file COPYING, distributed with smail, for restriction
# and warranty information.
SHELL=/bin/sh
AR=ar
LINT=lint
MKDEPEND=${ROOT}/conf/lib/mkdepend.sh
MKDEFS=${ROOT}/conf/lib/mkdefs.sh
CHECKDEFS=${ROOT}/conf/lib/checkdefs.sh
XEXEC=${SHELL} ${ROOT}/conf/lib/xexec.sh
DEFS_SH=defs.sh
DEFS_H=defs.h
DEFS_SED=defs.sed
ROOT=..
DUMMY_OBJ=dummy.o
DUMMY_CSRC=dummy.c
SIGNAME_OBJ=signame.o
SIGNAME_CSRC=signame.c
SYS5_STRLIB=_str2set.o strpbrk.o strspn.o strcspn.o
STRLIB_DIR=${ROOT}/pd/strlib
GETOPT_OBJ=get_opt.o
GETOPT_DIR=${ROOT}/pd/getopt
COMPAT_LIB=libcompat.a
.c.o:
@. ./${DEFS_SH}; ${XEXEC} $$CC $$CFLAGS -I${ROOT}/src $$INCLUDES -c $*.c
all: ${COMPAT_LIB}
# NOTE: even though this target's rules use ${MAKE}, it should not
# depend on .MAKE. Splitting this out would mandate "make depend"
#
# Versions of 'make' that always execute rules containing "${MAKE}"
# will end up running 'ar' and 'ranlib', but usually with no harmful
# side effects.
#
${COMPAT_LIB}: Makefile ${DEFS_SH} ${DUMMY_OBJ}
@. ./${DEFS_SH}; \
case "$$HAVE_SYS5_STRLIB" in \
'') if [ -f ${STRLIB_DIR}/.depend ] ; then \
DEPMKFILE="-f Makefile -f .depend"; \
else DEPMKFILE=""; fi; \
echo " cd ${STRLIB_DIR} && ${MAKE} $$DEPMKFILE ${SYS5_STRLIB}"; \
(cd ${STRLIB_DIR} && ${MAKE} $$DEPMKFILE ${SYS5_STRLIB}); \
rc=$$?; \
if [ $$rc -ne 0 ] ; then \
exit $$rc; \
fi; \
for i in ${SYS5_STRLIB}; do \
${XEXEC} ${AR} rc ${COMPAT_LIB} ${STRLIB_DIR}/$$i; \
done;; \
esac; \
case "$$HAVE_GETOPT" in \
'') if [ -f ${GETOPT_DIR}/.depend ] ; then \
DEPMKFILE="-f Makefile -f .depend"; \
else DEPMKFILE=""; fi; \
echo " cd ${GETOPT_DIR} && ${MAKE} $$DEPMKFILE ${GETOPT_OBJ}"; \
(cd ${GETOPT_DIR} && ${MAKE} $$DEPMKFILE ${GETOPT_OBJ}); \
rc=$$?; \
if [ $$rc -ne 0 ] ; then \
exit $$rc; \
fi; \
for i in ${GETOPT_OBJ}; do \
${XEXEC} ${AR} rc ${COMPAT_LIB} ${GETOPT_DIR}/$$i; \
done;; \
esac; \
case "$$HAVE_SYS_SIGNAME/$$HAVE_SIG2STR" in \
'/') if [ -f .depend ] ; then \
DEPMKFILE="-f Makefile -f .depend"; \
else DEPMKFILE=""; fi; \
echo " ${MAKE} $$DEPMKFILE ${SIGNAME_OBJ}"; \
${MAKE} $$DEPMKFILE ${SIGNAME_OBJ}; \
rc=$$?; \
if [ $$rc -ne 0 ] ; then \
exit $$rc; \
fi; \
for i in ${SIGNAME_OBJ}; do \
${XEXEC} ${AR} rc ${COMPAT_LIB} $$i; \
done;; \
esac; \
${XEXEC} ${AR} rc ${COMPAT_LIB} ${DUMMY_OBJ}; \
${XEXEC} $$RANLIB ${COMPAT_LIB}
${SIGNAME_OBJ}: ${DEFS_SH} ${SIGNAME_CSRC} Makefile
${SIGNAME_CSRC}: mksigname.sh siglist.in ${DEFS_SH} Makefile
@rm -f ${SIGNAME_CSRC}
@. ./${DEFS_SH}; \
${XEXEC} ${SHELL} mksigname.sh siglist.in ${SIGNAME_CSRC}
mkdefs ${DEFS_SH} ${DEFS_H} ${DEFS_SED}: ${ROOT}/conf/EDITME
ROOT=${ROOT} ${SHELL} ${MKDEFS}
${ROOT}/conf/EDITME: .MAKE # cannot depend on anything else!
cd ${ROOT}/conf && ${MAKE} EDITME
# XXX note that we don't go off to 'make depend' for STRLIB_DIR, nor
# for GETOPT_DIR Those should be created by the initial "make depend"
# done from the top level.
#
depend: check_defs
@rm -f .depend
@. ./${DEFS_SH}; \
files="dummy.c"; \
case "$$HAVE_SYS_SIGNAME/$$HAVE_SIG2STR" in \
'/') \
${XEXEC} ${MAKE} ${SIGNAME_CSRC}; \
files="$$files ${SIGNAME_CSRC}";; \
esac; \
${XEXEC} ${SHELL} ${MKDEPEND} $$CPPFLAGS $$INCLUDES $$files
@. ./${DEFS_SH}; \
case "$$HAVE_SYS5_STRLIB" in \
'') \
for i in ${SYS5_STRLIB}; do \
echo " echo \"${COMPAT_LIB}: $$i\" >> .depend"; \
echo "${COMPAT_LIB}: $$i" >> .depend; \
done;; \
esac; \
case "$$HAVE_GETOPT" in \
'') \
for i in ${GETOPT_OBJ}; do \
echo " echo \"${COMPAT_LIB}: $$i\" >> .depend"; \
echo "${COMPAT_LIB}: $$i" >> .depend; \
done;; \
esac; \
case "$$HAVE_SYS_SIGNAME/$$HAVE_SIG2STR" in \
'/') \
for i in ${SIGNAME_OBJ}; do \
echo " echo \"${COMPAT_LIB}: $$i\" >> .depend"; \
echo "${COMPAT_LIB}: $$i" >> .depend; \
done;; \
esac
@. ./${DEFS_SH}; \
echo "$$DEFS_DEPEND" >> .depend
check_defs:
SHELL=${SHELL} ROOT=${ROOT} ${SHELL} ${CHECKDEFS}
install:
clean:
rm -f .${DEFS_SH} .${DEFS_H} .${DEFS_SED}
rm -f ${DUMMY_OBJ} ${SYS5_STRLIB} ${GETOPT_OBJ} ${BSTRING}
rm -f ${SIGNAME_OBJ} ${SIGNAME_CSRC}
rm -f a.out core
rm -f ${COMPAT_LIB}
clobber: clean
rm -f .depend
rm -f ${DEFS_SH} ${DEFS_H} ${DEFS_SED}
.MAKE:
.PHONY: all install local-install clean local-clean clobber local-clobber depend local-depend lint mkdefs check_defs tags TAGS
.PHONY: .MAKE
|