From 7a07ece23b01848b94443585fb1e164862519ecc Mon Sep 17 00:00:00 2001 From: Tom Finegan <tomfinegan@google.com> Date: Tue, 7 Feb 2017 17:14:05 -0800 Subject: [PATCH] Include googletest cmake support. - Same googletest release (v1.8.0), new root in third_party. - Update Android.mk and make build (include and file locations). - Update cmake build (use googletest's cmake support). - Update gtest include in all tests. BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=76 Change-Id: I5491a2ff3c8869263cd885872c815402236c20b1 --- CMakeLists.txt | 22 +- libs.mk | 19 +- test/accounting_test.cc | 2 +- test/acm_random.h | 2 +- test/active_map_refresh_test.cc | 2 +- test/active_map_test.cc | 2 +- test/altref_test.cc | 2 +- test/android/Android.mk | 6 +- test/ans_codec_test.cc | 2 +- test/ans_test.cc | 2 +- test/aq_segment_test.cc | 2 +- test/arf_freq_test.cc | 2 +- test/av1_convolve_optimz_test.cc | 2 +- test/av1_convolve_test.cc | 2 +- test/av1_dct_test.cc | 2 +- test/av1_ext_tile_test.cc | 2 +- test/av1_fht16x16_test.cc | 2 +- test/av1_fht16x32_test.cc | 2 +- test/av1_fht16x8_test.cc | 2 +- test/av1_fht32x16_test.cc | 2 +- test/av1_fht4x4_test.cc | 2 +- test/av1_fht4x8_test.cc | 2 +- test/av1_fht8x16_test.cc | 2 +- test/av1_fht8x4_test.cc | 2 +- test/av1_fht8x8_test.cc | 2 +- test/av1_highbd_iht_test.cc | 2 +- test/av1_inv_txfm_test.cc | 2 +- test/av1_quantize_test.cc | 2 +- test/av1_txfm_test.h | 2 +- test/av1_wedge_utils_test.cc | 2 +- test/avg_test.cc | 2 +- test/blend_a64_mask_1d_test.cc | 2 +- test/blend_a64_mask_test.cc | 2 +- test/boolcoder_test.cc | 2 +- test/borders_test.cc | 2 +- test/clpf_test.cc | 2 +- test/convolve_test.cc | 2 +- test/cpu_speed_test.cc | 2 +- test/datarate_test.cc | 2 +- test/dct16x16_test.cc | 2 +- test/dct32x32_test.cc | 2 +- test/decode_api_test.cc | 2 +- test/decode_test_driver.cc | 2 +- test/decode_test_driver.h | 2 +- test/divu_small_test.cc | 2 +- test/encode_api_test.cc | 2 +- test/encode_perf_test.cc | 2 +- test/encode_test_driver.cc | 2 +- test/encode_test_driver.h | 2 +- test/encoder_parms_get_to_decoder.cc | 2 +- test/end_to_end_test.cc | 2 +- test/error_block_test.cc | 2 +- test/error_resilience_test.cc | 2 +- test/ethread_test.cc | 2 +- test/fdct4x4_test.cc | 2 +- test/fdct8x8_test.cc | 2 +- test/fht32x32_test.cc | 2 +- test/filterintra_predictors_test.cc | 2 +- test/frame_size_tests.cc | 2 +- test/function_equivalence_test.h | 2 +- test/hadamard_test.cc | 2 +- test/hbd_metrics_test.cc | 2 +- test/idct8x8_test.cc | 2 +- test/idct_test.cc | 2 +- test/intrapred_test.cc | 2 +- test/level_test.cc | 2 +- test/lossless_test.cc | 2 +- test/lpf_8_test.cc | 2 +- test/masked_sad_test.cc | 2 +- test/masked_variance_test.cc | 2 +- test/minmax_test.cc | 2 +- test/obmc_sad_test.cc | 2 +- test/obmc_variance_test.cc | 2 +- test/partial_idct_test.cc | 2 +- test/quantize_test.cc | 2 +- test/realtime_test.cc | 2 +- test/register_state_check.h | 2 +- test/resize_test.cc | 2 +- test/sad_test.cc | 2 +- test/scan_test.cc | 2 +- test/simd_impl.h | 2 +- test/subtract_test.cc | 2 +- test/sum_squares_test.cc | 2 +- test/superframe_test.cc | 2 +- test/test_intra_pred_speed.cc | 2 +- test/test_libaom.cc | 2 +- test/tile_independence_test.cc | 2 +- test/user_priv_test.cc | 2 +- test/util.h | 2 +- test/variance_test.cc | 2 +- test/warp_filter_test.cc | 2 +- test/y4m_test.cc | 2 +- third_party/googletest/gtest.mk | 2 +- third_party/googletest/src/.gitignore | 2 + third_party/googletest/src/.travis.yml | 46 +++ .../googletest/src/googletest/.gitignore | 2 + .../googletest/src/{ => googletest}/CHANGES | 0 .../googletest/src/googletest/CMakeLists.txt | 286 ++++++++++++++++ .../src/{ => googletest}/CONTRIBUTORS | 0 .../googletest/src/{ => googletest}/LICENSE | 0 .../googletest/src/googletest/Makefile.am | 310 ++++++++++++++++++ .../googletest/src/{ => googletest}/README.md | 0 .../src/googletest/cmake/internal_utils.cmake | 254 ++++++++++++++ .../include/gtest/gtest-death-test.h | 0 .../include/gtest/gtest-message.h | 0 .../include/gtest/gtest-param-test.h | 0 .../include/gtest/gtest-param-test.h.pump | 0 .../include/gtest/gtest-printers.h | 0 .../include/gtest/gtest-spi.h | 0 .../include/gtest/gtest-test-part.h | 0 .../include/gtest/gtest-typed-test.h | 0 .../{ => googletest}/include/gtest/gtest.h | 0 .../include/gtest/gtest_pred_impl.h | 0 .../include/gtest/gtest_prod.h | 0 .../gtest/internal/custom/gtest-port.h | 0 .../gtest/internal/custom/gtest-printers.h | 0 .../include/gtest/internal/custom/gtest.h | 0 .../internal/gtest-death-test-internal.h | 0 .../include/gtest/internal/gtest-filepath.h | 0 .../include/gtest/internal/gtest-internal.h | 0 .../include/gtest/internal/gtest-linked_ptr.h | 0 .../internal/gtest-param-util-generated.h | 0 .../gtest-param-util-generated.h.pump | 0 .../include/gtest/internal/gtest-param-util.h | 0 .../include/gtest/internal/gtest-port-arch.h | 0 .../include/gtest/internal/gtest-port.h | 0 .../include/gtest/internal/gtest-string.h | 0 .../include/gtest/internal/gtest-tuple.h | 0 .../include/gtest/internal/gtest-tuple.h.pump | 0 .../include/gtest/internal/gtest-type-util.h | 0 .../gtest/internal/gtest-type-util.h.pump | 0 .../src/{ => googletest}/src/gtest-all.cc | 0 .../{ => googletest}/src/gtest-death-test.cc | 0 .../{ => googletest}/src/gtest-filepath.cc | 0 .../{ => googletest}/src/gtest-internal-inl.h | 0 .../src/{ => googletest}/src/gtest-port.cc | 0 .../{ => googletest}/src/gtest-printers.cc | 0 .../{ => googletest}/src/gtest-test-part.cc | 0 .../{ => googletest}/src/gtest-typed-test.cc | 0 .../src/{ => googletest}/src/gtest.cc | 0 .../src/{ => googletest}/src/gtest_main.cc | 0 141 files changed, 1011 insertions(+), 116 deletions(-) create mode 100644 third_party/googletest/src/.gitignore create mode 100644 third_party/googletest/src/.travis.yml create mode 100644 third_party/googletest/src/googletest/.gitignore rename third_party/googletest/src/{ => googletest}/CHANGES (100%) create mode 100644 third_party/googletest/src/googletest/CMakeLists.txt rename third_party/googletest/src/{ => googletest}/CONTRIBUTORS (100%) rename third_party/googletest/src/{ => googletest}/LICENSE (100%) create mode 100644 third_party/googletest/src/googletest/Makefile.am rename third_party/googletest/src/{ => googletest}/README.md (100%) create mode 100644 third_party/googletest/src/googletest/cmake/internal_utils.cmake rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-death-test.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-message.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-param-test.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-param-test.h.pump (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-printers.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-spi.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-test-part.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest-typed-test.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest_pred_impl.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/gtest_prod.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/custom/gtest-port.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/custom/gtest-printers.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/custom/gtest.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-death-test-internal.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-filepath.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-internal.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-linked_ptr.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-param-util-generated.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-param-util-generated.h.pump (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-param-util.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-port-arch.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-port.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-string.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-tuple.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-tuple.h.pump (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-type-util.h (100%) rename third_party/googletest/src/{ => googletest}/include/gtest/internal/gtest-type-util.h.pump (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-all.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-death-test.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-filepath.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-internal-inl.h (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-port.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-printers.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-test-part.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest-typed-test.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest.cc (100%) rename third_party/googletest/src/{ => googletest}/src/gtest_main.cc (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 2626f2c601..f324098296 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -679,10 +679,6 @@ if (CONFIG_AOM_HIGHBITDEPTH) "${AOM_ROOT}/test/av1_quantize_test.cc") endif () -set(AOM_GTEST_SOURCES - "${AOM_ROOT}/third_party/googletest/src/src/gtest-all.cc" - "${AOM_ROOT}/third_party/googletest/src/include/gtest/gtest.h") - set(AOM_TEST_INTRA_PRED_SPEED_SOURCES "${AOM_CONFIG_DIR}/usage_exit.c" "${AOM_ROOT}/test/test_intra_pred_speed.cc") @@ -898,10 +894,10 @@ if (CONFIG_WEBM_IO) endif () if (CONFIG_UNIT_TESTS) - include_directories("${AOM_ROOT}/third_party/googletest/src/include" - "${AOM_ROOT}/third_party/googletest/src") - - add_library(aom_gtest OBJECT ${AOM_GTEST_SOURCES}) + include_directories( + "${AOM_ROOT}/third_party/googletest/src/googletest/src" + "${AOM_ROOT}/third_party/googletest/src/googletest/include") + add_subdirectory("${AOM_ROOT}/third_party/googletest/src/googletest") # Generate a stub file containing the C function usage_exit(); this is # required because of the test dependency on aom_common_app_util. @@ -912,15 +908,13 @@ if (CONFIG_UNIT_TESTS) add_executable(test_libaom ${AOM_UNIT_TEST_SOURCES} $<TARGET_OBJECTS:aom_common_app_util> $<TARGET_OBJECTS:aom_decoder_app_util> - $<TARGET_OBJECTS:aom_encoder_app_util> - $<TARGET_OBJECTS:aom_gtest>) - target_link_libraries(test_libaom PUBLIC aom) + $<TARGET_OBJECTS:aom_encoder_app_util>) + target_link_libraries(test_libaom PUBLIC aom gtest) add_executable(test_intra_pred_speed ${AOM_TEST_INTRA_PRED_SPEED_SOURCES} - $<TARGET_OBJECTS:aom_common_app_util> - $<TARGET_OBJECTS:aom_gtest>) - target_link_libraries(test_intra_pred_speed PUBLIC aom) + $<TARGET_OBJECTS:aom_common_app_util>) + target_link_libraries(test_intra_pred_speed PUBLIC aom gtest) if (CONFIG_DECODE_PERF_TESTS AND CONFIG_WEBM_IO) target_sources(test_libaom PUBLIC ${AOM_DECODE_PERF_TEST_SOURCES}) diff --git a/libs.mk b/libs.mk index d4a304032f..f931e1266f 100644 --- a/libs.mk +++ b/libs.mk @@ -396,8 +396,7 @@ testdata:: $(LIBAOM_TEST_DATA) ifeq ($(CONFIG_EXTERNAL_BUILD),yes) ifeq ($(CONFIG_MSVS),yes) - -gtest.$(VCPROJ_SFX): $(SRC_PATH_BARE)/third_party/googletest/src/src/gtest-all.cc +gtest.$(VCPROJ_SFX): $(SRC_PATH_BARE)/third_party/googletest/src/googletest/src/gtest-all.cc @echo " [CREATE] $@" $(qexec)$(GEN_VCPROJ) \ --lib \ @@ -408,8 +407,10 @@ gtest.$(VCPROJ_SFX): $(SRC_PATH_BARE)/third_party/googletest/src/src/gtest-all.c --ver=$(CONFIG_VS_VERSION) \ --src-path-bare="$(SRC_PATH_BARE)" \ -D_VARIADIC_MAX=10 \ - --out=gtest.$(VCPROJ_SFX) $(SRC_PATH_BARE)/third_party/googletest/src/src/gtest-all.cc \ - -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/include" -I"$(SRC_PATH_BARE)/third_party/googletest/src" + --out=gtest.$(VCPROJ_SFX) \ + $(SRC_PATH_BARE)/third_party/googletest/src/googletest/src/gtest-all.cc \ + -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/googletest/include" \ + -I"$(SRC_PATH_BARE)/third_party/googletest/src/googletest" PROJECTS-$(CONFIG_MSVS) += gtest.$(VCPROJ_SFX) @@ -425,7 +426,7 @@ test_libaom.$(VCPROJ_SFX): $(LIBAOM_TEST_SRCS) aom.$(VCPROJ_SFX) gtest.$(VCPROJ_ --src-path-bare="$(SRC_PATH_BARE)" \ $(if $(CONFIG_STATIC_MSVCRT),--static-crt) \ --out=$@ $(INTERNAL_CFLAGS) $(CFLAGS) \ - -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/include" \ + -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/googletest/include" \ $(if $(CONFIG_WEBM_IO),-I"$(SRC_PATH_BARE)/third_party/libwebm") \ -L. -l$(CODEC_LIB) -l$(GTEST_LIB) $^ @@ -447,21 +448,21 @@ test_intra_pred_speed.$(VCPROJ_SFX): $(TEST_INTRA_PRED_SPEED_SRCS) aom.$(VCPROJ_ --src-path-bare="$(SRC_PATH_BARE)" \ $(if $(CONFIG_STATIC_MSVCRT),--static-crt) \ --out=$@ $(INTERNAL_CFLAGS) $(CFLAGS) \ - -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/include" \ + -I. -I"$(SRC_PATH_BARE)/third_party/googletest/src/googletest/include" \ -L. -l$(CODEC_LIB) -l$(GTEST_LIB) $^ endif # TEST_INTRA_PRED_SPEED endif else include $(SRC_PATH_BARE)/third_party/googletest/gtest.mk -GTEST_SRCS := $(addprefix third_party/googletest/src/,$(call enabled,GTEST_SRCS)) +GTEST_SRCS := $(addprefix third_party/,$(call enabled,GTEST_SRCS)) GTEST_OBJS=$(call objs,$(GTEST_SRCS)) ifeq ($(filter win%,$(TGT_OS)),$(TGT_OS)) # Disabling pthreads globally will cause issues on darwin and possibly elsewhere $(GTEST_OBJS) $(GTEST_OBJS:.o=.d): CXXFLAGS += -DGTEST_HAS_PTHREAD=0 endif -GTEST_INCLUDES := -I$(SRC_PATH_BARE)/third_party/googletest/src -GTEST_INCLUDES += -I$(SRC_PATH_BARE)/third_party/googletest/src/include +GTEST_INCLUDES := -I$(SRC_PATH_BARE)/third_party/googletest/src/googletest +GTEST_INCLUDES += -I$(SRC_PATH_BARE)/third_party/googletest/src/googletest/include $(GTEST_OBJS) $(GTEST_OBJS:.o=.d): CXXFLAGS += $(GTEST_INCLUDES) OBJS-yes += $(GTEST_OBJS) LIBS-yes += $(BUILD_PFX)libgtest.a $(BUILD_PFX)libgtest_g.a diff --git a/test/accounting_test.cc b/test/accounting_test.cc index b4f76849b9..e8387d0dc0 100644 --- a/test/accounting_test.cc +++ b/test/accounting_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "aom/aom_integer.h" diff --git a/test/acm_random.h b/test/acm_random.h index eb2353d4af..4842345ff6 100644 --- a/test/acm_random.h +++ b/test/acm_random.h @@ -12,7 +12,7 @@ #ifndef TEST_ACM_RANDOM_H_ #define TEST_ACM_RANDOM_H_ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "aom/aom_integer.h" diff --git a/test/active_map_refresh_test.cc b/test/active_map_refresh_test.cc index 161dc733d5..7ee86e7e67 100644 --- a/test/active_map_refresh_test.cc +++ b/test/active_map_refresh_test.cc @@ -10,7 +10,7 @@ */ #include <algorithm> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/util.h" diff --git a/test/active_map_test.cc b/test/active_map_test.cc index 2d30480458..a926b0faf3 100644 --- a/test/active_map_test.cc +++ b/test/active_map_test.cc @@ -11,7 +11,7 @@ #include <climits> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/altref_test.cc b/test/altref_test.cc index be9b774545..6dd8b5186f 100644 --- a/test/altref_test.cc +++ b/test/altref_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/android/Android.mk b/test/android/Android.mk index 9ad2a34582..74f9d7cbaf 100644 --- a/test/android/Android.mk +++ b/test/android/Android.mk @@ -32,9 +32,9 @@ include $(CLEAR_VARS) LOCAL_ARM_MODE := arm LOCAL_CPP_EXTENSION := .cc LOCAL_MODULE := gtest -LOCAL_C_INCLUDES := $(LOCAL_PATH)/third_party/googletest/src/ -LOCAL_C_INCLUDES += $(LOCAL_PATH)/third_party/googletest/src/include/ -LOCAL_SRC_FILES := ./third_party/googletest/src/src/gtest-all.cc +LOCAL_C_INCLUDES := $(LOCAL_PATH)/third_party/googletest/src/googletest/src +LOCAL_C_INCLUDES += $(LOCAL_PATH)/third_party/googletest/src/googletest/include +LOCAL_SRC_FILES := ./third_party/googletest/src/googletest/src/gtest-all.cc include $(BUILD_STATIC_LIBRARY) #libaom_test diff --git a/test/ans_codec_test.cc b/test/ans_codec_test.cc index 0b1650e0bb..a1b25fbdac 100644 --- a/test/ans_codec_test.cc +++ b/test/ans_codec_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" diff --git a/test/ans_test.cc b/test/ans_test.cc index 585773f1c5..2e513eaf11 100644 --- a/test/ans_test.cc +++ b/test/ans_test.cc @@ -16,7 +16,7 @@ #include <utility> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "aom_dsp/ansreader.h" diff --git a/test/aq_segment_test.cc b/test/aq_segment_test.cc index e231b4e6ca..a9bad821e0 100644 --- a/test/aq_segment_test.cc +++ b/test/aq_segment_test.cc @@ -10,7 +10,7 @@ */ #include "./aom_config.h" -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/arf_freq_test.cc b/test/arf_freq_test.cc index 3666697bc5..cafd8e358e 100644 --- a/test/arf_freq_test.cc +++ b/test/arf_freq_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" diff --git a/test/av1_convolve_optimz_test.cc b/test/av1_convolve_optimz_test.cc index a4bb7e7d15..6265c68d4f 100644 --- a/test/av1_convolve_optimz_test.cc +++ b/test/av1_convolve_optimz_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "test/acm_random.h" diff --git a/test/av1_convolve_test.cc b/test/av1_convolve_test.cc index 6de85398e3..225b29d59d 100644 --- a/test/av1_convolve_test.cc +++ b/test/av1_convolve_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/av1_dct_test.cc b/test/av1_dct_test.cc index defecb2188..691cc8b794 100644 --- a/test/av1_dct_test.cc +++ b/test/av1_dct_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <new> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "test/util.h" #include "./aom_config.h" diff --git a/test/av1_ext_tile_test.cc b/test/av1_ext_tile_test.cc index 679a6ed917..cf70734155 100644 --- a/test/av1_ext_tile_test.cc +++ b/test/av1_ext_tile_test.cc @@ -12,7 +12,7 @@ #include <assert.h> #include <string> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/av1_fht16x16_test.cc b/test/av1_fht16x16_test.cc index a776618dea..0eee35b365 100644 --- a/test/av1_fht16x16_test.cc +++ b/test/av1_fht16x16_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/av1_fht16x32_test.cc b/test/av1_fht16x32_test.cc index aea3024635..43d0253273 100644 --- a/test/av1_fht16x32_test.cc +++ b/test/av1_fht16x32_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "./av1_rtcd.h" diff --git a/test/av1_fht16x8_test.cc b/test/av1_fht16x8_test.cc index e0fbb95ff4..d99bec5eb3 100644 --- a/test/av1_fht16x8_test.cc +++ b/test/av1_fht16x8_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "./av1_rtcd.h" diff --git a/test/av1_fht32x16_test.cc b/test/av1_fht32x16_test.cc index ae7f0be860..e38283f865 100644 --- a/test/av1_fht32x16_test.cc +++ b/test/av1_fht32x16_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "./av1_rtcd.h" diff --git a/test/av1_fht4x4_test.cc b/test/av1_fht4x4_test.cc index 913add4e23..611b867c00 100644 --- a/test/av1_fht4x4_test.cc +++ b/test/av1_fht4x4_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/av1_fht4x8_test.cc b/test/av1_fht4x8_test.cc index ddb2929bee..a899c87391 100644 --- a/test/av1_fht4x8_test.cc +++ b/test/av1_fht4x8_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "./av1_rtcd.h" diff --git a/test/av1_fht8x16_test.cc b/test/av1_fht8x16_test.cc index 9e92913dd5..601fa320bf 100644 --- a/test/av1_fht8x16_test.cc +++ b/test/av1_fht8x16_test.cc @@ -8,7 +8,7 @@ * Media Patent License 1.0 was not distributed with this source code in the * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "./av1_rtcd.h" diff --git a/test/av1_fht8x4_test.cc b/test/av1_fht8x4_test.cc index dc63c0b8e5..9bf4ff6475 100644 --- a/test/av1_fht8x4_test.cc +++ b/test/av1_fht8x4_test.cc @@ -8,7 +8,7 @@ * Media Patent License 1.0 was not distributed with this source code in the * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "./av1_rtcd.h" diff --git a/test/av1_fht8x8_test.cc b/test/av1_fht8x8_test.cc index 90a7e443db..29ca004d0f 100644 --- a/test/av1_fht8x8_test.cc +++ b/test/av1_fht8x8_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/av1_highbd_iht_test.cc b/test/av1_highbd_iht_test.cc index 94d178da67..422cca5f34 100644 --- a/test/av1_highbd_iht_test.cc +++ b/test/av1_highbd_iht_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "test/acm_random.h" diff --git a/test/av1_inv_txfm_test.cc b/test/av1_inv_txfm_test.cc index f5b33d2925..af3fee8726 100644 --- a/test/av1_inv_txfm_test.cc +++ b/test/av1_inv_txfm_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/av1_quantize_test.cc b/test/av1_quantize_test.cc index 667b5581e4..43acd6fe72 100644 --- a/test/av1_quantize_test.cc +++ b/test/av1_quantize_test.cc @@ -10,7 +10,7 @@ */ #include <stdlib.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./av1_rtcd.h" diff --git a/test/av1_txfm_test.h b/test/av1_txfm_test.h index b786665c2f..a62d0603f7 100644 --- a/test/av1_txfm_test.h +++ b/test/av1_txfm_test.h @@ -19,7 +19,7 @@ #endif #include <math.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "av1/common/enums.h" diff --git a/test/av1_wedge_utils_test.cc b/test/av1_wedge_utils_test.cc index 52b9fc0b8d..d4b560fc10 100644 --- a/test/av1_wedge_utils_test.cc +++ b/test/av1_wedge_utils_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" diff --git a/test/avg_test.cc b/test/avg_test.cc index b7a707d4e5..529672d74d 100644 --- a/test/avg_test.cc +++ b/test/avg_test.cc @@ -13,7 +13,7 @@ #include <stdio.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/blend_a64_mask_1d_test.cc b/test/blend_a64_mask_1d_test.cc index 684cbedb39..25a22e5ebd 100644 --- a/test/blend_a64_mask_1d_test.cc +++ b/test/blend_a64_mask_1d_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/register_state_check.h" #include "test/function_equivalence_test.h" diff --git a/test/blend_a64_mask_test.cc b/test/blend_a64_mask_test.cc index 0cfee2ec24..21c3721fe6 100644 --- a/test/blend_a64_mask_test.cc +++ b/test/blend_a64_mask_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/register_state_check.h" #include "test/function_equivalence_test.h" diff --git a/test/boolcoder_test.cc b/test/boolcoder_test.cc index c6a32884c7..4d9d7aaf44 100644 --- a/test/boolcoder_test.cc +++ b/test/boolcoder_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "aom/aom_integer.h" diff --git a/test/borders_test.cc b/test/borders_test.cc index 16830b488e..076f914044 100644 --- a/test/borders_test.cc +++ b/test/borders_test.cc @@ -11,7 +11,7 @@ #include <climits> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/clpf_test.cc b/test/clpf_test.cc index 8d6dd7530a..dfcde50973 100644 --- a/test/clpf_test.cc +++ b/test/clpf_test.cc @@ -12,7 +12,7 @@ #include <cstdlib> #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/convolve_test.cc b/test/convolve_test.cc index 12af4fd7c8..62749a0a80 100644 --- a/test/convolve_test.cc +++ b/test/convolve_test.cc @@ -11,7 +11,7 @@ #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/cpu_speed_test.cc b/test/cpu_speed_test.cc index 558068e6f5..9b79664627 100644 --- a/test/cpu_speed_test.cc +++ b/test/cpu_speed_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/datarate_test.cc b/test/datarate_test.cc index ec866044ef..48be4a46df 100644 --- a/test/datarate_test.cc +++ b/test/datarate_test.cc @@ -10,7 +10,7 @@ */ #include "./aom_config.h" -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/dct16x16_test.cc b/test/dct16x16_test.cc index 9928b0c188..0fba26c23d 100644 --- a/test/dct16x16_test.cc +++ b/test/dct16x16_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/dct32x32_test.cc b/test/dct32x32_test.cc index cb2fbd538e..a9c4c0b8e8 100644 --- a/test/dct32x32_test.cc +++ b/test/dct32x32_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_config.h" diff --git a/test/decode_api_test.cc b/test/decode_api_test.cc index d62fcedb60..6bd72a45d4 100644 --- a/test/decode_api_test.cc +++ b/test/decode_api_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "test/ivf_video_source.h" diff --git a/test/decode_test_driver.cc b/test/decode_test_driver.cc index 7adb9d616f..782f58e532 100644 --- a/test/decode_test_driver.cc +++ b/test/decode_test_driver.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/decode_test_driver.h" diff --git a/test/decode_test_driver.h b/test/decode_test_driver.h index b8f8d1a619..153ff5db47 100644 --- a/test/decode_test_driver.h +++ b/test/decode_test_driver.h @@ -12,7 +12,7 @@ #ifndef TEST_DECODE_TEST_DRIVER_H_ #define TEST_DECODE_TEST_DRIVER_H_ #include <cstring> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "aom/aom_decoder.h" diff --git a/test/divu_small_test.cc b/test/divu_small_test.cc index d3a134a2bf..064f8ee454 100644 --- a/test/divu_small_test.cc +++ b/test/divu_small_test.cc @@ -11,7 +11,7 @@ #include <stdlib.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "av1/common/odintrin.h" diff --git a/test/encode_api_test.cc b/test/encode_api_test.cc index 49fac27207..14e43c847f 100644 --- a/test/encode_api_test.cc +++ b/test/encode_api_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "aom/aomcx.h" diff --git a/test/encode_perf_test.cc b/test/encode_perf_test.cc index 732e2a1613..e2a4f2b71c 100644 --- a/test/encode_perf_test.cc +++ b/test/encode_perf_test.cc @@ -10,7 +10,7 @@ */ #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_version.h" #include "test/codec_factory.h" diff --git a/test/encode_test_driver.cc b/test/encode_test_driver.cc index 092e669589..626ca528ab 100644 --- a/test/encode_test_driver.cc +++ b/test/encode_test_driver.cc @@ -11,7 +11,7 @@ #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "aom_ports/mem.h" diff --git a/test/encode_test_driver.h b/test/encode_test_driver.h index 45a080e778..5de949d7c1 100644 --- a/test/encode_test_driver.h +++ b/test/encode_test_driver.h @@ -14,7 +14,7 @@ #include <string> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #if CONFIG_AV1_ENCODER diff --git a/test/encoder_parms_get_to_decoder.cc b/test/encoder_parms_get_to_decoder.cc index 8d8e2b2fd2..4c04869303 100644 --- a/test/encoder_parms_get_to_decoder.cc +++ b/test/encoder_parms_get_to_decoder.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" diff --git a/test/end_to_end_test.cc b/test/end_to_end_test.cc index e9e7d425dd..9769d6e5c0 100644 --- a/test/end_to_end_test.cc +++ b/test/end_to_end_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" diff --git a/test/error_block_test.cc b/test/error_block_test.cc index 3de35c7d89..1c985577e3 100644 --- a/test/error_block_test.cc +++ b/test/error_block_test.cc @@ -13,7 +13,7 @@ #include <cstdlib> #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./av1_rtcd.h" diff --git a/test/error_resilience_test.cc b/test/error_resilience_test.cc index 07b60399eb..63f10012f8 100644 --- a/test/error_resilience_test.cc +++ b/test/error_resilience_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/ethread_test.cc b/test/ethread_test.cc index 5ea73f610d..5b519f8feb 100644 --- a/test/ethread_test.cc +++ b/test/ethread_test.cc @@ -11,7 +11,7 @@ #include <string> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/md5_helper.h" diff --git a/test/fdct4x4_test.cc b/test/fdct4x4_test.cc index c22abb5eb4..b191a971e9 100644 --- a/test/fdct4x4_test.cc +++ b/test/fdct4x4_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/fdct8x8_test.cc b/test/fdct8x8_test.cc index bbfb7f1a2a..61d8da378f 100644 --- a/test/fdct8x8_test.cc +++ b/test/fdct8x8_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/fht32x32_test.cc b/test/fht32x32_test.cc index 039a9ecd01..160bd5b540 100644 --- a/test/fht32x32_test.cc +++ b/test/fht32x32_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/filterintra_predictors_test.cc b/test/filterintra_predictors_test.cc index d09b63dfb9..d722f53d2b 100644 --- a/test/filterintra_predictors_test.cc +++ b/test/filterintra_predictors_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "test/acm_random.h" diff --git a/test/frame_size_tests.cc b/test/frame_size_tests.cc index 843c68bd30..1b58fecedf 100644 --- a/test/frame_size_tests.cc +++ b/test/frame_size_tests.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/video_source.h" diff --git a/test/function_equivalence_test.h b/test/function_equivalence_test.h index 472d4ce862..4b22c74a2b 100644 --- a/test/function_equivalence_test.h +++ b/test/function_equivalence_test.h @@ -12,7 +12,7 @@ #ifndef TEST_FUNCTION_EQUIVALENCE_TEST_H_ #define TEST_FUNCTION_EQUIVALENCE_TEST_H_ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "test/clear_system_state.h" #include "test/util.h" diff --git a/test/hadamard_test.cc b/test/hadamard_test.cc index 792e0abc41..db5cb74747 100644 --- a/test/hadamard_test.cc +++ b/test/hadamard_test.cc @@ -11,7 +11,7 @@ #include <algorithm> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" diff --git a/test/hbd_metrics_test.cc b/test/hbd_metrics_test.cc index 455e180be7..4def53b215 100644 --- a/test/hbd_metrics_test.cc +++ b/test/hbd_metrics_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <new> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "test/util.h" #include "./aom_config.h" diff --git a/test/idct8x8_test.cc b/test/idct8x8_test.cc index ff43464f78..f99a4075f8 100644 --- a/test/idct8x8_test.cc +++ b/test/idct8x8_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "test/acm_random.h" diff --git a/test/idct_test.cc b/test/idct_test.cc index 009f4b0c39..a880a91825 100644 --- a/test/idct_test.cc +++ b/test/idct_test.cc @@ -12,7 +12,7 @@ #include "./aom_config.h" #include "./aom_rtcd.h" -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/clear_system_state.h" #include "test/register_state_check.h" diff --git a/test/intrapred_test.cc b/test/intrapred_test.cc index 12eabcffc1..e3bd763499 100644 --- a/test/intrapred_test.cc +++ b/test/intrapred_test.cc @@ -11,7 +11,7 @@ #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/level_test.cc b/test/level_test.cc index af6355624c..1049d4901e 100644 --- a/test/level_test.cc +++ b/test/level_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/lossless_test.cc b/test/lossless_test.cc index 9fd5bea3cf..5c5b32d932 100644 --- a/test/lossless_test.cc +++ b/test/lossless_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "test/codec_factory.h" diff --git a/test/lpf_8_test.cc b/test/lpf_8_test.cc index dfaaed5980..be6afbf69a 100644 --- a/test/lpf_8_test.cc +++ b/test/lpf_8_test.cc @@ -13,7 +13,7 @@ #include <cstdlib> #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/masked_sad_test.cc b/test/masked_sad_test.cc index 95b4544391..996f912cb0 100644 --- a/test/masked_sad_test.cc +++ b/test/masked_sad_test.cc @@ -12,7 +12,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "test/clear_system_state.h" #include "test/register_state_check.h" diff --git a/test/masked_variance_test.cc b/test/masked_variance_test.cc index cecaf27592..8515c7e811 100644 --- a/test/masked_variance_test.cc +++ b/test/masked_variance_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "test/clear_system_state.h" #include "test/register_state_check.h" diff --git a/test/minmax_test.cc b/test/minmax_test.cc index 8613f4b280..f825291927 100644 --- a/test/minmax_test.cc +++ b/test/minmax_test.cc @@ -12,7 +12,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "aom/aom_integer.h" diff --git a/test/obmc_sad_test.cc b/test/obmc_sad_test.cc index 1814cddb3e..811c35b81e 100644 --- a/test/obmc_sad_test.cc +++ b/test/obmc_sad_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/function_equivalence_test.h" #include "test/register_state_check.h" diff --git a/test/obmc_variance_test.cc b/test/obmc_variance_test.cc index 41e399a16a..777e8f3189 100644 --- a/test/obmc_variance_test.cc +++ b/test/obmc_variance_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/acm_random.h" #include "test/function_equivalence_test.h" diff --git a/test/partial_idct_test.cc b/test/partial_idct_test.cc index 7eedfaf3cd..22750c31f1 100644 --- a/test/partial_idct_test.cc +++ b/test/partial_idct_test.cc @@ -13,7 +13,7 @@ #include <stdlib.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/quantize_test.cc b/test/quantize_test.cc index 4908e995f3..4f61484a26 100644 --- a/test/quantize_test.cc +++ b/test/quantize_test.cc @@ -11,7 +11,7 @@ #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "test/acm_random.h" diff --git a/test/realtime_test.cc b/test/realtime_test.cc index f6f3f52b89..ffe4a3146b 100644 --- a/test/realtime_test.cc +++ b/test/realtime_test.cc @@ -13,7 +13,7 @@ #include "test/encode_test_driver.h" #include "test/util.h" #include "test/video_source.h" -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" namespace { diff --git a/test/register_state_check.h b/test/register_state_check.h index 3ff41d1bc4..3308201739 100644 --- a/test/register_state_check.h +++ b/test/register_state_check.h @@ -12,7 +12,7 @@ #ifndef TEST_REGISTER_STATE_CHECK_H_ #define TEST_REGISTER_STATE_CHECK_H_ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "aom/aom_integer.h" diff --git a/test/resize_test.cc b/test/resize_test.cc index 9cee841a03..9932e99aad 100644 --- a/test/resize_test.cc +++ b/test/resize_test.cc @@ -11,7 +11,7 @@ #include <climits> #include <vector> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/sad_test.cc b/test/sad_test.cc index bacf539362..ef637fb16b 100644 --- a/test/sad_test.cc +++ b/test/sad_test.cc @@ -13,7 +13,7 @@ #include <limits.h> #include <stdio.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/scan_test.cc b/test/scan_test.cc index 57248838a6..16c831c8ea 100644 --- a/test/scan_test.cc +++ b/test/scan_test.cc @@ -11,7 +11,7 @@ #include "av1/common/common_data.h" #include "av1/common/scan.h" -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" namespace { diff --git a/test/simd_impl.h b/test/simd_impl.h index 26a8c673b4..dd09c88c75 100644 --- a/test/simd_impl.h +++ b/test/simd_impl.h @@ -10,7 +10,7 @@ */ #define SIMD_CHECK 1 -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/clear_system_state.h" #include "test/register_state_check.h" #include "aom_dsp/aom_simd_inline.h" diff --git a/test/subtract_test.cc b/test/subtract_test.cc index d1b51864e1..202594c481 100644 --- a/test/subtract_test.cc +++ b/test/subtract_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/sum_squares_test.cc b/test/sum_squares_test.cc index 943b28fd40..5f23a99703 100644 --- a/test/sum_squares_test.cc +++ b/test/sum_squares_test.cc @@ -13,7 +13,7 @@ #include <cstdlib> #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/superframe_test.cc b/test/superframe_test.cc index e9b7826998..0f54baeaf4 100644 --- a/test/superframe_test.cc +++ b/test/superframe_test.cc @@ -10,7 +10,7 @@ */ #include <climits> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/test_intra_pred_speed.cc b/test/test_intra_pred_speed.cc index ce4b3c1d24..5c8c554c40 100644 --- a/test/test_intra_pred_speed.cc +++ b/test/test_intra_pred_speed.cc @@ -14,7 +14,7 @@ #include <stdio.h> #include <string.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_dsp_rtcd.h" #include "test/acm_random.h" diff --git a/test/test_libaom.cc b/test/test_libaom.cc index 745ee631e7..6d83ce66e7 100644 --- a/test/test_libaom.cc +++ b/test/test_libaom.cc @@ -11,7 +11,7 @@ #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #if ARCH_X86 || ARCH_X86_64 diff --git a/test/tile_independence_test.cc b/test/tile_independence_test.cc index f5f843648d..a98faff69b 100644 --- a/test/tile_independence_test.cc +++ b/test/tile_independence_test.cc @@ -12,7 +12,7 @@ #include <cstdio> #include <cstdlib> #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "test/codec_factory.h" #include "test/encode_test_driver.h" #include "test/i420_video_source.h" diff --git a/test/user_priv_test.cc b/test/user_priv_test.cc index 11657fb8f4..3052b27b1c 100644 --- a/test/user_priv_test.cc +++ b/test/user_priv_test.cc @@ -12,7 +12,7 @@ #include <cstdio> #include <cstdlib> #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "test/acm_random.h" #include "test/codec_factory.h" diff --git a/test/util.h b/test/util.h index f63fda100f..a20fab65cc 100644 --- a/test/util.h +++ b/test/util.h @@ -14,7 +14,7 @@ #include <stdio.h> #include <math.h> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "aom/aom_image.h" // Macros diff --git a/test/variance_test.cc b/test/variance_test.cc index 7848e20f32..2ae9bd9ffd 100644 --- a/test/variance_test.cc +++ b/test/variance_test.cc @@ -12,7 +12,7 @@ #include <cstdlib> #include <new> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./aom_dsp_rtcd.h" diff --git a/test/warp_filter_test.cc b/test/warp_filter_test.cc index 7e7aba6b93..9dfee61006 100644 --- a/test/warp_filter_test.cc +++ b/test/warp_filter_test.cc @@ -9,7 +9,7 @@ * PATENTS file, you can obtain it at www.aomedia.org/license/patent. */ -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./av1_rtcd.h" #include "./aom_dsp_rtcd.h" diff --git a/test/y4m_test.cc b/test/y4m_test.cc index c4755f78de..fc9fff5142 100644 --- a/test/y4m_test.cc +++ b/test/y4m_test.cc @@ -11,7 +11,7 @@ #include <string> -#include "third_party/googletest/src/include/gtest/gtest.h" +#include "third_party/googletest/src/googletest/include/gtest/gtest.h" #include "./aom_config.h" #include "./y4menc.h" diff --git a/third_party/googletest/gtest.mk b/third_party/googletest/gtest.mk index 0de3113c7a..fc4dbdc240 100644 --- a/third_party/googletest/gtest.mk +++ b/third_party/googletest/gtest.mk @@ -1 +1 @@ -GTEST_SRCS-yes += src/gtest-all.cc +GTEST_SRCS-yes += googletest/src/googletest/src/gtest-all.cc diff --git a/third_party/googletest/src/.gitignore b/third_party/googletest/src/.gitignore new file mode 100644 index 0000000000..ce310bc357 --- /dev/null +++ b/third_party/googletest/src/.gitignore @@ -0,0 +1,2 @@ +# Ignore CI build directory +build/ diff --git a/third_party/googletest/src/.travis.yml b/third_party/googletest/src/.travis.yml new file mode 100644 index 0000000000..3204dfac17 --- /dev/null +++ b/third_party/googletest/src/.travis.yml @@ -0,0 +1,46 @@ +# Build matrix / environment variable are explained on: +# http://about.travis-ci.org/docs/user/build-configuration/ +# This file can be validated on: +# http://lint.travis-ci.org/ + +install: +# /usr/bin/gcc is 4.6 always, but gcc-X.Y is available. +- if [ "$CXX" = "g++" ]; then export CXX="g++-4.9" CC="gcc-4.9"; fi +# /usr/bin/clang is 3.4, lets override with modern one. +- if [ "$CXX" = "clang++" ] && [ "$TRAVIS_OS_NAME" = "linux" ]; then export CXX="clang++-3.7" CC="clang-3.7"; fi +- echo ${PATH} +- echo ${CXX} +- ${CXX} --version +- ${CXX} -v +addons: + apt: + # List of whitelisted in travis packages for ubuntu-precise can be found here: + # https://github.com/travis-ci/apt-package-whitelist/blob/master/ubuntu-precise + # List of whitelisted in travis apt-sources: + # https://github.com/travis-ci/apt-source-whitelist/blob/master/ubuntu.json + sources: + - ubuntu-toolchain-r-test + - llvm-toolchain-precise-3.7 + packages: + - gcc-4.9 + - g++-4.9 + - clang-3.7 + - valgrind +os: + - linux + - osx +language: cpp +compiler: + - gcc + - clang +script: ./travis.sh +env: + matrix: + - GTEST_TARGET=googletest SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=debug VERBOSE_MAKE=true VERBOSE + - GTEST_TARGET=googlemock SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=debug VERBOSE_MAKE=true VERBOSE + - GTEST_TARGET=googlemock SHARED_LIB=OFF STATIC_LIB=ON CMAKE_PKG=OFF BUILD_TYPE=debug CXX_FLAGS=-std=c++11 VERBOSE_MAKE=true VERBOSE +# - GTEST_TARGET=googletest SHARED_LIB=ON STATIC_LIB=ON CMAKE_PKG=ON BUILD_TYPE=release VERBOSE_MAKE=false +# - GTEST_TARGET=googlemock SHARED_LIB=ON STATIC_LIB=ON CMAKE_PKG=ON BUILD_TYPE=release VERBOSE_MAKE=false +notifications: + email: false +sudo: false diff --git a/third_party/googletest/src/googletest/.gitignore b/third_party/googletest/src/googletest/.gitignore new file mode 100644 index 0000000000..4b7be4b91b --- /dev/null +++ b/third_party/googletest/src/googletest/.gitignore @@ -0,0 +1,2 @@ +# python +*.pyc diff --git a/third_party/googletest/src/CHANGES b/third_party/googletest/src/googletest/CHANGES similarity index 100% rename from third_party/googletest/src/CHANGES rename to third_party/googletest/src/googletest/CHANGES diff --git a/third_party/googletest/src/googletest/CMakeLists.txt b/third_party/googletest/src/googletest/CMakeLists.txt new file mode 100644 index 0000000000..621d0f0421 --- /dev/null +++ b/third_party/googletest/src/googletest/CMakeLists.txt @@ -0,0 +1,286 @@ +######################################################################## +# CMake build script for Google Test. +# +# To run the tests for Google Test itself on Linux, use 'make test' or +# ctest. You can select which tests to run using 'ctest -R regex'. +# For more options, run 'ctest --help'. + +# BUILD_SHARED_LIBS is a standard CMake variable, but we declare it here to +# make it prominent in the GUI. +option(BUILD_SHARED_LIBS "Build shared libraries (DLLs)." OFF) + +# When other libraries are using a shared version of runtime libraries, +# Google Test also has to use one. +option( + gtest_force_shared_crt + "Use shared (DLL) run-time lib even when Google Test is built as static lib." + OFF) + +option(gtest_build_tests "Build all of gtest's own tests." OFF) + +option(gtest_build_samples "Build gtest's sample programs." OFF) + +option(gtest_disable_pthreads "Disable uses of pthreads in gtest." OFF) + +option( + gtest_hide_internal_symbols + "Build gtest with internal symbols hidden in shared libraries." + OFF) + +# Defines pre_project_set_up_hermetic_build() and set_up_hermetic_build(). +include(cmake/hermetic_build.cmake OPTIONAL) + +if (COMMAND pre_project_set_up_hermetic_build) + pre_project_set_up_hermetic_build() +endif() + +######################################################################## +# +# Project-wide settings + +# Name of the project. +# +# CMake files in this project can refer to the root source directory +# as ${gtest_SOURCE_DIR} and to the root binary directory as +# ${gtest_BINARY_DIR}. +# Language "C" is required for find_package(Threads). +project(gtest CXX C) +cmake_minimum_required(VERSION 2.6.2) + +if (COMMAND set_up_hermetic_build) + set_up_hermetic_build() +endif() + +if (gtest_hide_internal_symbols) + set(CMAKE_CXX_VISIBILITY_PRESET hidden) + set(CMAKE_VISIBILITY_INLINES_HIDDEN 1) +endif() + +# Define helper functions and macros used by Google Test. +include(cmake/internal_utils.cmake) + +config_compiler_and_linker() # Defined in internal_utils.cmake. + +# Where Google Test's .h files can be found. +include_directories( + ${gtest_SOURCE_DIR}/include + ${gtest_SOURCE_DIR}) + +# Where Google Test's libraries can be found. +link_directories(${gtest_BINARY_DIR}/src) + +# Summary of tuple support for Microsoft Visual Studio: +# Compiler version(MS) version(cmake) Support +# ---------- ----------- -------------- ----------------------------- +# <= VS 2010 <= 10 <= 1600 Use Google Tests's own tuple. +# VS 2012 11 1700 std::tr1::tuple + _VARIADIC_MAX=10 +# VS 2013 12 1800 std::tr1::tuple +if (MSVC AND MSVC_VERSION EQUAL 1700) + add_definitions(/D _VARIADIC_MAX=10) +endif() + +######################################################################## +# +# Defines the gtest & gtest_main libraries. User tests should link +# with one of them. + +# Google Test libraries. We build them using more strict warnings than what +# are used for other targets, to ensure that gtest can be compiled by a user +# aggressive about warnings. +cxx_library(gtest "${cxx_strict}" src/gtest-all.cc) +cxx_library(gtest_main "${cxx_strict}" src/gtest_main.cc) +target_link_libraries(gtest_main gtest) + +# If the CMake version supports it, attach header directory information +# to the targets for when we are part of a parent build (ie being pulled +# in via add_subdirectory() rather than being a standalone build). +if (DEFINED CMAKE_VERSION AND NOT "${CMAKE_VERSION}" VERSION_LESS "2.8.11") + target_include_directories(gtest INTERFACE "${gtest_SOURCE_DIR}/include") + target_include_directories(gtest_main INTERFACE "${gtest_SOURCE_DIR}/include") +endif() + +######################################################################## +# +# Install rules +install(TARGETS gtest gtest_main + DESTINATION lib) +install(DIRECTORY ${gtest_SOURCE_DIR}/include/gtest + DESTINATION include) + +######################################################################## +# +# Samples on how to link user tests with gtest or gtest_main. +# +# They are not built by default. To build them, set the +# gtest_build_samples option to ON. You can do it by running ccmake +# or specifying the -Dgtest_build_samples=ON flag when running cmake. + +if (gtest_build_samples) + cxx_executable(sample1_unittest samples gtest_main samples/sample1.cc) + cxx_executable(sample2_unittest samples gtest_main samples/sample2.cc) + cxx_executable(sample3_unittest samples gtest_main) + cxx_executable(sample4_unittest samples gtest_main samples/sample4.cc) + cxx_executable(sample5_unittest samples gtest_main samples/sample1.cc) + cxx_executable(sample6_unittest samples gtest_main) + cxx_executable(sample7_unittest samples gtest_main) + cxx_executable(sample8_unittest samples gtest_main) + cxx_executable(sample9_unittest samples gtest) + cxx_executable(sample10_unittest samples gtest) +endif() + +######################################################################## +# +# Google Test's own tests. +# +# You can skip this section if you aren't interested in testing +# Google Test itself. +# +# The tests are not built by default. To build them, set the +# gtest_build_tests option to ON. You can do it by running ccmake +# or specifying the -Dgtest_build_tests=ON flag when running cmake. + +if (gtest_build_tests) + # This must be set in the root directory for the tests to be run by + # 'make test' or ctest. + enable_testing() + + ############################################################ + # C++ tests built with standard compiler flags. + + cxx_test(gtest-death-test_test gtest_main) + cxx_test(gtest_environment_test gtest) + cxx_test(gtest-filepath_test gtest_main) + cxx_test(gtest-linked_ptr_test gtest_main) + cxx_test(gtest-listener_test gtest_main) + cxx_test(gtest_main_unittest gtest_main) + cxx_test(gtest-message_test gtest_main) + cxx_test(gtest_no_test_unittest gtest) + cxx_test(gtest-options_test gtest_main) + cxx_test(gtest-param-test_test gtest + test/gtest-param-test2_test.cc) + cxx_test(gtest-port_test gtest_main) + cxx_test(gtest_pred_impl_unittest gtest_main) + cxx_test(gtest_premature_exit_test gtest + test/gtest_premature_exit_test.cc) + cxx_test(gtest-printers_test gtest_main) + cxx_test(gtest_prod_test gtest_main + test/production.cc) + cxx_test(gtest_repeat_test gtest) + cxx_test(gtest_sole_header_test gtest_main) + cxx_test(gtest_stress_test gtest) + cxx_test(gtest-test-part_test gtest_main) + cxx_test(gtest_throw_on_failure_ex_test gtest) + cxx_test(gtest-typed-test_test gtest_main + test/gtest-typed-test2_test.cc) + cxx_test(gtest_unittest gtest_main) + cxx_test(gtest-unittest-api_test gtest) + + ############################################################ + # C++ tests built with non-standard compiler flags. + + # MSVC 7.1 does not support STL with exceptions disabled. + if (NOT MSVC OR MSVC_VERSION GREATER 1310) + cxx_library(gtest_no_exception "${cxx_no_exception}" + src/gtest-all.cc) + cxx_library(gtest_main_no_exception "${cxx_no_exception}" + src/gtest-all.cc src/gtest_main.cc) + endif() + cxx_library(gtest_main_no_rtti "${cxx_no_rtti}" + src/gtest-all.cc src/gtest_main.cc) + + cxx_test_with_flags(gtest-death-test_ex_nocatch_test + "${cxx_exception} -DGTEST_ENABLE_CATCH_EXCEPTIONS_=0" + gtest test/gtest-death-test_ex_test.cc) + cxx_test_with_flags(gtest-death-test_ex_catch_test + "${cxx_exception} -DGTEST_ENABLE_CATCH_EXCEPTIONS_=1" + gtest test/gtest-death-test_ex_test.cc) + + cxx_test_with_flags(gtest_no_rtti_unittest "${cxx_no_rtti}" + gtest_main_no_rtti test/gtest_unittest.cc) + + cxx_shared_library(gtest_dll "${cxx_default}" + src/gtest-all.cc src/gtest_main.cc) + + cxx_executable_with_flags(gtest_dll_test_ "${cxx_default}" + gtest_dll test/gtest_all_test.cc) + set_target_properties(gtest_dll_test_ + PROPERTIES + COMPILE_DEFINITIONS "GTEST_LINKED_AS_SHARED_LIBRARY=1") + + if (NOT MSVC OR MSVC_VERSION LESS 1600) # 1600 is Visual Studio 2010. + # Visual Studio 2010, 2012, and 2013 define symbols in std::tr1 that + # conflict with our own definitions. Therefore using our own tuple does not + # work on those compilers. + cxx_library(gtest_main_use_own_tuple "${cxx_use_own_tuple}" + src/gtest-all.cc src/gtest_main.cc) + + cxx_test_with_flags(gtest-tuple_test "${cxx_use_own_tuple}" + gtest_main_use_own_tuple test/gtest-tuple_test.cc) + + cxx_test_with_flags(gtest_use_own_tuple_test "${cxx_use_own_tuple}" + gtest_main_use_own_tuple + test/gtest-param-test_test.cc test/gtest-param-test2_test.cc) + endif() + + ############################################################ + # Python tests. + + cxx_executable(gtest_break_on_failure_unittest_ test gtest) + py_test(gtest_break_on_failure_unittest) + + # Visual Studio .NET 2003 does not support STL with exceptions disabled. + if (NOT MSVC OR MSVC_VERSION GREATER 1310) # 1310 is Visual Studio .NET 2003 + cxx_executable_with_flags( + gtest_catch_exceptions_no_ex_test_ + "${cxx_no_exception}" + gtest_main_no_exception + test/gtest_catch_exceptions_test_.cc) + endif() + + cxx_executable_with_flags( + gtest_catch_exceptions_ex_test_ + "${cxx_exception}" + gtest_main + test/gtest_catch_exceptions_test_.cc) + py_test(gtest_catch_exceptions_test) + + cxx_executable(gtest_color_test_ test gtest) + py_test(gtest_color_test) + + cxx_executable(gtest_env_var_test_ test gtest) + py_test(gtest_env_var_test) + + cxx_executable(gtest_filter_unittest_ test gtest) + py_test(gtest_filter_unittest) + + cxx_executable(gtest_help_test_ test gtest_main) + py_test(gtest_help_test) + + cxx_executable(gtest_list_tests_unittest_ test gtest) + py_test(gtest_list_tests_unittest) + + cxx_executable(gtest_output_test_ test gtest) + py_test(gtest_output_test) + + cxx_executable(gtest_shuffle_test_ test gtest) + py_test(gtest_shuffle_test) + + # MSVC 7.1 does not support STL with exceptions disabled. + if (NOT MSVC OR MSVC_VERSION GREATER 1310) + cxx_executable(gtest_throw_on_failure_test_ test gtest_no_exception) + set_target_properties(gtest_throw_on_failure_test_ + PROPERTIES + COMPILE_FLAGS "${cxx_no_exception}") + py_test(gtest_throw_on_failure_test) + endif() + + cxx_executable(gtest_uninitialized_test_ test gtest) + py_test(gtest_uninitialized_test) + + cxx_executable(gtest_xml_outfile1_test_ test gtest_main) + cxx_executable(gtest_xml_outfile2_test_ test gtest_main) + py_test(gtest_xml_outfiles_test) + + cxx_executable(gtest_xml_output_unittest_ test gtest) + py_test(gtest_xml_output_unittest) +endif() diff --git a/third_party/googletest/src/CONTRIBUTORS b/third_party/googletest/src/googletest/CONTRIBUTORS similarity index 100% rename from third_party/googletest/src/CONTRIBUTORS rename to third_party/googletest/src/googletest/CONTRIBUTORS diff --git a/third_party/googletest/src/LICENSE b/third_party/googletest/src/googletest/LICENSE similarity index 100% rename from third_party/googletest/src/LICENSE rename to third_party/googletest/src/googletest/LICENSE diff --git a/third_party/googletest/src/googletest/Makefile.am b/third_party/googletest/src/googletest/Makefile.am new file mode 100644 index 0000000000..29797e4e9d --- /dev/null +++ b/third_party/googletest/src/googletest/Makefile.am @@ -0,0 +1,310 @@ +# Automake file + +ACLOCAL_AMFLAGS = -I m4 + +# Nonstandard package files for distribution +EXTRA_DIST = \ + CHANGES \ + CONTRIBUTORS \ + LICENSE \ + include/gtest/gtest-param-test.h.pump \ + include/gtest/internal/gtest-param-util-generated.h.pump \ + include/gtest/internal/gtest-tuple.h.pump \ + include/gtest/internal/gtest-type-util.h.pump \ + make/Makefile \ + scripts/fuse_gtest_files.py \ + scripts/gen_gtest_pred_impl.py \ + scripts/pump.py \ + scripts/test/Makefile + +# gtest source files that we don't compile directly. They are +# #included by gtest-all.cc. +GTEST_SRC = \ + src/gtest-death-test.cc \ + src/gtest-filepath.cc \ + src/gtest-internal-inl.h \ + src/gtest-port.cc \ + src/gtest-printers.cc \ + src/gtest-test-part.cc \ + src/gtest-typed-test.cc \ + src/gtest.cc + +EXTRA_DIST += $(GTEST_SRC) + +# Sample files that we don't compile. +EXTRA_DIST += \ + samples/prime_tables.h \ + samples/sample2_unittest.cc \ + samples/sample3_unittest.cc \ + samples/sample4_unittest.cc \ + samples/sample5_unittest.cc \ + samples/sample6_unittest.cc \ + samples/sample7_unittest.cc \ + samples/sample8_unittest.cc \ + samples/sample9_unittest.cc + +# C++ test files that we don't compile directly. +EXTRA_DIST += \ + test/gtest-death-test_ex_test.cc \ + test/gtest-death-test_test.cc \ + test/gtest-filepath_test.cc \ + test/gtest-linked_ptr_test.cc \ + test/gtest-listener_test.cc \ + test/gtest-message_test.cc \ + test/gtest-options_test.cc \ + test/gtest-param-test2_test.cc \ + test/gtest-param-test2_test.cc \ + test/gtest-param-test_test.cc \ + test/gtest-param-test_test.cc \ + test/gtest-param-test_test.h \ + test/gtest-port_test.cc \ + test/gtest_premature_exit_test.cc \ + test/gtest-printers_test.cc \ + test/gtest-test-part_test.cc \ + test/gtest-tuple_test.cc \ + test/gtest-typed-test2_test.cc \ + test/gtest-typed-test_test.cc \ + test/gtest-typed-test_test.h \ + test/gtest-unittest-api_test.cc \ + test/gtest_break_on_failure_unittest_.cc \ + test/gtest_catch_exceptions_test_.cc \ + test/gtest_color_test_.cc \ + test/gtest_env_var_test_.cc \ + test/gtest_environment_test.cc \ + test/gtest_filter_unittest_.cc \ + test/gtest_help_test_.cc \ + test/gtest_list_tests_unittest_.cc \ + test/gtest_main_unittest.cc \ + test/gtest_no_test_unittest.cc \ + test/gtest_output_test_.cc \ + test/gtest_pred_impl_unittest.cc \ + test/gtest_prod_test.cc \ + test/gtest_repeat_test.cc \ + test/gtest_shuffle_test_.cc \ + test/gtest_sole_header_test.cc \ + test/gtest_stress_test.cc \ + test/gtest_throw_on_failure_ex_test.cc \ + test/gtest_throw_on_failure_test_.cc \ + test/gtest_uninitialized_test_.cc \ + test/gtest_unittest.cc \ + test/gtest_unittest.cc \ + test/gtest_xml_outfile1_test_.cc \ + test/gtest_xml_outfile2_test_.cc \ + test/gtest_xml_output_unittest_.cc \ + test/production.cc \ + test/production.h + +# Python tests that we don't run. +EXTRA_DIST += \ + test/gtest_break_on_failure_unittest.py \ + test/gtest_catch_exceptions_test.py \ + test/gtest_color_test.py \ + test/gtest_env_var_test.py \ + test/gtest_filter_unittest.py \ + test/gtest_help_test.py \ + test/gtest_list_tests_unittest.py \ + test/gtest_output_test.py \ + test/gtest_output_test_golden_lin.txt \ + test/gtest_shuffle_test.py \ + test/gtest_test_utils.py \ + test/gtest_throw_on_failure_test.py \ + test/gtest_uninitialized_test.py \ + test/gtest_xml_outfiles_test.py \ + test/gtest_xml_output_unittest.py \ + test/gtest_xml_test_utils.py + +# CMake script +EXTRA_DIST += \ + CMakeLists.txt \ + cmake/internal_utils.cmake + +# MSVC project files +EXTRA_DIST += \ + msvc/gtest-md.sln \ + msvc/gtest-md.vcproj \ + msvc/gtest.sln \ + msvc/gtest.vcproj \ + msvc/gtest_main-md.vcproj \ + msvc/gtest_main.vcproj \ + msvc/gtest_prod_test-md.vcproj \ + msvc/gtest_prod_test.vcproj \ + msvc/gtest_unittest-md.vcproj \ + msvc/gtest_unittest.vcproj + +# xcode project files +EXTRA_DIST += \ + xcode/Config/DebugProject.xcconfig \ + xcode/Config/FrameworkTarget.xcconfig \ + xcode/Config/General.xcconfig \ + xcode/Config/ReleaseProject.xcconfig \ + xcode/Config/StaticLibraryTarget.xcconfig \ + xcode/Config/TestTarget.xcconfig \ + xcode/Resources/Info.plist \ + xcode/Scripts/runtests.sh \ + xcode/Scripts/versiongenerate.py \ + xcode/gtest.xcodeproj/project.pbxproj + +# xcode sample files +EXTRA_DIST += \ + xcode/Samples/FrameworkSample/Info.plist \ + xcode/Samples/FrameworkSample/WidgetFramework.xcodeproj/project.pbxproj \ + xcode/Samples/FrameworkSample/runtests.sh \ + xcode/Samples/FrameworkSample/widget.cc \ + xcode/Samples/FrameworkSample/widget.h \ + xcode/Samples/FrameworkSample/widget_test.cc + +# C++Builder project files +EXTRA_DIST += \ + codegear/gtest.cbproj \ + codegear/gtest.groupproj \ + codegear/gtest_all.cc \ + codegear/gtest_link.cc \ + codegear/gtest_main.cbproj \ + codegear/gtest_unittest.cbproj + +# Distribute and install M4 macro +m4datadir = $(datadir)/aclocal +m4data_DATA = m4/gtest.m4 +EXTRA_DIST += $(m4data_DATA) + +# We define the global AM_CPPFLAGS as everything we compile includes from these +# directories. +AM_CPPFLAGS = -I$(srcdir) -I$(srcdir)/include + +# Modifies compiler and linker flags for pthreads compatibility. +if HAVE_PTHREADS + AM_CXXFLAGS = @PTHREAD_CFLAGS@ -DGTEST_HAS_PTHREAD=1 + AM_LIBS = @PTHREAD_LIBS@ +else + AM_CXXFLAGS = -DGTEST_HAS_PTHREAD=0 +endif + +# Build rules for libraries. +lib_LTLIBRARIES = lib/libgtest.la lib/libgtest_main.la + +lib_libgtest_la_SOURCES = src/gtest-all.cc + +pkginclude_HEADERS = \ + include/gtest/gtest-death-test.h \ + include/gtest/gtest-message.h \ + include/gtest/gtest-param-test.h \ + include/gtest/gtest-printers.h \ + include/gtest/gtest-spi.h \ + include/gtest/gtest-test-part.h \ + include/gtest/gtest-typed-test.h \ + include/gtest/gtest.h \ + include/gtest/gtest_pred_impl.h \ + include/gtest/gtest_prod.h + +pkginclude_internaldir = $(pkgincludedir)/internal +pkginclude_internal_HEADERS = \ + include/gtest/internal/gtest-death-test-internal.h \ + include/gtest/internal/gtest-filepath.h \ + include/gtest/internal/gtest-internal.h \ + include/gtest/internal/gtest-linked_ptr.h \ + include/gtest/internal/gtest-param-util-generated.h \ + include/gtest/internal/gtest-param-util.h \ + include/gtest/internal/gtest-port.h \ + include/gtest/internal/gtest-port-arch.h \ + include/gtest/internal/gtest-string.h \ + include/gtest/internal/gtest-tuple.h \ + include/gtest/internal/gtest-type-util.h \ + include/gtest/internal/custom/gtest.h \ + include/gtest/internal/custom/gtest-port.h \ + include/gtest/internal/custom/gtest-printers.h + +lib_libgtest_main_la_SOURCES = src/gtest_main.cc +lib_libgtest_main_la_LIBADD = lib/libgtest.la + +# Bulid rules for samples and tests. Automake's naming for some of +# these variables isn't terribly obvious, so this is a brief +# reference: +# +# TESTS -- Programs run automatically by "make check" +# check_PROGRAMS -- Programs built by "make check" but not necessarily run + +noinst_LTLIBRARIES = samples/libsamples.la + +samples_libsamples_la_SOURCES = \ + samples/sample1.cc \ + samples/sample1.h \ + samples/sample2.cc \ + samples/sample2.h \ + samples/sample3-inl.h \ + samples/sample4.cc \ + samples/sample4.h + +TESTS= +TESTS_ENVIRONMENT = GTEST_SOURCE_DIR="$(srcdir)/test" \ + GTEST_BUILD_DIR="$(top_builddir)/test" +check_PROGRAMS= + +# A simple sample on using gtest. +TESTS += samples/sample1_unittest +check_PROGRAMS += samples/sample1_unittest +samples_sample1_unittest_SOURCES = samples/sample1_unittest.cc +samples_sample1_unittest_LDADD = lib/libgtest_main.la \ + lib/libgtest.la \ + samples/libsamples.la + +# Another sample. It also verifies that libgtest works. +TESTS += samples/sample10_unittest +check_PROGRAMS += samples/sample10_unittest +samples_sample10_unittest_SOURCES = samples/sample10_unittest.cc +samples_sample10_unittest_LDADD = lib/libgtest.la + +# This tests most constructs of gtest and verifies that libgtest_main +# and libgtest work. +TESTS += test/gtest_all_test +check_PROGRAMS += test/gtest_all_test +test_gtest_all_test_SOURCES = test/gtest_all_test.cc +test_gtest_all_test_LDADD = lib/libgtest_main.la \ + lib/libgtest.la + +# Tests that fused gtest files compile and work. +FUSED_GTEST_SRC = \ + fused-src/gtest/gtest-all.cc \ + fused-src/gtest/gtest.h \ + fused-src/gtest/gtest_main.cc + +if HAVE_PYTHON +TESTS += test/fused_gtest_test +check_PROGRAMS += test/fused_gtest_test +test_fused_gtest_test_SOURCES = $(FUSED_GTEST_SRC) \ + samples/sample1.cc samples/sample1_unittest.cc +test_fused_gtest_test_CPPFLAGS = -I"$(srcdir)/fused-src" + +# Build rules for putting fused Google Test files into the distribution +# package. The user can also create those files by manually running +# scripts/fuse_gtest_files.py. +$(test_fused_gtest_test_SOURCES): fused-gtest + +fused-gtest: $(pkginclude_HEADERS) $(pkginclude_internal_HEADERS) \ + $(GTEST_SRC) src/gtest-all.cc src/gtest_main.cc \ + scripts/fuse_gtest_files.py + mkdir -p "$(srcdir)/fused-src" + chmod -R u+w "$(srcdir)/fused-src" + rm -f "$(srcdir)/fused-src/gtest/gtest-all.cc" + rm -f "$(srcdir)/fused-src/gtest/gtest.h" + "$(srcdir)/scripts/fuse_gtest_files.py" "$(srcdir)/fused-src" + cp -f "$(srcdir)/src/gtest_main.cc" "$(srcdir)/fused-src/gtest/" + +maintainer-clean-local: + rm -rf "$(srcdir)/fused-src" +endif + +# Death tests may produce core dumps in the build directory. In case +# this happens, clean them to keep distcleancheck happy. +CLEANFILES = core + +# Disables 'make install' as installing a compiled version of Google +# Test can lead to undefined behavior due to violation of the +# One-Definition Rule. + +install-exec-local: + echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system." + false + +install-data-local: + echo "'make install' is dangerous and not supported. Instead, see README for how to integrate Google Test into your build system." + false diff --git a/third_party/googletest/src/README.md b/third_party/googletest/src/googletest/README.md similarity index 100% rename from third_party/googletest/src/README.md rename to third_party/googletest/src/googletest/README.md diff --git a/third_party/googletest/src/googletest/cmake/internal_utils.cmake b/third_party/googletest/src/googletest/cmake/internal_utils.cmake new file mode 100644 index 0000000000..777b91ed4b --- /dev/null +++ b/third_party/googletest/src/googletest/cmake/internal_utils.cmake @@ -0,0 +1,254 @@ +# Defines functions and macros useful for building Google Test and +# Google Mock. +# +# Note: +# +# - This file will be run twice when building Google Mock (once via +# Google Test's CMakeLists.txt, and once via Google Mock's). +# Therefore it shouldn't have any side effects other than defining +# the functions and macros. +# +# - The functions/macros defined in this file may depend on Google +# Test and Google Mock's option() definitions, and thus must be +# called *after* the options have been defined. + +# Tweaks CMake's default compiler/linker settings to suit Google Test's needs. +# +# This must be a macro(), as inside a function string() can only +# update variables in the function scope. +macro(fix_default_compiler_settings_) + if (MSVC) + # For MSVC, CMake sets certain flags to defaults we want to override. + # This replacement code is taken from sample in the CMake Wiki at + # http://www.cmake.org/Wiki/CMake_FAQ#Dynamic_Replace. + foreach (flag_var + CMAKE_CXX_FLAGS CMAKE_CXX_FLAGS_DEBUG CMAKE_CXX_FLAGS_RELEASE + CMAKE_CXX_FLAGS_MINSIZEREL CMAKE_CXX_FLAGS_RELWITHDEBINFO) + if (NOT BUILD_SHARED_LIBS AND NOT gtest_force_shared_crt) + # When Google Test is built as a shared library, it should also use + # shared runtime libraries. Otherwise, it may end up with multiple + # copies of runtime library data in different modules, resulting in + # hard-to-find crashes. When it is built as a static library, it is + # preferable to use CRT as static libraries, as we don't have to rely + # on CRT DLLs being available. CMake always defaults to using shared + # CRT libraries, so we override that default here. + string(REPLACE "/MD" "-MT" ${flag_var} "${${flag_var}}") + endif() + + # We prefer more strict warning checking for building Google Test. + # Replaces /W3 with /W4 in defaults. + string(REPLACE "/W3" "/W4" ${flag_var} "${${flag_var}}") + endforeach() + endif() +endmacro() + +# Defines the compiler/linker flags used to build Google Test and +# Google Mock. You can tweak these definitions to suit your need. A +# variable's value is empty before it's explicitly assigned to. +macro(config_compiler_and_linker) + if (NOT gtest_disable_pthreads) + # Defines CMAKE_USE_PTHREADS_INIT and CMAKE_THREAD_LIBS_INIT. + find_package(Threads) + endif() + + fix_default_compiler_settings_() + if (MSVC) + # Newlines inside flags variables break CMake's NMake generator. + # TODO(vladl@google.com): Add -RTCs and -RTCu to debug builds. + set(cxx_base_flags "-GS -W4 -WX -wd4251 -wd4275 -nologo -J -Zi") + if (MSVC_VERSION LESS 1400) # 1400 is Visual Studio 2005 + # Suppress spurious warnings MSVC 7.1 sometimes issues. + # Forcing value to bool. + set(cxx_base_flags "${cxx_base_flags} -wd4800") + # Copy constructor and assignment operator could not be generated. + set(cxx_base_flags "${cxx_base_flags} -wd4511 -wd4512") + # Compatibility warnings not applicable to Google Test. + # Resolved overload was found by argument-dependent lookup. + set(cxx_base_flags "${cxx_base_flags} -wd4675") + endif() + if (MSVC_VERSION LESS 1500) # 1500 is Visual Studio 2008 + # Conditional expression is constant. + # When compiling with /W4, we get several instances of C4127 + # (Conditional expression is constant). In our code, we disable that + # warning on a case-by-case basis. However, on Visual Studio 2005, + # the warning fires on std::list. Therefore on that compiler and earlier, + # we disable the warning project-wide. + set(cxx_base_flags "${cxx_base_flags} -wd4127") + endif() + if (NOT (MSVC_VERSION LESS 1700)) # 1700 is Visual Studio 2012. + # Suppress "unreachable code" warning on VS 2012 and later. + # http://stackoverflow.com/questions/3232669 explains the issue. + set(cxx_base_flags "${cxx_base_flags} -wd4702") + endif() + if (NOT (MSVC_VERSION GREATER 1900)) # 1900 is Visual Studio 2015 + # BigObj required for tests. + set(cxx_base_flags "${cxx_base_flags} -bigobj") + endif() + + set(cxx_base_flags "${cxx_base_flags} -D_UNICODE -DUNICODE -DWIN32 -D_WIN32") + set(cxx_base_flags "${cxx_base_flags} -DSTRICT -DWIN32_LEAN_AND_MEAN") + set(cxx_exception_flags "-EHsc -D_HAS_EXCEPTIONS=1") + set(cxx_no_exception_flags "-D_HAS_EXCEPTIONS=0") + set(cxx_no_rtti_flags "-GR-") + elseif (CMAKE_COMPILER_IS_GNUCXX) + set(cxx_base_flags "-Wall -Wshadow") + set(cxx_exception_flags "-fexceptions") + set(cxx_no_exception_flags "-fno-exceptions") + # Until version 4.3.2, GCC doesn't define a macro to indicate + # whether RTTI is enabled. Therefore we define GTEST_HAS_RTTI + # explicitly. + set(cxx_no_rtti_flags "-fno-rtti -DGTEST_HAS_RTTI=0") + set(cxx_strict_flags + "-Wextra -Wno-unused-parameter -Wno-missing-field-initializers") + elseif (CMAKE_CXX_COMPILER_ID STREQUAL "SunPro") + set(cxx_exception_flags "-features=except") + # Sun Pro doesn't provide macros to indicate whether exceptions and + # RTTI are enabled, so we define GTEST_HAS_* explicitly. + set(cxx_no_exception_flags "-features=no%except -DGTEST_HAS_EXCEPTIONS=0") + set(cxx_no_rtti_flags "-features=no%rtti -DGTEST_HAS_RTTI=0") + elseif (CMAKE_CXX_COMPILER_ID STREQUAL "VisualAge" OR + CMAKE_CXX_COMPILER_ID STREQUAL "XL") + # CMake 2.8 changes Visual Age's compiler ID to "XL". + set(cxx_exception_flags "-qeh") + set(cxx_no_exception_flags "-qnoeh") + # Until version 9.0, Visual Age doesn't define a macro to indicate + # whether RTTI is enabled. Therefore we define GTEST_HAS_RTTI + # explicitly. + set(cxx_no_rtti_flags "-qnortti -DGTEST_HAS_RTTI=0") + elseif (CMAKE_CXX_COMPILER_ID STREQUAL "HP") + set(cxx_base_flags "-AA -mt") + set(cxx_exception_flags "-DGTEST_HAS_EXCEPTIONS=1") + set(cxx_no_exception_flags "+noeh -DGTEST_HAS_EXCEPTIONS=0") + # RTTI can not be disabled in HP aCC compiler. + set(cxx_no_rtti_flags "") + endif() + + if (CMAKE_USE_PTHREADS_INIT) # The pthreads library is available and allowed. + set(cxx_base_flags "${cxx_base_flags} -DGTEST_HAS_PTHREAD=1") + else() + set(cxx_base_flags "${cxx_base_flags} -DGTEST_HAS_PTHREAD=0") + endif() + + # For building gtest's own tests and samples. + set(cxx_exception "${CMAKE_CXX_FLAGS} ${cxx_base_flags} ${cxx_exception_flags}") + set(cxx_no_exception + "${CMAKE_CXX_FLAGS} ${cxx_base_flags} ${cxx_no_exception_flags}") + set(cxx_default "${cxx_exception}") + set(cxx_no_rtti "${cxx_default} ${cxx_no_rtti_flags}") + set(cxx_use_own_tuple "${cxx_default} -DGTEST_USE_OWN_TR1_TUPLE=1") + + # For building the gtest libraries. + set(cxx_strict "${cxx_default} ${cxx_strict_flags}") +endmacro() + +# Defines the gtest & gtest_main libraries. User tests should link +# with one of them. +function(cxx_library_with_type name type cxx_flags) + # type can be either STATIC or SHARED to denote a static or shared library. + # ARGN refers to additional arguments after 'cxx_flags'. + add_library(${name} ${type} ${ARGN}) + set_target_properties(${name} + PROPERTIES + COMPILE_FLAGS "${cxx_flags}") + if (BUILD_SHARED_LIBS OR type STREQUAL "SHARED") + set_target_properties(${name} + PROPERTIES + COMPILE_DEFINITIONS "GTEST_CREATE_SHARED_LIBRARY=1") + endif() + if (CMAKE_USE_PTHREADS_INIT) + target_link_libraries(${name} ${CMAKE_THREAD_LIBS_INIT}) + endif() +endfunction() + +######################################################################## +# +# Helper functions for creating build targets. + +function(cxx_shared_library name cxx_flags) + cxx_library_with_type(${name} SHARED "${cxx_flags}" ${ARGN}) +endfunction() + +function(cxx_library name cxx_flags) + cxx_library_with_type(${name} "" "${cxx_flags}" ${ARGN}) +endfunction() + +# cxx_executable_with_flags(name cxx_flags libs srcs...) +# +# creates a named C++ executable that depends on the given libraries and +# is built from the given source files with the given compiler flags. +function(cxx_executable_with_flags name cxx_flags libs) + add_executable(${name} ${ARGN}) + if (cxx_flags) + set_target_properties(${name} + PROPERTIES + COMPILE_FLAGS "${cxx_flags}") + endif() + if (BUILD_SHARED_LIBS) + set_target_properties(${name} + PROPERTIES + COMPILE_DEFINITIONS "GTEST_LINKED_AS_SHARED_LIBRARY=1") + endif() + # To support mixing linking in static and dynamic libraries, link each + # library in with an extra call to target_link_libraries. + foreach (lib "${libs}") + target_link_libraries(${name} ${lib}) + endforeach() +endfunction() + +# cxx_executable(name dir lib srcs...) +# +# creates a named target that depends on the given libs and is built +# from the given source files. dir/name.cc is implicitly included in +# the source file list. +function(cxx_executable name dir libs) + cxx_executable_with_flags( + ${name} "${cxx_default}" "${libs}" "${dir}/${name}.cc" ${ARGN}) +endfunction() + +# Sets PYTHONINTERP_FOUND and PYTHON_EXECUTABLE. +find_package(PythonInterp) + +# cxx_test_with_flags(name cxx_flags libs srcs...) +# +# creates a named C++ test that depends on the given libs and is built +# from the given source files with the given compiler flags. +function(cxx_test_with_flags name cxx_flags libs) + cxx_executable_with_flags(${name} "${cxx_flags}" "${libs}" ${ARGN}) + add_test(${name} ${name}) +endfunction() + +# cxx_test(name libs srcs...) +# +# creates a named test target that depends on the given libs and is +# built from the given source files. Unlike cxx_test_with_flags, +# test/name.cc is already implicitly included in the source file list. +function(cxx_test name libs) + cxx_test_with_flags("${name}" "${cxx_default}" "${libs}" + "test/${name}.cc" ${ARGN}) +endfunction() + +# py_test(name) +# +# creates a Python test with the given name whose main module is in +# test/name.py. It does nothing if Python is not installed. +function(py_test name) + # We are not supporting Python tests on Linux yet as they consider + # all Linux environments to be google3 and try to use google3 features. + if (PYTHONINTERP_FOUND) + # ${CMAKE_BINARY_DIR} is known at configuration time, so we can + # directly bind it from cmake. ${CTEST_CONFIGURATION_TYPE} is known + # only at ctest runtime (by calling ctest -c <Configuration>), so + # we have to escape $ to delay variable substitution here. + if (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1) + add_test( + NAME ${name} + COMMAND ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py + --build_dir=${CMAKE_CURRENT_BINARY_DIR}/$<CONFIGURATION>) + else (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1) + add_test( + ${name} + ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_SOURCE_DIR}/test/${name}.py + --build_dir=${CMAKE_CURRENT_BINARY_DIR}/\${CTEST_CONFIGURATION_TYPE}) + endif (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 3.1) + endif() +endfunction() diff --git a/third_party/googletest/src/include/gtest/gtest-death-test.h b/third_party/googletest/src/googletest/include/gtest/gtest-death-test.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-death-test.h rename to third_party/googletest/src/googletest/include/gtest/gtest-death-test.h diff --git a/third_party/googletest/src/include/gtest/gtest-message.h b/third_party/googletest/src/googletest/include/gtest/gtest-message.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-message.h rename to third_party/googletest/src/googletest/include/gtest/gtest-message.h diff --git a/third_party/googletest/src/include/gtest/gtest-param-test.h b/third_party/googletest/src/googletest/include/gtest/gtest-param-test.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-param-test.h rename to third_party/googletest/src/googletest/include/gtest/gtest-param-test.h diff --git a/third_party/googletest/src/include/gtest/gtest-param-test.h.pump b/third_party/googletest/src/googletest/include/gtest/gtest-param-test.h.pump similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-param-test.h.pump rename to third_party/googletest/src/googletest/include/gtest/gtest-param-test.h.pump diff --git a/third_party/googletest/src/include/gtest/gtest-printers.h b/third_party/googletest/src/googletest/include/gtest/gtest-printers.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-printers.h rename to third_party/googletest/src/googletest/include/gtest/gtest-printers.h diff --git a/third_party/googletest/src/include/gtest/gtest-spi.h b/third_party/googletest/src/googletest/include/gtest/gtest-spi.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-spi.h rename to third_party/googletest/src/googletest/include/gtest/gtest-spi.h diff --git a/third_party/googletest/src/include/gtest/gtest-test-part.h b/third_party/googletest/src/googletest/include/gtest/gtest-test-part.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-test-part.h rename to third_party/googletest/src/googletest/include/gtest/gtest-test-part.h diff --git a/third_party/googletest/src/include/gtest/gtest-typed-test.h b/third_party/googletest/src/googletest/include/gtest/gtest-typed-test.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest-typed-test.h rename to third_party/googletest/src/googletest/include/gtest/gtest-typed-test.h diff --git a/third_party/googletest/src/include/gtest/gtest.h b/third_party/googletest/src/googletest/include/gtest/gtest.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest.h rename to third_party/googletest/src/googletest/include/gtest/gtest.h diff --git a/third_party/googletest/src/include/gtest/gtest_pred_impl.h b/third_party/googletest/src/googletest/include/gtest/gtest_pred_impl.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest_pred_impl.h rename to third_party/googletest/src/googletest/include/gtest/gtest_pred_impl.h diff --git a/third_party/googletest/src/include/gtest/gtest_prod.h b/third_party/googletest/src/googletest/include/gtest/gtest_prod.h similarity index 100% rename from third_party/googletest/src/include/gtest/gtest_prod.h rename to third_party/googletest/src/googletest/include/gtest/gtest_prod.h diff --git a/third_party/googletest/src/include/gtest/internal/custom/gtest-port.h b/third_party/googletest/src/googletest/include/gtest/internal/custom/gtest-port.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/custom/gtest-port.h rename to third_party/googletest/src/googletest/include/gtest/internal/custom/gtest-port.h diff --git a/third_party/googletest/src/include/gtest/internal/custom/gtest-printers.h b/third_party/googletest/src/googletest/include/gtest/internal/custom/gtest-printers.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/custom/gtest-printers.h rename to third_party/googletest/src/googletest/include/gtest/internal/custom/gtest-printers.h diff --git a/third_party/googletest/src/include/gtest/internal/custom/gtest.h b/third_party/googletest/src/googletest/include/gtest/internal/custom/gtest.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/custom/gtest.h rename to third_party/googletest/src/googletest/include/gtest/internal/custom/gtest.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-death-test-internal.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-death-test-internal.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-death-test-internal.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-death-test-internal.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-filepath.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-filepath.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-filepath.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-filepath.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-internal.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-internal.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-internal.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-internal.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-linked_ptr.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-linked_ptr.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-linked_ptr.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-linked_ptr.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-param-util-generated.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-param-util-generated.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-param-util-generated.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-param-util-generated.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-param-util-generated.h.pump b/third_party/googletest/src/googletest/include/gtest/internal/gtest-param-util-generated.h.pump similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-param-util-generated.h.pump rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-param-util-generated.h.pump diff --git a/third_party/googletest/src/include/gtest/internal/gtest-param-util.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-param-util.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-param-util.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-param-util.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-port-arch.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-port-arch.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-port-arch.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-port-arch.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-port.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-port.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-port.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-port.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-string.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-string.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-string.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-string.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-tuple.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-tuple.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-tuple.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-tuple.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-tuple.h.pump b/third_party/googletest/src/googletest/include/gtest/internal/gtest-tuple.h.pump similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-tuple.h.pump rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-tuple.h.pump diff --git a/third_party/googletest/src/include/gtest/internal/gtest-type-util.h b/third_party/googletest/src/googletest/include/gtest/internal/gtest-type-util.h similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-type-util.h rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-type-util.h diff --git a/third_party/googletest/src/include/gtest/internal/gtest-type-util.h.pump b/third_party/googletest/src/googletest/include/gtest/internal/gtest-type-util.h.pump similarity index 100% rename from third_party/googletest/src/include/gtest/internal/gtest-type-util.h.pump rename to third_party/googletest/src/googletest/include/gtest/internal/gtest-type-util.h.pump diff --git a/third_party/googletest/src/src/gtest-all.cc b/third_party/googletest/src/googletest/src/gtest-all.cc similarity index 100% rename from third_party/googletest/src/src/gtest-all.cc rename to third_party/googletest/src/googletest/src/gtest-all.cc diff --git a/third_party/googletest/src/src/gtest-death-test.cc b/third_party/googletest/src/googletest/src/gtest-death-test.cc similarity index 100% rename from third_party/googletest/src/src/gtest-death-test.cc rename to third_party/googletest/src/googletest/src/gtest-death-test.cc diff --git a/third_party/googletest/src/src/gtest-filepath.cc b/third_party/googletest/src/googletest/src/gtest-filepath.cc similarity index 100% rename from third_party/googletest/src/src/gtest-filepath.cc rename to third_party/googletest/src/googletest/src/gtest-filepath.cc diff --git a/third_party/googletest/src/src/gtest-internal-inl.h b/third_party/googletest/src/googletest/src/gtest-internal-inl.h similarity index 100% rename from third_party/googletest/src/src/gtest-internal-inl.h rename to third_party/googletest/src/googletest/src/gtest-internal-inl.h diff --git a/third_party/googletest/src/src/gtest-port.cc b/third_party/googletest/src/googletest/src/gtest-port.cc similarity index 100% rename from third_party/googletest/src/src/gtest-port.cc rename to third_party/googletest/src/googletest/src/gtest-port.cc diff --git a/third_party/googletest/src/src/gtest-printers.cc b/third_party/googletest/src/googletest/src/gtest-printers.cc similarity index 100% rename from third_party/googletest/src/src/gtest-printers.cc rename to third_party/googletest/src/googletest/src/gtest-printers.cc diff --git a/third_party/googletest/src/src/gtest-test-part.cc b/third_party/googletest/src/googletest/src/gtest-test-part.cc similarity index 100% rename from third_party/googletest/src/src/gtest-test-part.cc rename to third_party/googletest/src/googletest/src/gtest-test-part.cc diff --git a/third_party/googletest/src/src/gtest-typed-test.cc b/third_party/googletest/src/googletest/src/gtest-typed-test.cc similarity index 100% rename from third_party/googletest/src/src/gtest-typed-test.cc rename to third_party/googletest/src/googletest/src/gtest-typed-test.cc diff --git a/third_party/googletest/src/src/gtest.cc b/third_party/googletest/src/googletest/src/gtest.cc similarity index 100% rename from third_party/googletest/src/src/gtest.cc rename to third_party/googletest/src/googletest/src/gtest.cc diff --git a/third_party/googletest/src/src/gtest_main.cc b/third_party/googletest/src/googletest/src/gtest_main.cc similarity index 100% rename from third_party/googletest/src/src/gtest_main.cc rename to third_party/googletest/src/googletest/src/gtest_main.cc -- GitLab