[BACK]Return to bsd.dep.mk CVS log [TXT][DIR] Up to [local] / src / share / mk

Annotation of src/share/mk/bsd.dep.mk, Revision 1.22

1.22    ! espie       1: #      $OpenBSD: bsd.dep.mk,v 1.21 2017/07/09 14:04:50 espie Exp $
1.3       mickey      2: #      $NetBSD: bsd.dep.mk,v 1.12 1995/09/27 01:15:09 christos Exp $
1.1       deraadt     3:
                      4: .if !target(depend)
1.16      espie       5: depend:
                      6:        @:
                      7: .endif
                      8:
                      9: # relies on DEPS defined by bsd.lib.mk and bsd.prog.mk
                     10: .if defined(DEPS) && !empty(DEPS)
1.20      espie      11: # catch22: don't include potentially bogus files we are going to clean
                     12: .  if !(make(clean) || make(cleandir) || make(obj))
                     13: .    for o in ${DEPS}
                     14:        sinclude $o
                     15: .    endfor
                     16: .  endif
1.1       deraadt    17: .endif
                     18:
1.16      espie      19: CFLAGS += -MD -MP
                     20: CXXFLAGS += -MD -MP
                     21:
                     22: # libraries need some special love
1.17      espie      23: DFLAGS = -MD -MP -MT $*.o -MT $*.po -MT $*.so -MT $*.do
1.16      espie      24:
1.1       deraadt    25: .if !target(tags)
1.5       espie      26: .  if defined(SRCS)
1.1       deraadt    27: tags: ${SRCS} _SUBDIRUSE
1.13      anton      28:        -cd ${.CURDIR}; ${CTAGS} -f /dev/stdout -d ${.ALLSRC:N*.h} | \
1.1       deraadt    29:            sed "s;\${.CURDIR}/;;" > tags
1.5       espie      30: .  else
1.1       deraadt    31: tags:
1.5       espie      32: .  endif
1.1       deraadt    33: .endif
                     34:
1.18      espie      35: # explicitly tag most source files
                     36: .for i in ${SRCS:N*.[hyl]:N*.sh} ${_LEXINTM} ${_YACCINTM}
1.19      espie      37: # assume libraries
                     38: ${i:R:S/$/.o/} ${i:R:S/$/.po/} ${i:R:S/$/.so/} ${i:R:S/$/.do/}: $i
1.18      espie      39: .endfor
1.21      espie      40:
                     41: # give us better rules for yacc
                     42:
                     43: .if ${YFLAGS:M-d}
                     44: # loop may not trigger
                     45: .  for f in ${SRCS:M*.y}
                     46: ${f:.y=.c} ${f:.y=.h}: $f
                     47:        ${YACC.y} -o ${f:.y=.c} ${.IMPSRC}
                     48: .  endfor
                     49: CLEANFILES += ${SRCS:M*.y:.y=.h}
                     50: .endif
1.15      espie      51:
1.22    ! espie      52: .if defined(SRCS)
        !            53: cleandir: cleandepend
        !            54: cleandepend:
        !            55:        rm -f ${.CURDIR}/tags
        !            56: .endif
        !            57:
1.16      espie      58: CLEANFILES += ${DEPS} .depend
1.19      espie      59:
1.15      espie      60: BUILDFIRST ?=
                     61: BUILDAFTER ?=
1.19      espie      62: .if !empty(BUILDAFTER)
                     63: .  for i in ${BUILDFIRST} ${_LEXINTM} ${_YACCINTM}
                     64: .    if !exists($i)
                     65: ${BUILDAFTER}: $i
                     66: .    endif
                     67: .  endfor
1.1       deraadt    68: .endif
1.22    ! espie      69: .PHONY: cleandepend