David Chisnall <thera...@freebsd.org> writes: > Log: > On platforms where clang is the default compiler, don't build gcc or > libstdc++.
This uncovers what I think is a bug in bsd.prog.mk: des@ds4 /usr/src/usr.bin% make ===> alias (all) ===> apply (all) ===> ar (all) ===> asa (all) ===> at (all) ===> atf (all) ===> atf/atf-config (all) make[2]: /usr/obj/usr/src/usr.bin/atf/atf-config/.depend, 111: ignoring stale .depend for /usr/obj/usr/src/tmp/usr/lib/libstdc++.a c++ -O2 -pipe -march=native -DGDB=\"gdb\" -DHAVE_CONFIG_H -I/usr/src/usr.bin/atf/atf-config/../../../contrib/atf -g -Qunused-arguments -fstack-protector -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wpointer-arith -Wno-uninitialized -Wno-empty-body -Wno-string-plus-int -Wno-tautological-compare -Wno-unused-value -Wno-parentheses-equality -Wno-unused-function -Wno-conversion -Wno-c++11-extensions -g -o atf-config atf-config.o -latf-c++ -latf-c des@ds4 /usr/src/usr.bin% grep libstdc /usr/obj/usr/src/usr.bin/atf/atf-config/.depend atf-config: /usr/obj/usr/src/tmp/usr/lib/libstdc++.a des@ds4 /usr/src/usr.bin% stat /usr/obj/usr/src/tmp/usr/lib/libstdc++.a stat: /usr/obj/usr/src/tmp/usr/lib/libstdc++.a: stat: No such file or directory That line was added by bsd.prog.mk: .if defined(PROG_CXX) .if !empty(CXXFLAGS:M-stdlib=libc++) echo ${PROG}: ${LIBCPLUSPLUS} >> ${DEPENDFILE} .else echo ${PROG}: ${LIBSTDCPLUSPLUS} >> ${DEPENDFILE} .endif .endif AFAICT, this logic should be inverted on platforms where clang is the default compiler - perhaps like this: Index: share/mk/bsd.prog.mk =================================================================== --- share/mk/bsd.prog.mk (revision 255393) +++ share/mk/bsd.prog.mk (working copy) @@ -173,7 +173,7 @@ .else echo ${PROG}: ${LIBC} ${DPADD} >> ${DEPENDFILE} .if defined(PROG_CXX) -.if !empty(CXXFLAGS:M-stdlib=libc++) +.if ${MK_CLANG_IS_CC} != "no" || !empty(CXXFLAGS:M-stdlib=libc++) echo ${PROG}: ${LIBCPLUSPLUS} >> ${DEPENDFILE} .else echo ${PROG}: ${LIBSTDCPLUSPLUS} >> ${DEPENDFILE} although this misses the case where CLANG_IS_CC but we still want the old libstdc++ - is that even possible? DES -- Dag-Erling Smørgrav - d...@des.no _______________________________________________ svn-src-head@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"