From efbdf7f2320649512569143611f53177c27ba9f6 Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Fri, 15 Nov 2013 10:20:45 +0000 Subject: [PATCH] Move all of the GoogleTest files back to the same locations they occupy externally to simplify our integration of GoogleTest into LLVM. Also, build the single source file gtest-all.cc instead of the individual source files as we don't expect these to change and thus gain nothing from increased incrementality in compiles. This makes our standard build of googletest exactly like upstream's recommended build and the sanitizer's build. It also simplifies the steps of importing a new version should we ever want one. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@194801 91177308-0d34-0410-b5e6-96231b3b80d8 --- utils/unittest/CMakeLists.txt | 9 ++------- utils/unittest/googletest/Makefile | 3 ++- utils/unittest/googletest/README.LLVM | 16 ++-------------- utils/unittest/googletest/{ => src}/gtest-all.cc | 14 +++++++------- .../googletest/{ => src}/gtest-death-test.cc | 2 +- .../googletest/{ => src}/gtest-filepath.cc | 0 .../gtest/internal => src}/gtest-internal-inl.h | 0 .../unittest/googletest/{ => src}/gtest-port.cc | 2 +- .../googletest/{ => src}/gtest-printers.cc | 0 .../googletest/{ => src}/gtest-test-part.cc | 2 +- .../googletest/{ => src}/gtest-typed-test.cc | 0 utils/unittest/googletest/{ => src}/gtest.cc | 2 +- 12 files changed, 17 insertions(+), 33 deletions(-) rename utils/unittest/googletest/{ => src}/gtest-all.cc (89%) rename utils/unittest/googletest/{ => src}/gtest-death-test.cc (99%) rename utils/unittest/googletest/{ => src}/gtest-filepath.cc (100%) rename utils/unittest/googletest/{include/gtest/internal => src}/gtest-internal-inl.h (100%) rename utils/unittest/googletest/{ => src}/gtest-port.cc (99%) rename utils/unittest/googletest/{ => src}/gtest-printers.cc (100%) rename utils/unittest/googletest/{ => src}/gtest-test-part.cc (98%) rename utils/unittest/googletest/{ => src}/gtest-typed-test.cc (100%) rename utils/unittest/googletest/{ => src}/gtest.cc (99%) diff --git a/utils/unittest/CMakeLists.txt b/utils/unittest/CMakeLists.txt index 8bdfee15c19..fd1a048d832 100644 --- a/utils/unittest/CMakeLists.txt +++ b/utils/unittest/CMakeLists.txt @@ -14,6 +14,7 @@ # Where gtest's .h files can be found. include_directories( googletest/include + googletest ) if(WIN32) @@ -38,13 +39,7 @@ if(MSVC AND MSVC_VERSION EQUAL 1700) endif () add_llvm_library(gtest - googletest/gtest.cc - googletest/gtest-death-test.cc - googletest/gtest-filepath.cc - googletest/gtest-port.cc - googletest/gtest-printers.cc - googletest/gtest-test-part.cc - googletest/gtest-typed-test.cc + googletest/src/gtest-all.cc ) add_llvm_library(gtest_main diff --git a/utils/unittest/googletest/Makefile b/utils/unittest/googletest/Makefile index bf736704f54..3d85e7da0ba 100644 --- a/utils/unittest/googletest/Makefile +++ b/utils/unittest/googletest/Makefile @@ -19,6 +19,7 @@ REQUIRES_RTTI = 1 # unittests/Makefile.unittest and ../UnitTestMain/Makefile; ensure that any # changes are made to both. CPP.Flags += -I$(LLVM_SRC_ROOT)/utils/unittest/googletest/include +CPP.Flags += -I$(LLVM_SRC_ROOT)/utils/unittest/googletest CPP.Flags += $(NO_MISSING_FIELD_INITIALIZERS) $(NO_VARIADIC_MACROS) CPP.Flags += -DGTEST_HAS_RTTI=0 # libstdc++'s TR1 header depends on RTTI and uses C++'0x features not @@ -36,6 +37,6 @@ endif NO_INSTALL = 1 -SOURCES = $(filter-out gtest-all.cc, $(notdir $(wildcard $(PROJ_SRC_DIR)/*.cc))) +SOURCES = src/gtest-all.cc include $(LEVEL)/Makefile.common diff --git a/utils/unittest/googletest/README.LLVM b/utils/unittest/googletest/README.LLVM index 3565a3280e4..1a6f0f59f1d 100644 --- a/utils/unittest/googletest/README.LLVM +++ b/utils/unittest/googletest/README.LLVM @@ -10,23 +10,11 @@ Cleaned up as follows: $ rm -f aclocal* CMakeLists.txt configure* Makefile* CHANGES CONTRIBUTORS README $ rm -rf build-aux cmake codegear fused-src m4 make msvc samples scripts test xcode $ rm -f `find . -name \*\.pump` +$ rm -f src/gtest_main.cc -# Move all the source files to the current directory -$ mv src/* . -$ rmdir src - -# Move extra headers into the already-existing internal headers dir -$ mv *.h include/gtest/internal/ - -# Update paths to the included files -$ perl -pi -e 's|^#include "src/|#include "|' gtest-all.cc -$ perl -pi -e 's|^#include "src/|#include "gtest/internal/|' *.cc - -$ rm -f gtest_main.cc - +# Put the license in the consistent place for LLVM. $ mv COPYING LICENSE.TXT - Modified as follows: * To GTestStreamToHelper in include/gtest/internal/gtest-internal.h, added the ability to stream with raw_os_ostream. diff --git a/utils/unittest/googletest/gtest-all.cc b/utils/unittest/googletest/src/gtest-all.cc similarity index 89% rename from utils/unittest/googletest/gtest-all.cc rename to utils/unittest/googletest/src/gtest-all.cc index 97753e5b9d5..0a9cee52233 100644 --- a/utils/unittest/googletest/gtest-all.cc +++ b/utils/unittest/googletest/src/gtest-all.cc @@ -39,10 +39,10 @@ #include "gtest/gtest.h" // The following lines pull in the real gtest *.cc files. -#include "gtest.cc" -#include "gtest-death-test.cc" -#include "gtest-filepath.cc" -#include "gtest-port.cc" -#include "gtest-printers.cc" -#include "gtest-test-part.cc" -#include "gtest-typed-test.cc" +#include "src/gtest.cc" +#include "src/gtest-death-test.cc" +#include "src/gtest-filepath.cc" +#include "src/gtest-port.cc" +#include "src/gtest-printers.cc" +#include "src/gtest-test-part.cc" +#include "src/gtest-typed-test.cc" diff --git a/utils/unittest/googletest/gtest-death-test.cc b/utils/unittest/googletest/src/gtest-death-test.cc similarity index 99% rename from utils/unittest/googletest/gtest-death-test.cc rename to utils/unittest/googletest/src/gtest-death-test.cc index bf7e32c2383..82453f20fd5 100644 --- a/utils/unittest/googletest/gtest-death-test.cc +++ b/utils/unittest/googletest/src/gtest-death-test.cc @@ -63,7 +63,7 @@ // prevent a user from accidentally including gtest-internal-inl.h in // his code. #define GTEST_IMPLEMENTATION_ 1 -#include "gtest/internal/gtest-internal-inl.h" +#include "src/gtest-internal-inl.h" #undef GTEST_IMPLEMENTATION_ namespace testing { diff --git a/utils/unittest/googletest/gtest-filepath.cc b/utils/unittest/googletest/src/gtest-filepath.cc similarity index 100% rename from utils/unittest/googletest/gtest-filepath.cc rename to utils/unittest/googletest/src/gtest-filepath.cc diff --git a/utils/unittest/googletest/include/gtest/internal/gtest-internal-inl.h b/utils/unittest/googletest/src/gtest-internal-inl.h similarity index 100% rename from utils/unittest/googletest/include/gtest/internal/gtest-internal-inl.h rename to utils/unittest/googletest/src/gtest-internal-inl.h diff --git a/utils/unittest/googletest/gtest-port.cc b/utils/unittest/googletest/src/gtest-port.cc similarity index 99% rename from utils/unittest/googletest/gtest-port.cc rename to utils/unittest/googletest/src/gtest-port.cc index 3c32ff1ac1e..745956247a6 100644 --- a/utils/unittest/googletest/gtest-port.cc +++ b/utils/unittest/googletest/src/gtest-port.cc @@ -62,7 +62,7 @@ // prevent a user from accidentally including gtest-internal-inl.h in // his code. #define GTEST_IMPLEMENTATION_ 1 -#include "gtest/internal/gtest-internal-inl.h" +#include "src/gtest-internal-inl.h" #undef GTEST_IMPLEMENTATION_ namespace testing { diff --git a/utils/unittest/googletest/gtest-printers.cc b/utils/unittest/googletest/src/gtest-printers.cc similarity index 100% rename from utils/unittest/googletest/gtest-printers.cc rename to utils/unittest/googletest/src/gtest-printers.cc diff --git a/utils/unittest/googletest/gtest-test-part.cc b/utils/unittest/googletest/src/gtest-test-part.cc similarity index 98% rename from utils/unittest/googletest/gtest-test-part.cc rename to utils/unittest/googletest/src/gtest-test-part.cc index 161278027d0..5ddc67c1c9e 100644 --- a/utils/unittest/googletest/gtest-test-part.cc +++ b/utils/unittest/googletest/src/gtest-test-part.cc @@ -39,7 +39,7 @@ // prevent a user from accidentally including gtest-internal-inl.h in // his code. #define GTEST_IMPLEMENTATION_ 1 -#include "gtest/internal/gtest-internal-inl.h" +#include "src/gtest-internal-inl.h" #undef GTEST_IMPLEMENTATION_ namespace testing { diff --git a/utils/unittest/googletest/gtest-typed-test.cc b/utils/unittest/googletest/src/gtest-typed-test.cc similarity index 100% rename from utils/unittest/googletest/gtest-typed-test.cc rename to utils/unittest/googletest/src/gtest-typed-test.cc diff --git a/utils/unittest/googletest/gtest.cc b/utils/unittest/googletest/src/gtest.cc similarity index 99% rename from utils/unittest/googletest/gtest.cc rename to utils/unittest/googletest/src/gtest.cc index eb5c68c272c..9891928048a 100644 --- a/utils/unittest/googletest/gtest.cc +++ b/utils/unittest/googletest/src/gtest.cc @@ -129,7 +129,7 @@ // prevent a user from accidentally including gtest-internal-inl.h in // his code. #define GTEST_IMPLEMENTATION_ 1 -#include "gtest/internal/gtest-internal-inl.h" +#include "src/gtest-internal-inl.h" #undef GTEST_IMPLEMENTATION_ #if GTEST_OS_WINDOWS