svn commit: r255500 - in head/gnu/lib: libstdc++ libsupc++

Dimitry Andric dim at FreeBSD.org
Thu Sep 12 21:25:00 UTC 2013


Author: dim
Date: Thu Sep 12 21:24:59 2013
New Revision: 255500
URL: http://svnweb.freebsd.org/changeset/base/255500

Log:
  After r255321, clang uses libc++ by default.  This leads to a lot of
  errors when you enable WITH_GNUCXX to build libstdc++, since it will
  include C++ headers from the libc++ installation under ${WORLDTMP}, and
  those are not compatible with libstdc++ at all.
  
  To fix this, add -stdlib=libstdc++ to CXXFLAGS when building libstdc++
  (and its companion libsupc++) with clang.
  
  Approved by:	re (delphij)

Modified:
  head/gnu/lib/libstdc++/Makefile
  head/gnu/lib/libsupc++/Makefile

Modified: head/gnu/lib/libstdc++/Makefile
==============================================================================
--- head/gnu/lib/libstdc++/Makefile	Thu Sep 12 20:51:48 2013	(r255499)
+++ head/gnu/lib/libstdc++/Makefile	Thu Sep 12 21:24:59 2013	(r255500)
@@ -636,3 +636,7 @@ CLEANFILES+=	${VERSION_MAP}
 
 # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98.
 CXXFLAGS:=	${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]}
+
+.if ${COMPILER_TYPE} == "clang"
+CXXFLAGS+=	-stdlib=libstdc++
+.endif

Modified: head/gnu/lib/libsupc++/Makefile
==============================================================================
--- head/gnu/lib/libsupc++/Makefile	Thu Sep 12 20:51:48 2013	(r255499)
+++ head/gnu/lib/libsupc++/Makefile	Thu Sep 12 21:24:59 2013	(r255500)
@@ -56,3 +56,7 @@ VERSION_MAP=	${.CURDIR}/Version.map
 
 # Filter out libc++-specific flags, and -std= flags above c++98 or gnu++98.
 CXXFLAGS:=	${CXXFLAGS:N-stdlib=libc++:N-std=c++[01][13x]:N-std=gnu++[01][13x]}
+
+.if ${COMPILER_TYPE} == "clang"
+CXXFLAGS+=	-stdlib=libstdc++
+.endif


More information about the svn-src-head mailing list