From 8815087cfa124b8b7f6e991189ec50a6bd439c83 Mon Sep 17 00:00:00 2001 From: misterg Date: Tue, 8 Aug 2017 15:17:56 -0400 Subject: WIP --- BUILD.bazel | 202 ++++++++++++++++++------------------------------------------ 1 file changed, 60 insertions(+), 142 deletions(-) (limited to 'BUILD.bazel') diff --git a/BUILD.bazel b/BUILD.bazel index 9922e8f6..97315042 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -1,12 +1,13 @@ +# Copyright 2017 Google Inc. All Rights Reserved. +# Author: misterg@google.com (Gennadiy Civil) +# +# Description: +# Bazel BUILD file for googletest, initial revision +# package(default_visibility = ["//visibility:public"]) licenses(["notice"]) -config_setting( - name = "win", - values = {"cpu": "x64_windows_msvc"}, -) - cc_library( name = "gmock", srcs = glob( @@ -34,6 +35,18 @@ cc_library( ], ) +# gtest public API. +GTEST_HDRS = \ + glob([ + "googletest/include/gtest/*.h", + ]) + +config_setting( + name = "win", + values = {"cpu": "x64_windows_msvc"}, +) + +# Google Test cc_library( name = "gtest", srcs = glob( @@ -47,9 +60,7 @@ cc_library( "googletest/src/gtest_main.cc", ], ), - hdrs = glob([ - "googletest/include/gtest/*.h", - ]), + hdrs = GTEST_HDRS, copts = select( { ":win": [], @@ -68,85 +79,30 @@ cc_library( }), ) +## Google Test with exceptions enabled. cc_library( - name = "gtest_main", + name = "gtest_ex", srcs = glob( include = [ - "googletest/src/gtest_main.cc", - ], - ), - hdrs = glob([ - "googletest/include/gtest/*.h", - "googletest/include/gtest/**/*.h", - ]), - includes = [ - "googletest", - "googletest/include", - ], - deps = [":gmock"], -) - -""" gtest own tests """ - -#on windows exclude gtest-tuple.h and gtest-tuple_test.cc -filegroup( - name = "win_only_test_files", - srcs = glob( - include = [ - "googletest/test/gtest-*.cc", - "googletest/test/*.h", + "googletest/src/*.cc", + "googletest/src/*.h", "googletest/include/gtest/**/*.h", ], exclude = [ - "googletest/src/gtest-unittest-api_test.cc", - "googletest/include/gtest/internal/gtest-tuple.h", - "googletest/test/gtest-tuple_test.cc", "googletest/src/gtest-all.cc", - "googletest/test/gtest_all_test.cc", - "googletest/test/gtest-death-test_ex_test.cc", - "googletest/test/gtest-listener_test.cc", - "googletest/test/gtest-unittest-api_test.cc", - "googletest/test/gtest-param-test_test.cc", + "googletest/src/gtest_main.cc", ], ), -) - -filegroup( - name = "default_test_files", - srcs = glob( - include = [ - "googletest/test/gtest-*.cc", - "googletest/test/*.h", - "googletest/include/gtest/**/*.h", - ], - exclude = [ - "googletest/src/gtest-unittest-api_test.cc", - "googletest/src/gtest-all.cc", - "googletest/test/gtest_all_test.cc", - "googletest/test/gtest-death-test_ex_test.cc", - "googletest/test/gtest-listener_test.cc", - "googletest/test/gtest-unittest-api_test.cc", - "googletest/test/gtest-param-test_test.cc", - ], + hdrs = GTEST_HDRS, + copts = ["-fexceptions"] + select( + { + ":win": [], + "//conditions:default": ["-pthread"], + }, ), -) - -cc_test( - name = "gtest_all_test", - size = "small", - srcs = select({ - ":win": [":win_only_test_files"], - "//conditions:default": [":default_test_files"], - }), - copts = select({ - ":win": ["-DGTEST_USE_OWN_TR1_TUPLE=0"], - "//conditions:default": ["-DGTEST_USE_OWN_TR1_TUPLE=1"], - }), includes = [ "googletest", "googletest/include", - "googletest/include/internal", - "googletest/test", ], linkopts = select({ ":win": [], @@ -154,60 +110,26 @@ cc_test( "-pthread", ], }), - deps = [":gtest_main"], ) -#These googletest tests have their own main() -cc_test( - name = "gtest-death-test", - size = "small", - srcs = [ - "googletest/test/gtest-death-test_ex_test.cc", - ], - copts = [ - "-DGTEST_ENABLE_CATCH_EXCEPTIONS_=1", - ], - deps = [ - ":gtest_main", - ], -) - -cc_test( - name = "gtest-listener_test", - size = "small", - srcs = [ - "googletest/test/gtest-listener_test.cc", - ], - deps = [ - ":gtest_main", - ], -) - -cc_test( - name = "gtest-unittest-api_test", - size = "small", - srcs = [ - "googletest/test/gtest-unittest-api_test.cc", - ], - deps = [ - ":gtest_main", - ], -) - -cc_test( - name = "gtest-param-test_test", - size = "small", - srcs = [ - "googletest/test/gtest-param-test2_test.cc", - "googletest/test/gtest-param-test_test.cc", - "googletest/test/gtest-param-test_test.h", - ], - deps = [ - ":gtest_main", +cc_library( + name = "gtest_main", + srcs = glob( + include = [ + "googletest/src/gtest_main.cc", + ], + ), + hdrs = glob([ + "googletest/include/gtest/*.h", + "googletest/include/gtest/**/*.h", + ]), + includes = [ + "googletest", + "googletest/include", ], + deps = ["//:gtest"], ) - # The following rules build samples of how to use gTest. cc_library( name = "gtest_sample_lib", @@ -228,21 +150,19 @@ cc_library( cc_test( name = "gtest_samples", size = "small", - srcs = glob( - include = [ - #All Samples here except: - #sample9 designed to fail - #sample10 takes a command line option and needs to be separate - "googletest/samples/sample1_unittest.cc", - "googletest/samples/sample2_unittest.cc", - "googletest/samples/sample3_unittest.cc", - "googletest/samples/sample4_unittest.cc", - "googletest/samples/sample5_unittest.cc", - "googletest/samples/sample6_unittest.cc", - "googletest/samples/sample7_unittest.cc", - "googletest/samples/sample8_unittest.cc", - ], - ), + #All Samples except: + #sample9 ( main ) + #sample10 (main and takes a command line option and needs to be separate) + srcs = [ + "googletest/samples/sample1_unittest.cc", + "googletest/samples/sample2_unittest.cc", + "googletest/samples/sample3_unittest.cc", + "googletest/samples/sample4_unittest.cc", + "googletest/samples/sample5_unittest.cc", + "googletest/samples/sample6_unittest.cc", + "googletest/samples/sample7_unittest.cc", + "googletest/samples/sample8_unittest.cc", + ], deps = [ "gtest_sample_lib", ":gtest_main", @@ -253,7 +173,7 @@ cc_test( name = "sample9_unittest", size = "small", srcs = ["googletest/samples/sample9_unittest.cc"], - deps = [":gtest_main"], + deps = [":gtest"], ) cc_test( @@ -261,8 +181,6 @@ cc_test( size = "small", srcs = ["googletest/samples/sample10_unittest.cc"], deps = [ - ":gtest_main", + ":gtest", ], ) - - -- cgit v1.2.3