Add prefix to DAC's PAL exports for alpine (dotnet/coreclr#18873)
authorMike McLaughlin <mikem@microsoft.com>
Fri, 13 Jul 2018 06:45:39 +0000 (23:45 -0700)
committerGitHub <noreply@github.com>
Fri, 13 Jul 2018 06:45:39 +0000 (23:45 -0700)
commit9406b11ca23b63b85eb0019a71c608c920130db3
treefd0e181d54959494bc5f2f37202717afb054c982
parentcffa27eece9b58004b6286c42939afab055e5af9
Add prefix to DAC's PAL exports for alpine (dotnet/coreclr#18873)

Added some cmake logic to create assembly include mapping files. One that maps the
prefixed name (DAC_foo) to the actual name (foo) which is included in the DAC module
and another that maps the actual name to the prefixed name that is included in the SOS,
DBI and createdump modules.

The data exports like IID_IUnknown are not prefixed and don't need to be (immutable static data).

There were some C++ exports functions exported with their decorated names in
the CatchHardwareExceptionHolder and NativeExceptionHolderBase classes. Created
PAL_* style export functions that implements the code.

Fix lldb plugin cmake file to use LLDB_H/LLDB_LIB env vars to build it.

Commit migrated from https://github.com/dotnet/coreclr/commit/b89e2305a2c953272c997242d01b66b1bb1e661e
18 files changed:
src/coreclr/CMakeLists.txt
src/coreclr/functions.cmake
src/coreclr/generateexportedsymbols.awk
src/coreclr/generateredefinesfile.awk [new file with mode: 0644]
src/coreclr/generateversionscript.awk
src/coreclr/src/ToolBox/SOS/Strike/CMakeLists.txt
src/coreclr/src/ToolBox/SOS/lldbplugin/CMakeLists.txt
src/coreclr/src/debug/createdump/CMakeLists.txt
src/coreclr/src/dlls/mscordac/CMakeLists.txt
src/coreclr/src/dlls/mscordac/libredefines.S [new file with mode: 0644]
src/coreclr/src/dlls/mscordac/mscordac_unixexports.src
src/coreclr/src/dlls/mscordac/palredefines.S [new file with mode: 0644]
src/coreclr/src/dlls/mscordbi/CMakeLists.txt
src/coreclr/src/pal/inc/pal.h
src/coreclr/src/pal/src/exception/seh.cpp
src/coreclr/src/pal/src/include/pal/thread.hpp
src/coreclr/src/palrt/guid.cpp
src/coreclr/src/palrt/guiddef.h [deleted file]