From abe61de6e62aecbdf342204a89c56b03f3e45745 Mon Sep 17 00:00:00 2001 From: "jieluo@google.com" Date: Tue, 5 Aug 2014 20:18:53 +0000 Subject: [PATCH] make changes to pass Cygwin --- configure.ac | 3 ++- .../compiler/command_line_interface_unittest.cc | 14 +++++++++----- 2 files changed, 11 insertions(+), 6 deletions(-) diff --git a/configure.ac b/configure.ac index 06b716d3..62ece151 100644 --- a/configure.ac +++ b/configure.ac @@ -29,7 +29,7 @@ AS_IF([test "x${ac_cv_env_CXXFLAGS_set}" = "x"], AC_CANONICAL_TARGET -AM_INIT_AUTOMAKE +AM_INIT_AUTOMAKE([subdir-objects]) AC_ARG_WITH([zlib], [AS_HELP_STRING([--with-zlib], @@ -46,6 +46,7 @@ AC_PROG_CC AC_PROG_CXX AC_LANG([C++]) ACX_USE_SYSTEM_EXTENSIONS +AM_PROG_AR AM_CONDITIONAL(GCC, test "$GCC" = yes) # let the Makefile know if we're gcc # test_util.cc takes forever to compile with GCC and optimization turned on. diff --git a/src/google/protobuf/compiler/command_line_interface_unittest.cc b/src/google/protobuf/compiler/command_line_interface_unittest.cc index 9e244da3..5dc4a527 100644 --- a/src/google/protobuf/compiler/command_line_interface_unittest.cc +++ b/src/google/protobuf/compiler/command_line_interface_unittest.cc @@ -85,7 +85,7 @@ class CommandLineInterfaceTest : public testing::Test { // Runs the CommandLineInterface with the given command line. The // command is automatically split on spaces, and the string "$tmpdir" // is replaced with TestTempDir(). - void Run(const string& command); + void Run(const string& command, bool capture_stdout = false); // ----------------------------------------------------------------- // Methods to set up the test (called before Run()). @@ -261,7 +261,7 @@ void CommandLineInterfaceTest::TearDown() { mock_generators_to_delete_.clear(); } -void CommandLineInterfaceTest::Run(const string& command) { +void CommandLineInterfaceTest::Run(const string& command, bool capture_stdout) { vector args = Split(command, " ", true); if (!disallow_plugins_) { @@ -308,13 +308,17 @@ void CommandLineInterfaceTest::Run(const string& command) { argv[i] = args[i].c_str(); } - CaptureTestStdout(); + if (capture_stdout) { + CaptureTestStdout(); + } CaptureTestStderr(); return_code_ = cli_.Run(args.size(), argv.get()); error_text_ = GetCapturedTestStderr(); - captured_stdout_ = GetCapturedTestStdout(); + if (capture_stdout) { + captured_stdout_ = GetCapturedTestStdout(); + } } // ------------------------------------------------------------------- @@ -1461,7 +1465,7 @@ TEST_F(CommandLineInterfaceTest, PrintFreeFieldNumbers) { "}\n"); Run("protocol_compiler --print_free_field_numbers --proto_path=$tmpdir " - "foo.proto bar.proto baz.proto quz.proto"); + "foo.proto bar.proto baz.proto quz.proto", true); ExpectNoErrors(); ExpectCapturedStdout(