Merge pull request #1278 from smparkes/master

pass correct args to protoc for wellknown protos when used as an external repository
diff --git a/src/google/protobuf/map.h b/src/google/protobuf/map.h
index 37e19b0..8319938 100644
--- a/src/google/protobuf/map.h
+++ b/src/google/protobuf/map.h
@@ -545,7 +545,9 @@
     }
 
 #if __cplusplus >= 201103L && !defined(GOOGLE_PROTOBUF_OS_APPLE) && \
-    !defined(GOOGLE_PROTOBUF_OS_NACL) && !defined(GOOGLE_PROTOBUF_OS_ANDROID)
+    !defined(GOOGLE_PROTOBUF_OS_NACL) &&                            \
+    !defined(GOOGLE_PROTOBUF_OS_ANDROID) &&                         \
+    !defined(GOOGLE_PROTOBUF_OS_EMSCRIPTEN)
     template<class NodeType, class... Args>
     void construct(NodeType* p, Args&&... args) {
       // Clang 3.6 doesn't compile static casting to void* directly. (Issue #1266)