diff --git a/.travis.yml b/.travis.yml
index 93013b8bdf..1811487888 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,4 +1,8 @@
+sudo: false
 language: cpp
-script: ./autogen.sh && ./configure && make distcheck
+os:
+  - linux
+  - osx
+script: ./autogen.sh && ./configure && make distcheck -j2
 notifications:
   email: false
diff --git a/src/google/protobuf/compiler/command_line_interface_unittest.cc b/src/google/protobuf/compiler/command_line_interface_unittest.cc
index 2b26f3be58..a2cbbdc614 100644
--- a/src/google/protobuf/compiler/command_line_interface_unittest.cc
+++ b/src/google/protobuf/compiler/command_line_interface_unittest.cc
@@ -991,7 +991,7 @@ TEST_F(CommandLineInterfaceTest, WriteDependencyManifestFile) {
     "  optional Foo foo = 1;\n"
     "}\n");
 
-  string current_working_directory = get_current_dir_name();
+  string current_working_directory = getcwd(NULL, 0);
   SwitchToTempDirectory();
 
   Run("protocol_compiler --dependency_out=manifest --test_out=. "