Return to bsd.dep.mk CVS log | Up to [local] / src / share / mk |
File: [local] / src / share / mk / bsd.dep.mk (download)
Revision 1.14, Sun Jun 4 12:25:19 2017 UTC (7 years ago) by espie
pass better arguments to mkdep. - some std= parameters are actually critical, -std=c++11 makes a huge difference for clang. - explicitly ask mkdep to run the C++ compiler for C++ code, as again, some compilers will see the difference. (this should allow us to repair make depend under src/gnu/usr.bin/clang) okay kettenis@ |
# $OpenBSD: bsd.dep.mk,v 1.14 2017/06/04 12:25:19 espie Exp $ # $NetBSD: bsd.dep.mk,v 1.12 1995/09/27 01:15:09 christos Exp $ # some of the rules involve .h sources, so remove them from mkdep line .if !target(depend) depend: beforedepend .depend realdepend afterdepend .ORDER: beforedepend .depend realdepend afterdepend realdepend: _SUBDIRUSE . if defined(SRCS) && !empty(SRCS) .depend: ${SRCS} ${_LEXINTM} ${_YACCINTM} @rm -f .depend @files="${.ALLSRC:M*.s} ${.ALLSRC:M*.S}"; \ if [ "$$files" != " " ]; then \ echo mkdep -a ${MKDEP} ${CFLAGS:M-std=*} ${CFLAGS:M-[ID]*} ${CPPFLAGS} ${AINC} $$files;\ mkdep -a ${MKDEP} ${CFLAGS:M-std=*} ${CFLAGS:M-[ID]*} ${CPPFLAGS} ${AINC} $$files; \ fi @files="${.ALLSRC:M*.c}"; \ if [ "$$files" != "" ]; then \ echo mkdep -a ${MKDEP} ${CFLAGS:M-std=*} ${CFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \ mkdep -a ${MKDEP} ${CFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \ fi @files="${.ALLSRC:M*.cc} ${.ALLSRC:M*.C} ${.ALLSRC:M*.cpp}"; \ files="$$files ${.ALLSRC:M*.cxx}"; \ if [ "$$files" != " " ]; then \ echo CC=${CXX:Q} mkdep -a ${MKDEP} ${CXXFLAGS:M-std=*} ${CXXFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \ CC=${CXX:Q} mkdep -a ${MKDEP} ${CXXFLAGS:M-std=*} ${CXXFLAGS:M-[ID]*} ${CPPFLAGS} $$files; \ fi . else .depend: . endif . if !target(beforedepend) beforedepend: . endif . if !target(afterdepend) afterdepend: . endif .endif .if !target(tags) . if defined(SRCS) tags: ${SRCS} _SUBDIRUSE -cd ${.CURDIR}; ${CTAGS} -f /dev/stdout -d ${.ALLSRC:N*.h} | \ sed "s;\${.CURDIR}/;;" > tags . else tags: . endif .endif .if defined(SRCS) cleandir: cleandepend cleandepend: rm -f .depend ${.CURDIR}/tags .endif .PHONY: beforedepend depend afterdepend cleandepend realdepend