diff --git a/configure.ac b/configure.ac index 32edd48..69d1ed8 100644 --- a/configure.ac +++ b/configure.ac @@ -27,6 +27,7 @@ AC_CHECK_HEADERS([fcntl.h inttypes.h limits.h stdlib.h unistd.h]) AC_FUNC_MEMCMP AC_FUNC_STRTOD AC_CHECK_FUNCS([ftruncate memset mkdir strchr strerror strtol]) +GTEST_LIB_CHECK ACX_PTHREAD AC_CXX_STL_HASH diff --git a/src/Makefile.am b/src/Makefile.am index c2729da..0d2583f 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -163,12 +163,7 @@ EXTRA_DIST = \ google/protobuf/testdata/text_format_unittest_extensions_data.txt \ google/protobuf/package_info.h \ google/protobuf/io/package_info.h \ - google/protobuf/compiler/package_info.h \ - gtest/CHANGES \ - gtest/CONTRIBUTORS \ - gtest/COPYING \ - gtest/README \ - gtest/gen_gtest_pred_impl.py + google/protobuf/compiler/package_info.h protoc_outputs = \ google/protobuf/unittest.pb.cc \ @@ -205,7 +200,9 @@ unittest_proto_middleman: protoc$(EXEEXT) $(protoc_inputs) $(protoc_outputs): unittest_proto_middleman noinst_PROGRAMS = protobuf-test -protobuf_test_LDADD = $(PTHREAD_LIBS) libprotobuf.la libprotoc.la +protobuf_test_CPPFLAGS = $(GTEST_CPPFLAGS) +protobuf_test_CXXFLAGS = $(GTEST_CXXFLAGS) +protobuf_test_LDADD = $(PTHREAD_LIBS) $(GTEST_LDFLAGS) $(GTEST_LIBS) libprotobuf.la libprotoc.la protobuf_test_SOURCES = \ google/protobuf/stubs/common_unittest.cc \ google/protobuf/stubs/strutil_unittest.cc \ @@ -235,23 +232,7 @@ protobuf_test_SOURCES = \ google/protobuf/testing/googletest.h \ google/protobuf/testing/file.cc \ google/protobuf/testing/file.h \ - gtest/gtest.cc \ - gtest/gtest.h \ - gtest/gtest-death-test.cc \ - gtest/gtest-death-test.h \ - gtest/gtest-filepath.cc \ - gtest/gtest-internal-inl.h \ - gtest/gtest-message.h \ - gtest/gtest-port.cc \ - gtest/gtest-spi.h \ - gtest/gtest_main.cc \ - gtest/gtest_pred_impl.h \ - gtest/gtest_prod.h \ - gtest/internal/gtest-death-test-internal.h \ - gtest/internal/gtest-filepath.h \ - gtest/internal/gtest-internal.h \ - gtest/internal/gtest-port.h \ - gtest/internal/gtest-string.h + google/protobuf/testing/gtest_main.cc nodist_protobuf_test_SOURCES = $(protoc_outputs) diff --git a/src/google/protobuf/testing/gtest_main.cc b/src/google/protobuf/testing/gtest_main.cc new file mode 100644 index 0000000..d20c02f --- /dev/null +++ b/src/google/protobuf/testing/gtest_main.cc @@ -0,0 +1,39 @@ +// Copyright 2006, Google Inc. +// All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +#include + +#include + +int main(int argc, char **argv) { + std::cout << "Running main() from gtest_main.cc\n"; + + testing::InitGoogleTest(&argc, argv); + return RUN_ALL_TESTS(); +}