Emscripten maps to POCO_OS_LINUX but has no <sys/prctl.h>/prctl, which POCO uses
as the Linux fallback for thread naming.  Skip the include and make the prctl
set/get name calls a no-op there (thread names are cosmetic).  No-op on every
other platform (guarded by POCO_EMSCRIPTEN).

--- a/Foundation/src/Thread_POSIX.cpp
+++ b/Foundation/src/Thread_POSIX.cpp
@@ -44,7 +44,7 @@
 #endif
 
 #ifndef POCO_NO_THREADNAME
-	#if POCO_OS == POCO_OS_LINUX || POCO_OS == POCO_OS_ANDROID
+	#if (POCO_OS == POCO_OS_LINUX || POCO_OS == POCO_OS_ANDROID) && !defined(POCO_EMSCRIPTEN)
 	#	include <sys/prctl.h>
 	#endif
 #endif
@@ -394,6 +394,8 @@
 		#endif
 	#elif (POCO_OS == POCO_OS_QNX)
 		pthread_setname_np(pthread_self(), truncateName(threadName, _NTO_THREAD_NAME_MAX).c_str());
+	#elif defined(POCO_EMSCRIPTEN)
+		(void) threadName; // Emscripten has no prctl; thread naming is a no-op
 	#else
 		prctl(PR_SET_NAME, truncateName(threadName).c_str());
 	#endif
@@ -421,6 +423,8 @@
 		#endif
 	#elif (POCO_OS == POCO_OS_QNX)
 		pthread_getname_np(pthread_self(), name, nameSize);
+	#elif defined(POCO_EMSCRIPTEN)
+		// Emscripten has no prctl; no thread name available
 	#else
 		prctl(PR_GET_NAME, name);
 	#endif
