-
Notifications
You must be signed in to change notification settings - Fork 2.7k
[Linux] Fix cross-architecture component build configuration for ARM32-target #8687
Conversation
cc @janvorli |
I am not sure how this change would fix the dependency issue. This only changes how the final version of the static palrt.lib is copied to the final Product folder and while before it was installed there for all builds, now it is installed only when the CLR_CROSS_COMPONENTS_BUILD is not defined. |
@janvorli You're right. It only fix warning about installation palrt. We need to modify CMakeLists.txt on project root becase coreclrpal is not being built as you say. I'll push additional commit in this PR. |
Add coreclrpal project to fix a dependency issue when CMake configuration
allow x64-host/arm-target only, because pal is not stable for x86 now
additional commit
|
delete NumProc=1 (inserted for debugging)
elseif(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL i686) | ||
set(CLR_CMAKE_PLATFORM_UNIX_X86 1) | ||
if(CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL x86_64 OR CMAKE_HOST_SYSTEM_PROCESSOR STREQUAL amd64) | ||
set(CLR_CMAKE_PLATFORM_UNIX_AMD64 1) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe that at the moment, 64 bit cross components build will not work for 32 bit target and so the x86 host is the only option for target ARM. See the comment from @AndyAyersMS here:
dotnet/corert#2381 (comment)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The JIT may actually build, but it probably won't run correctly. Last I knew there were still parts of the jit code that assumed sizeof(void *) was the target pointer size.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you. I'll revise to use x86 instead of x64.
JIT correctness problem, and fix CMake configuration for x86 in pal
@janvorli PTAL |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thank you!
…2-target (dotnet/coreclr#8687) * fix CMakeLists.txt for palrt * Modify CMakeLists.txt for cross-architecture component configuaration Add coreclrpal project to fix a dependency issue when CMake configuration * Allow only x64-host/arm-target for linux allow x64-host/arm-target only, because pal is not stable for x86 now * Update build.sh delete NumProc=1 (inserted for debugging) * Change x64-host to x86-host for arm-target JIT correctness problem, and fix CMake configuration for x86 in pal * Fix type * Update CMakeLists.txt * fix style * Set x86 when arm-target/x64-host * fix typo Commit migrated from dotnet/coreclr@5ef3df8
Fix CMake install function: pair
_install
withadd_library_clr
related issue: #8685 - warning target
palrt