1 ######################################################################## 2 # Experimental CMake build script for Google Test. 3 # 4 # Consider this a prototype. It will change drastically. For now, 5 # this is only for people on the cutting edge. 6 # 7 # To run the tests for Google Test itself on Linux, use 'make test' or 8 # ctest. You can select which tests to run using 'ctest -R regex'. 9 # For more options, run 'ctest --help'. 10 ######################################################################## 11 # 12 # Project-wide settings 13 14 # Where gtest's .h files can be found. 15 include_directories( 16 googletest/include 17 ) 18 19 if(WIN32) 20 add_definitions(-DGTEST_OS_WINDOWS=1) 21 endif() 22 23 if(SUPPORTS_NO_VARIADIC_MACROS_FLAG) 24 add_definitions("-Wno-variadic-macros") 25 endif() 26 27 set(LLVM_REQUIRES_RTTI 1) 28 add_definitions( -DGTEST_HAS_RTTI=0 ) 29 30 if (NOT LLVM_ENABLE_THREADS) 31 add_definitions( -DGTEST_HAS_PTHREAD=0 ) 32 endif() 33 34 # Visual Studio 2012 only supports up to 8 template parameters in 35 # std::tr1::tuple by default, but gtest requires 10 36 if(MSVC AND MSVC_VERSION EQUAL 1700) 37 add_definitions(-D_VARIADIC_MAX=10) 38 endif () 39 40 add_llvm_library(gtest 41 googletest/gtest.cc 42 googletest/gtest-death-test.cc 43 googletest/gtest-filepath.cc 44 googletest/gtest-port.cc 45 googletest/gtest-printers.cc 46 googletest/gtest-test-part.cc 47 googletest/gtest-typed-test.cc 48 ) 49 50 add_llvm_library(gtest_main 51 UnitTestMain/TestMain.cpp 52 ) 53