Return to Makefile CVS log | Up to [local] / src / usr.bin / make |
File: [local] / src / usr.bin / make / Makefile (download)
Revision 1.47, Mon Sep 17 12:42:09 2007 UTC (16 years, 8 months ago) by espie
rewrite of the basic suffix/target parsing: use hash for suffixes. Store special targets in target hash, and use them for the parsing. Use OP_DUMMY flag to mark targets that don't really exist yet, such as interrupt and default nodes. Also, .PATHxxx is special in suffixes. Small tweaks to compat.c, so that run_commands does more stuff after the fork() (and thus no need to free things). Remove distinction between local and global jobs. |
# $OpenBSD: Makefile,v 1.47 2007/09/17 12:42:09 espie Exp $ PROG= make CFLAGS+= -I${.OBJDIR} -I${.CURDIR} HOSTCFLAGS+= -I${.OBJDIR} -I${.CURDIR} CDIAGFLAGS=-Wall -W -Wno-char-subscripts -Wstrict-prototypes -pedantic \ -Wmissing-prototypes CDEFS+=-DUSE_TIMESPEC CDEFS+=-DHAS_BOOL_H CDEFS+=-DHAS_PATHS_H CDEFS+=-DHAS_EXTENDED_GETCWD #CDEFS+=-DHAS_STATS CFLAGS+=${CDEFS} HOSTCFLAGS+=${CDEFS} SRCS= arch.c buf.c cmd_exec.c compat.c cond.c dir.c direxpand.c engine.c \ error.c for.c init.c job.c lowparse.c main.c make.c memory.c parse.c \ parsevar.c str.c stats.c suff.c targ.c timestamp.c \ var.c varmodifiers.c varname.c SRCS+= lstAddNew.c lstAppend.c lstConcat.c lstConcatDestroy.c \ lstDeQueue.c lstDestroy.c lstDupl.c lstFindFrom.c lstForEachFrom.c \ lstInsert.c lstMember.c lstRemove.c lstReplace.c lstSucc.c .PATH: ${.CURDIR}/lst.lib CLEANFILES+=generate hashconsts.h generate.o regress.o check CLEANFILES+=${LIBOBJS} libohash.a CLEANFILES+= varhashconsts.h condhashconsts.h generate.o generate beforedepend: varhashconsts.h condhashconsts.h nodehashconsts.h # may need tweaking if you add variable synonyms or change the hash function MAGICVARSLOTS=77 MAGICCONDSLOTS=65 varhashconsts.h: generate ${.OBJDIR}/generate 1 ${MAGICVARSLOTS} >${.TARGET} condhashconsts.h: generate ${.OBJDIR}/generate 2 ${MAGICCONDSLOTS} >${.TARGET} nodehashconsts.h: generate ${.OBJDIR}/generate 3 0 >${.TARGET} generate: generate.c stats.c memory.c ${HOSTCC} ${LDSTATIC} -o ${.TARGET} ${HOSTCFLAGS} ${.ALLSRC} ${LDADD} check: regress.o str.o memory.o buf.o ${CC} -o ${.TARGET} ${CFLAGS} ${.ALLSRC} ${LDADD} regress: check ${.OBJDIR}/check # kludge for people who forget to make depend var.o: varhashconsts.h cond.o: condhashconsts.h targ.o parse.o: nodehashconsts.h var.ln: varhashconsts.h cond.ln: condhashconsts.h targ.ln parse.ln: nodehashconsts.h .if make(install) SUBDIR+= PSD.doc .endif .PHONY: regress .include <bsd.prog.mk>