xref: /openbsd-src/share/mk/bsd.dep.mk (revision f2da64fbbbf1b03f09f390ab01267c93dfd77c4c)
1#	$OpenBSD: bsd.dep.mk,v 1.12 2016/09/04 00:34:29 patrick Exp $
2#	$NetBSD: bsd.dep.mk,v 1.12 1995/09/27 01:15:09 christos Exp $
3
4# some of the rules involve .h sources, so remove them from mkdep line
5.if !target(depend)
6depend: beforedepend .depend realdepend afterdepend
7.ORDER: beforedepend .depend realdepend afterdepend
8realdepend: _SUBDIRUSE
9
10.  if defined(SRCS) && !empty(SRCS)
11.depend: ${SRCS} ${_LEXINTM} ${_YACCINTM}
12	@rm -f .depend
13	@files="${.ALLSRC:M*.s} ${.ALLSRC:M*.S}"; \
14	if [ "$$files" != " " ]; then \
15	  echo mkdep -a ${MKDEP} ${CFLAGS:M-[ID]*} ${CPPFLAGS} ${AINC} $$files;\
16	  mkdep -a ${MKDEP} ${CFLAGS:M-[ID]*} ${CPPFLAGS} ${AINC} $$files; \
17	fi
18	@files="${.ALLSRC:M*.c}"; \
19	if [ "$$files" != "" ]; then \
20	  echo mkdep -a ${MKDEP} ${CFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \
21	  mkdep -a ${MKDEP} ${CFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \
22	fi
23	@files="${.ALLSRC:M*.cc} ${.ALLSRC:M*.C} ${.ALLSRC:M*.cpp}"; \
24	files="$$files ${.ALLSRC:M*.cxx}"; \
25	if [ "$$files" != "   " ]; then \
26	  echo mkdep -a ${MKDEP} ${CXXFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \
27	  mkdep -a ${MKDEP} ${CXXFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \
28	fi
29.  else
30.depend:
31.  endif
32.  if !target(beforedepend)
33beforedepend:
34.  endif
35.  if !target(afterdepend)
36afterdepend:
37.  endif
38.endif
39
40.if !target(tags)
41.  if defined(SRCS)
42tags: ${SRCS} _SUBDIRUSE
43	-cd ${.CURDIR}; ${CTAGS} -f /dev/stdout -d -t ${.ALLSRC:N*.h} | \
44	    sed "s;\${.CURDIR}/;;" > tags
45.  else
46tags:
47.  endif
48.endif
49
50.if defined(SRCS)
51cleandir: cleandepend
52cleandepend:
53	rm -f .depend ${.CURDIR}/tags
54.endif
55
56.PHONY: beforedepend depend afterdepend cleandepend realdepend
57