Support __EMSCRIPTEN__ in rtc_base.

Bug: None
Change-Id: Ie0497e268b93ad15a164db85e8cefdb823d64a65
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/140863
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28307}
diff --git a/rtc_base/platform_thread_types.cc b/rtc_base/platform_thread_types.cc
index 15d4861..67bb054 100644
--- a/rtc_base/platform_thread_types.cc
+++ b/rtc_base/platform_thread_types.cc
@@ -29,9 +29,11 @@
   return zx_thread_self();
 #elif defined(WEBRTC_LINUX)
   return syscall(__NR_gettid);
+#elif defined(__EMSCRIPTEN__)
+  return static_cast<PlatformThreadId>(pthread_self());
 #else
   // Default implementation for nacl and solaris.
-  return reinterpret_cast<pid_t>(pthread_self());
+  return reinterpret_cast<PlatformThreadId>(pthread_self());
 #endif
 #endif  // defined(WEBRTC_POSIX)
 }
diff --git a/rtc_base/system/arch.h b/rtc_base/system/arch.h
index f07796b..eb77ffa 100644
--- a/rtc_base/system/arch.h
+++ b/rtc_base/system/arch.h
@@ -47,6 +47,9 @@
 #elif defined(__pnacl__)
 #define WEBRTC_ARCH_32_BITS
 #define WEBRTC_ARCH_LITTLE_ENDIAN
+#elif defined(__EMSCRIPTEN__)
+#define WEBRTC_ARCH_32_BITS
+#define WEBRTC_ARCH_LITTLE_ENDIAN
 #else
 #error Please add support for your architecture in rtc_base/system/arch.h
 #endif