[llvm-objcopy] Hook up the -V alias to --version, output "GNU strip"
[llvm-core.git] / utils / unittest / CMakeLists.txt
blob5b5cbf5d745f9b52921f7f6fce451b90a47b216f
1 ########################################################################
2 # Experimental CMake build script for Google Test.
4 # Consider this a prototype.  It will change drastically.  For now,
5 # this is only for people on the cutting edge.
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 ########################################################################
12 # Project-wide settings
14 # Where gtest's .h files can be found.
15 include_directories(
16   googletest/include
17   googletest
18   googlemock/include
19   googlemock
20   )
22 # LLVM requires C++11 but gtest doesn't correctly detect the availability
23 # of C++11 on MSVC, so we force it on.
24 add_definitions(-DGTEST_LANG_CXX11=1)
25 add_definitions(-DGTEST_HAS_TR1_TUPLE=0)
27 if(WIN32)
28   add_definitions(-DGTEST_OS_WINDOWS=1)
29 endif()
31 if(SUPPORTS_VARIADIC_MACROS_FLAG)
32   add_definitions("-Wno-variadic-macros")
33 endif()
34 if(SUPPORTS_GNU_ZERO_VARIADIC_MACRO_ARGUMENTS_FLAG)
35   add_definitions("-Wno-gnu-zero-variadic-macro-arguments")
36 endif()
37 if(CXX_SUPPORTS_COVERED_SWITCH_DEFAULT_FLAG)
38   add_definitions("-Wno-covered-switch-default")
39 endif()
41 set(LLVM_REQUIRES_RTTI 1)
42 add_definitions( -DGTEST_HAS_RTTI=0 )
44 if (NOT LLVM_ENABLE_THREADS)
45   add_definitions( -DGTEST_HAS_PTHREAD=0 )
46 endif()
48 find_library(LLVM_PTHREAD_LIBRARY_PATH pthread)
49 if (LLVM_PTHREAD_LIBRARY_PATH)
50   list(APPEND LIBS pthread)
51 endif()
53 add_llvm_library(gtest
54   googletest/src/gtest-all.cc
55   googlemock/src/gmock-all.cc
57   LINK_LIBS
58   ${LIBS}
60   LINK_COMPONENTS
61   Support # Depends on llvm::raw_ostream
63   # This is a library meant only for the build tree.
64   BUILDTREE_ONLY
67 add_subdirectory(UnitTestMain)