A recent change has incorrectly added dependency on libcoreclrpal.a to
libutilcodenohost.a. This in turn, due to the transitive propagation of
dependencies, caused the libmscordbi to be linked with libcoreclrpal.a.
So libmscordbi contained its own PAL after that change, which is wrong.
libmscordbi should depend on PAL APIs through libmscordaccore that
exports the symbols it needs for it in order to keep just one PAL in the
process.
The fix is to remove the libcoreclrpal.a dependency and export few
new symbols from libmscordaccore instead.
#PAL__flushall
#PAL_free
#PAL_fwprintf
+#PAL_GetLogicalCpuCountFromOS
+#PAL_GetNumaProcessorNode
#PAL_GetPALDirectoryW
#PAL_GetResourceString
#PAL_get_stdout
#GetLastError
#GetLongPathNameW
#GetModuleFileNameW
+#GetNumaHighestNodeNumber
#GetProcAddress
#GetProcessHeap
#GetShortPathNameW
#TlsGetValue
#TlsSetValue
#VirtualAlloc
+#VirtualAllocExNuma
#VirtualFree
#VirtualProtect
#VirtualQuery
if(CLR_CMAKE_PLATFORM_UNIX)
target_link_libraries(utilcodestaticnohost nativeresourcestring)
- if(CLR_CMAKE_PLATFORM_DARWIN)
- target_link_libraries(utilcodestaticnohost coreclrpal)
- endif(CLR_CMAKE_PLATFORM_DARWIN)
endif(CLR_CMAKE_PLATFORM_UNIX)