1*08b1808bSpatrick# $OpenBSD: bsd.dep.mk,v 1.25 2022/01/08 17:05:30 patrick Exp $ 288a61734Smickey# $NetBSD: bsd.dep.mk,v 1.12 1995/09/27 01:15:09 christos Exp $ 3df930be7Sderaadt 4df930be7Sderaadt.if !target(depend) 5a86afe1bSespiedepend: 6a86afe1bSespie @: 7a86afe1bSespie.endif 87168f600Sespie 9a86afe1bSespie# relies on DEPS defined by bsd.lib.mk and bsd.prog.mk 10a86afe1bSespie.if defined(DEPS) && !empty(DEPS) 118c219cffSespie# catch22: don't include potentially bogus files we are going to clean 128c219cffSespie. if !(make(clean) || make(cleandir) || make(obj)) 13a86afe1bSespie. for o in ${DEPS} 14a86afe1bSespie sinclude $o 15a86afe1bSespie. endfor 16df930be7Sderaadt. endif 178c219cffSespie.endif 18a86afe1bSespie 19a86afe1bSespieCFLAGS += -MD -MP 20a86afe1bSespieCXXFLAGS += -MD -MP 21a86afe1bSespie 22a86afe1bSespie# libraries need some special love 23749ab249SguentherDFLAGS += -MD -MP -MT $*.o -MT $*.po -MT $*.so -MT $*.do 24df930be7Sderaadt 25df930be7Sderaadt.if !target(tags) 26df930be7Sderaadt. if defined(SRCS) 27df930be7Sderaadttags: ${SRCS} _SUBDIRUSE 288671d480Santon -cd ${.CURDIR}; ${CTAGS} -f /dev/stdout -d ${.ALLSRC:N*.h} | \ 29df930be7Sderaadt sed "s;\${.CURDIR}/;;" > tags 30df930be7Sderaadt. else 31df930be7Sderaadttags: 32df930be7Sderaadt. endif 33df930be7Sderaadt.endif 34df930be7Sderaadt 359d887525Sespie# explicitly tag most source files 369d887525Sespie.for i in ${SRCS:N*.[hyl]:N*.sh} ${_LEXINTM} ${_YACCINTM} 3752a0f106Sespie# assume libraries 3852a0f106Sespie${i:R:S/$/.o/} ${i:R:S/$/.po/} ${i:R:S/$/.so/} ${i:R:S/$/.do/}: $i 399d887525Sespie.endfor 40f4b7a610Sespie 41b32aa918Sespie# give us better rules for yacc 42b32aa918Sespie 43b32aa918Sespie.if ${YFLAGS:M-d} 44b32aa918Sespie# loop may not trigger 45b32aa918Sespie. for f in ${SRCS:M*.y} 46b32aa918Sespie${f:.y=.c} ${f:.y=.h}: $f 47*08b1808bSpatrick ${YACC.y} -o ${f:.y=.c} ${.ALLSRC:M*.y} 48b32aa918Sespie. endfor 49b32aa918SespieCLEANFILES += ${SRCS:M*.y:.y=.h} 50b32aa918Sespie.endif 51b32aa918Sespie 5234ec81a5Sespie.if defined(SRCS) 5334ec81a5Sespiecleandir: cleandepend 5434ec81a5Sespiecleandepend: 5534ec81a5Sespie rm -f ${.CURDIR}/tags 5634ec81a5Sespie.endif 5734ec81a5Sespie 58d96a07ceSnaddyCLEANFILES += ${DEPS} 5952a0f106Sespie 609cf9bf88SespieBUILDFIRST ?= 619cf9bf88SespieBUILDAFTER ?= 6252a0f106Sespie.if !empty(BUILDAFTER) 6352a0f106Sespie. for i in ${BUILDFIRST} ${_LEXINTM} ${_YACCINTM} 6452a0f106Sespie. if !exists($i) 6552a0f106Sespie${BUILDAFTER}: $i 6652a0f106Sespie. endif 6752a0f106Sespie. endfor 689cf9bf88Sespie.endif 6934ec81a5Sespie.PHONY: cleandepend 70