xref: /llvm-project/llvm/utils/gn/secondary/third-party/unittest/BUILD.gn (revision 20b0e0a71a333842e13f292c1d224877be6fe538)
1ce2474ffSNico Weberimport("//llvm/utils/gn/build/libs/pthread/enable.gni")
2ce2474ffSNico Weber
3ce2474ffSNico Weber# Used to push the gtest include directories to things depending on :googletest.
4ce2474ffSNico Weberconfig("googletest_config") {
5ce2474ffSNico Weber  include_dirs = [
6ce2474ffSNico Weber    "googlemock/include",
7ce2474ffSNico Weber    "googletest/include",
8ce2474ffSNico Weber  ]
9ce2474ffSNico Weber
10*20b0e0a7SNico Weber  defines = []
11ce2474ffSNico Weber  if (host_os == "win") {
12ce2474ffSNico Weber    defines += [ "GTEST_OS_WINDOWS" ]
13ce2474ffSNico Weber  }
14ce2474ffSNico Weber  if (!llvm_enable_threads) {
15ce2474ffSNico Weber    defines += [ "GTEST_HAS_PTHREAD=0" ]
16ce2474ffSNico Weber  }
17ce2474ffSNico Weber  defines += [ "GTEST_HAS_RTTI=0" ]
18ce2474ffSNico Weber}
19ce2474ffSNico Weber
20ce2474ffSNico Weberstatic_library("gtest") {
21ce2474ffSNico Weber  deps = [ "//llvm/lib/Support" ]
22ce2474ffSNico Weber  include_dirs = [
23ce2474ffSNico Weber    "googletest",  # For including src/gtest.cc
24ce2474ffSNico Weber    "googlemock",  # For including src/gmock.cc
25ce2474ffSNico Weber  ]
26ce2474ffSNico Weber  public_configs = [ ":googletest_config" ]
27ce2474ffSNico Weber  configs -= [ "//llvm/utils/gn/build:warn_covered_switch_default" ]
28ce2474ffSNico Weber  configs -= [ "//llvm/utils/gn/build:no_rtti" ]
29ce2474ffSNico Weber  sources = [
30ce2474ffSNico Weber    "googlemock/src/gmock-all.cc",
31ce2474ffSNico Weber    "googletest/src/gtest-all.cc",
32ce2474ffSNico Weber  ]
33ce2474ffSNico Weber  testonly = true
34ce2474ffSNico Weber}
35