|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: M T
Length: 12487 (0x30c7) Types: TextFile Names: »Makefile«
└─⟦9ae75bfbd⟧ Bits:30007242 EUUGD3: Starter Kit └─⟦2fafebccf⟧ »EurOpenD3/mail/smail3.1.19.tar.Z« └─⟦bcd2bc73f⟧ └─⟦this⟧ »src/Makefile«
#!/bin/make -f # @(#)Makefile 3.77 3/25/89 15:48:16 # Makefile for the smail program # # Copyright (C) 1987, 1988 Ronald S. Karr and Landon Curt Noll # # See the file COPYING, distributed with smail, for restriction # and warranty information. SHELL=/bin/sh MAKE=make GET=sccs get AR=ar LINT=lint CC=cc CLEAN=sccs clean MK=${MAKE} -${MAKEFLAGS} SRC_PREFIX= MKDEPEND=${ROOT}/conf/lib/mkdepend.sh MKVERSION=${ROOT}/conf/lib/mkversion.sh MKDEFS=${ROOT}/conf/lib/mkdefs.sh MKDIRS=${ROOT}/conf/lib/mkdirs.sh CHECKDEFS=${ROOT}/conf/lib/checkdefs.sh INST=${ROOT}/conf/lib/inst.sh INSTM=${ROOT}/conf/lib/instm.sh DEFS_SH=defs.sh DEFS_H=defs.h DEFS_SED=defs.sed VERSION_SH=version.sh VERSION_H=version.h VERSION_SED=version.sed CFLAGS=$$CFLAGS LIBS=$$LIBS ROOT=.. CSRC=addr.c alloc.c ascii.c config.c copyright.c default.c direct.c expand.c \ field.c hash.c header.c log.c lookup.c main.c modes.c notify.c parse.c \ pathto.c pwcache.c qualify.c queue.c resolve.c route.c smailconf.c \ smtprecv.c spool.c string.c sysdep.c transport.c verify.c version.c LASTSRC=silly.c HSRC=addr.h alloc.h child.h config.h debug.h direct.h dys.h error.h \ exitcodes.h extern.h field.h hash.h lookup.h log.h main.h parse.h \ route.h smail.h smailconf.h spool.h transport.h MISCSRC=Makefile mkdriv.awk COPYING SHSRC=mkdrivtab.sh bump_cnt.sh SRC=${CSRC} ${HSRC} ${SHSRC} ${MISCSRC} ${LASTSRC} FIRSTOBJ=copyright.o OBJ=addr.o alloc.o ascii.o config.o default.o direct.o drivertab.o expand.o \ field.o hash.o header.o log.o lookup.o main.o modes.o notify.o parse.o \ pathto.o pwcache.o qualify.o queue.o resolve.o route.o smailconf.o \ smtprecv.o spool.o string.o sysdep.o transport.o verify.o version.o LASTOBJ=silly.o STANDOBJ=stand_hash.o stand_silly.o STAND=addr field aliasfield hash spool header log silly smailconf DRIVLIBS=directors/ddrivlib.a routers/rdrivlib.a transports/tdrivlib.a DIRECTORS_HSRC=aliasfile.h fwdfile.h include.h smartuser.h user.h DIRECTORS_CSRC=aliasfile.c fwdfile.c include.c smartuser.c user.c DIRECTORS_SRC=${DIRECTORS_HSRC} ${DIRECTORS_CSRC} ROUTERS_HSRC=bind.h rtlib.h gethost.h pathalias.h smarthost.h uuname.h \ queryprog.h ROUTERS_CSRC=bind.c rtlib.c gethost.c pathalias.c smarthost.c uuname.c \ queryprog.c ROUTERS_SRC=${ROUTERS_HSRC} ${ROUTERS_CSRC} TRANSPORTS_HSRC=appendfile.h pipe.h tcpsmtp.h smtplib.h TRANSPORTS_CSRC=appendfile.c pipe.c tcpsmtp.c smtplib.c TRANSPORTS_SRC=${TRANSPORTS_HSRC} ${TRANSPORTS_CSRC} COMPAT_LIB_DIR=${ROOT}/compat COMPAT_LIB=${COMPAT_LIB_DIR}/compat.a # Smail will be copied to BIN_DIR with links for all of these names BIN_NAMES=smail mailq pathto optto uupath runq rsmtp smtpd .c.o: . ./${DEFS_SH}; ${CC} ${CFLAGS} -c $*.c all: ddrivlib rdrivlib tdrivlib smail smail: ${DEFS_SH} ${FIRSTOBJ} ${OBJ} ${DRIVLIBS} ${LASTOBJ} ${COMPAT_LIB} \ bump_cnt.sh . ./${DEFS_SH}; sh bump_cnt.sh . ./${DEFS_SH}; ${CC} ${CFLAGS} -c ldinfo.c . ./${DEFS_SH}; ${CC} ${CFLAGS} -o smail ${FIRSTOBJ} \ ${OBJ} ${DRIVLIBS} ${LASTOBJ} ${COMPAT_LIB} ${LIBS} ldinfo.o ${FIRSTOBJ} ${OBJ} ${LASTOBJ}: ${DEFS_SH} ${COMPAT_LIB}: cd ${COMPAT_LIB_DIR}; ${MK} lint: drivertab.c ${CSRC} ${DEFS_SH} @. ./${DEFS_SH}; \ files="drivertab.c ${CSRC}"; \ echo "Get C files under ${SRC_PREFIX}directors ..."; \ for i in `(cd directors; ${MK} csrc)`; do \ files="$$files directors/$$i"; \ done; \ echo "Get C files under ${SRC_PREFIX}routers ..."; \ for i in `(cd routers; ${MK} csrc)`; do \ files="$$files routers/$$i"; \ done; \ echo "Get C files under ${SRC_PREFIX}transports ..."; \ for i in `(cd transports; ${MK} csrc)`; do \ files="$$files transports/$$i"; \ done; \ echo ${LINT} ${LINTFLAGS} $$files; \ ${LINT} ${LINTFLAGS} $$files ${SRC}: ${GET} $@ sources: ${SRC} @echo "Get sources under ${SRC_PREFIX}directors ..." -@cd directors; for i in ${DIRECTORS_SRC}; do \ if [ ! -f $$i ]; then \ echo ${GET} $$i; ${GET} $$i; \ ${GET} $$i; ${GET} $$i; \ fi; \ done @echo "Get sources under ${SRC_PREFIX}routers ..." -@cd routers; for i in ${ROUTERS_SRC}; do \ if [ ! -f $$i ]; then \ echo ${GET} $$i; ${GET} $$i; \ ${GET} $$i; ${GET} $$i; \ fi; \ done @echo "Get sources under ${SRC_PREFIX}transports ..." -@cd transports; for i in ${TRANSPORTS_SRC}; do \ if [ ! -f $$i ]; then \ echo ${GET} $$i; ${GET} $$i; \ ${GET} $$i; ${GET} $$i; \ fi; \ done ${DEFS_H} ${DEFS_SH} ${DEFS_SED}: ROOT=${ROOT} sh ${MKDEFS} ${VERSION_H} ${VERSION_SH} ${VERSION_SED}: ROOT=${ROOT} sh ${MKVERSION} names: @for i in ${SRC}; do echo ${SRC_PREFIX}$$i; done @for i in ${DIRECTORS_SRC}; do echo ${SRC_PREFIX}directors/$$i; done @for i in ${ROUTERS_SRC}; do echo ${SRC_PREFIX}routers/$$i; done @for i in ${TRANSPORTS_SRC}; do echo ${SRC_PREFIX}transports/$$i; done ddrivlib: ${HSRC} ${DEFS_H} directors/ddrivlib.a ddrivlib: directors/Makefile @echo "Build targets under ${SRC_PREFIX}directors ..." @cd directors; ${MK} rdrivlib: ${HSRC} ${DEFS_H} routers/rdrivlib.a rdrivlib: routers/Makefile @echo "Build targets under ${SRC_PREFIX}routers ..." @cd routers; ${MK} tdrivlib: ${HSRC} ${DEFS_H} transports/tdrivlib.a tdrivlib: transports/Makefile @echo "Build targets under ${SRC_PREFIX}transports ..." @cd transports; ${MK} drivertab.c directors/Makefile transports/Makefile routers/Makefile: \ mkdrivtab.sh mkdriv.awk ${DEFS_SH} @. ./${DEFS_SH}; echo "sh mkdrivtab.sh $$DRIVER_CONFIGURATION"; \ sh mkdrivtab.sh $$DRIVER_CONFIGURATION @for i in directors routers transports; do \ echo "Building dependencies under ${SRC_PREFIX}$$i ..."; \ (cd $$i; ${MK} SRC_PREFIX=${SRC_PREFIX}$$i/ depend); \ done depend: ${SRC} check_defs subdir_depend local_depend subdir_depend: remove_driver_makefiles \ directors/Makefile routers/Makefile transports/Makefile local_depend: ${VERSION_H} . ./${DEFS_SH}; sh ${MKDEPEND} Makefile ${FIRSTSRC} ${CSRC} . ./${DEFS_SH}; echo "$$DEFS_DEPEND" >> Makefile; \ echo "drivertab.c: $$DRIVER_CONFIGURATION" >> Makefile; \ echo "directors/Makefile: $$DRIVER_CONFIGURATION" >> Makefile; \ echo "routers/Makefile: $$DRIVER_CONFIGURATION" >> Makefile; \ echo "transports/Makefile: $$DRIVER_CONFIGURATION" >> Makefile; \ echo chmod -w Makefile; \ chmod -w Makefile check_defs: ROOT=${ROOT} ${SHELL} ${CHECKDEFS} remove_driver_makefiles: rm -f directors/Makefile routers/Makefile transports/Makefile clean: rm -f ${DEFS_SH} ${DEFS_H} ${DEFS_SED} rm -f ${VERSION_SH} ${VERSION_H} ${VERSION_SED} rm -f ${FIRSTOBJ} ${OBJ} ${LASTOBJ} ${STANDOBJ} core ldinfo.o -@for i in directors routers transports; do \ if [ -f $$i/Makefile ]; then \ echo "Clean under ${SRC_PREFIX}$$i ..."; \ (cd $$i; ${MK} SRC_PREFIX=${SRC_PREFIX}$$i/ clean); \ else \ echo "Ignoring ${SRC_PREFIX}$$i -- no Makefile"; \ fi; \ done clobber: rm -f ${DEFS_SH} ${DEFS_H} ${DEFS_SED} rm -f ${VERSION_SH} ${VERSION_H} ${VERSION_SED} rm -f ${FIRSTOBJ} ${OBJ} ${LASTOBJ} ${STANDOBJ} core ldinfo.o rm -f smail ${STAND} rm -f drivertab.c rm -f .${DEFS_SH} .${DEFS_H} .${DEFS_SED} .Makefile -@for i in directors routers transports; do \ if [ -f $$i/Makefile ]; then \ echo "Clobber under ${SRC_PREFIX}$$i ..."; \ (cd $$i; ${MK} SRC_PREFIX=${SRC_PREFIX}$$i/ clobber); \ else \ echo "Ignoring ${SRC_PREFIX}$$i -- no Makefile"; \ fi; \ done nuke: rm -f ${DEFS_SH} ${DEFS_H} ${DEFS_SED} rm -f ${VERSION_SH} ${VERSION_H} ${VERSION_SED} rm -f ${FIRSTOBJ} ${OBJ} ${LASTOBJ} core ldinfo.o rm -f smail ${STAND} rm -f drivertab.c rm -f .${DEFS_SH} .${DEFS_H} .${DEFS_SED} .Makefile -${CLEAN} -${GET} Makefile -@for i in directors routers transports; do \ if [ -f $$i/Makefile ]; then \ echo "Nuke under ${SRC_PREFIX}$$i ..."; \ (cd $$i; ${MK} SRC_PREFIX=${SRC_PREFIX}$$i/ nuke); \ else \ echo "No Makefile -- nuke ${SRC_PREFIX}$$i from above ..."; \ (cd $$i; ${CLEAN}); \ fi; \ done install: ${DEFS_SH} all install-dirs install-bins install-libs install-bins: @. ./${DEFS_SH} ;\ case "$$DONT_INSTALL" in \ ?*) echo Testing ... install-bins ignored; exit 0;; \ esac; \ l_flag=; \ case "$$USE_SYMLINKS" in \ ?*) l_flag=-l;; \ esac; \ s_flag=; \ case "$$STRIP" in \ ?*) s_flag=-s;; \ esac; \ echo ${SHELL} ${INST} $$s_flag $$l_flag -u root -m 4555 \ -d $$SMAIL_BIN_DIR \ smail ${BIN_NAMES} $$OTHER_SMAIL_NAMES; \ ${SHELL} ${INST} $$s_flag $$l_flag -u root -m 4555 \ -d $$SMAIL_BIN_DIR \ smail ${BIN_NAMES} $$OTHER_SMAIL_NAMES install-libs: @. ./${DEFS_SH}; \ case "$$DONT_INSTALL" in \ ?*) echo Testing ... install-libs ignored; exit 0;; \ esac; \ echo ${SHELL} ${INSTM} -m 0555 $$LIB_DIR COPYING; \ ${SHELL} ${INSTM} -m 0555 $$LIB_DIR COPYING install-dirs: @. ./${DEFS_SH}; \ case "$$DONT_INSTALL" in \ ?*) echo Testing ... install-dirs ignored; exit 0;; \ esac; \ echo ${SHELL} ${MKDIRS} -m 0755 $$LIB_DIR $$LIB_DIR/methods \ $$SMAIL_BIN_DIR; \ ${SHELL} ${MKDIRS} -m 0755 $$LIB_DIR $$LIB_DIR/methods \ $$SMAIL_BIN_DIR # build standalone versions to test various subsystems # # NOTE: these are not checked on a regular basis and are thus not # guarranteed to be compilable. Some of these rules also leave # object files which are not suitable for loading into the final # smail binary and thus must be removed. # # stand_silly.o is loaded as the last module to overcome some # gdb problems on one of our testing machines stand_silly.o: silly.c @-rm -f stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -c \ -DSTANDALONE -DHASH_STANDALONE silly.c mv silly.o stand_silly.o hash: stand_hash.o ascii.o stand_silly.o @rm -f hash.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -o hash \ stand_hash.o ascii.o stand_silly.o @rm -f hash.o stand_hash.o: hash.c hash.h exitcodes.h @-rm -f stand_hash.o . ./${DEFS_SH}; \ ${CC} ${CFLAGS} -DSTANDALONE -DETHEREAL_HASHDATA hash.c -c mv hash.o stand_hash.o linthash: . ./${DEFS_SH}; ${LINT} -DSTANDALONE hash.c silly: silly.c @rm -f silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE silly.c -o silly @rm -f silly.o field: field.c compat.h config.h extern.h addr.h field.h dys.h smail.h \ debug.h exitcodes.h string.o alloc.o qualify.o addr.o \ stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -o field \ field.c string.o qualify.o alloc.o addr.o stand_silly.o aliasfield: field.c compat.h config.h extern.h addr.h field.h dys.h smail.h \ debug.h exitcodes.h string.o qualify.o alloc.o addr.o \ stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -o aliasfield \ -DSTANDALONE -DNEWALIASES field.c string.o qualify.o \ alloc.o addr.o stand_silly.o lintfield: . ./${DEFS_SH}; ${LINT} -DSTANDALONE field.c addr: addr.c compat.h config.h extern.h addr.h dys.h smail.h debug.h \ exitcodes.h string.o alloc.o stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -o addr \ addr.c string.o alloc.o stand_silly.o lintaddr: . ./${DEFS_SH}; ${LINT} -DSTANDALONE addr.c log: log.c compat.h config.h extern.h smail.h exitcodes.h \ string.o alloc.o stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -o log \ log.c string.o alloc.o stand_silly.o lintlog: . ./${DEFS_SH}; ${LINT} -DSTANDALONE log.c header: header.c compat.h config.h extern.h addr.h dys.h field.h smail.h \ debug.h exitcodes.h log.o field.o string.o sysdep.o alloc.o \ qualify.o stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -o header \ header.c log.o field.o misc.o qualify.o stand_silly.o lintheader: . ./${DEFS_SH}; ${LINT} -DSTANDALONE header.c spool: spool.c compat.h config.h extern.h addr.h dys.h field.h smail.h \ debug.h exitcodes.h header.o log.o field.o string.o sysdep.o \ alloc.o addr.o config.o qualify.o stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -o spool \ spool.c header.o log.o field.o string.o sysdep.o alloc.o \ config.o qualify.o addr.o stand_silly.o lintspool: . ./${DEFS_SH}; ${LINT} -DSTANDALONE spool.c smailconf: ssmailconf.o parse.o string.o alloc.o config.o stand_silly.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -o smailconf \ ssmailconf.o string.o parse.o alloc.o config.o stand_silly.o ssmailconf.o: smailconf.c @rm -f smailconf.o . ./${DEFS_SH}; ${CC} ${CFLAGS} -DSTANDALONE -c smailconf.c mv smailconf.o ssmailconf.o # special dependency: version.o: version.h # DO NOT REMOVE THIS LINE, OR "make depend" WILL NOT WORK