Disable pthread support in googletest if llvm was configured without threads.
[oota-llvm.git] / utils / unittest / UnitTestMain / Makefile
index 7b49191fd6f0594445b7ff0f4724a500065a6746..cec654f73afcc529cb5a859cf2640b6751fd8406 100644 (file)
@@ -13,7 +13,18 @@ include $(LEVEL)/Makefile.config
 
 LIBRARYNAME = UnitTestMain
 BUILD_ARCHIVE = 1
+REQUIRES_RTTI = 1
+
 CPP.Flags += -I$(LLVM_SRC_ROOT)/utils/unittest/googletest/include
 CPP.Flags += $(NO_MISSING_FIELD_INITIALIZERS) $(NO_VARIADIC_MACROS)
+CPP.Flags += -DGTEST_HAS_RTTI=0
+# libstdc++'s TR1 <tuple> header depends on RTTI and uses C++'0x features not
+# supported by Clang, so force googletest to use its own tuple implementation.
+CPP.Flags += -DGTEST_USE_OWN_TR1_TUPLE
+
+# Disable pthreads if LLVM was configured without them.
+ifneq ($(HAVE_PTHREAD), 1)
+  CPP.Flags += -DGTEST_HAS_PTHREAD=0
+endif
 
 include $(LEVEL)/Makefile.common