From a3d088a45a1c162ff571513ad399b53ebfd8f6cc Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 9 Apr 2021 09:21:26 -0700 Subject: [PATCH 1/5] Install crossgen, jitinterface, clrjit into the sharedframework folder. --- src/coreclr/components.cmake | 1 + src/coreclr/crosscomponents.cmake | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/coreclr/components.cmake b/src/coreclr/components.cmake index 3d630bf14a6b64..f29a912b207e24 100644 --- a/src/coreclr/components.cmake +++ b/src/coreclr/components.cmake @@ -19,3 +19,4 @@ add_dependencies(runtime jit iltools) # The cross-components build is separate, so we don't need to add a dependency on coreclr_misc add_component(crosscomponents) +add_dependencies(crosscomponents jit) diff --git a/src/coreclr/crosscomponents.cmake b/src/coreclr/crosscomponents.cmake index e8d51914951e33..9846e2ddd5bfeb 100644 --- a/src/coreclr/crosscomponents.cmake +++ b/src/coreclr/crosscomponents.cmake @@ -4,14 +4,14 @@ if (CLR_CMAKE_HOST_OS STREQUAL CLR_CMAKE_TARGET_OS) install_clr (TARGETS clrjit jitinterface_${ARCH_HOST_NAME} - DESTINATIONS . + DESTINATIONS . sharedFramework COMPONENT crosscomponents ) if(CLR_CMAKE_HOST_LINUX OR NOT FEATURE_CROSSBITNESS) install_clr (TARGETS crossgen - DESTINATIONS . + DESTINATIONS . sharedFramework COMPONENT crosscomponents ) endif() @@ -19,7 +19,7 @@ if (CLR_CMAKE_HOST_OS STREQUAL CLR_CMAKE_TARGET_OS) if (CLR_CMAKE_TARGET_UNIX) install_clr (TARGETS clrjit_unix_${ARCH_TARGET_NAME}_${ARCH_HOST_NAME} - DESTINATIONS . + DESTINATIONS . sharedFramework COMPONENT crosscomponents ) endif(CLR_CMAKE_TARGET_UNIX) From 81721e54776dab8308192d82fe91ccd694114d2f Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 9 Apr 2021 11:40:56 -0700 Subject: [PATCH 2/5] Remove unneeded dependency --- src/coreclr/components.cmake | 1 - 1 file changed, 1 deletion(-) diff --git a/src/coreclr/components.cmake b/src/coreclr/components.cmake index f29a912b207e24..3d630bf14a6b64 100644 --- a/src/coreclr/components.cmake +++ b/src/coreclr/components.cmake @@ -19,4 +19,3 @@ add_dependencies(runtime jit iltools) # The cross-components build is separate, so we don't need to add a dependency on coreclr_misc add_component(crosscomponents) -add_dependencies(crosscomponents jit) From 9011f8705885f812b9189ecbe64103c6d47e5688 Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 9 Apr 2021 12:16:58 -0700 Subject: [PATCH 3/5] Add dac/dbi to cross-component sharedFramework folder. --- src/coreclr/crosscomponents.cmake | 2 +- src/coreclr/dlls/mscordac/CMakeLists.txt | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/coreclr/crosscomponents.cmake b/src/coreclr/crosscomponents.cmake index 9846e2ddd5bfeb..023dce704e94a6 100644 --- a/src/coreclr/crosscomponents.cmake +++ b/src/coreclr/crosscomponents.cmake @@ -29,7 +29,7 @@ if(NOT CLR_CMAKE_HOST_LINUX AND NOT CLR_CMAKE_HOST_OSX AND NOT FEATURE_CROSSBITN install_clr (TARGETS mscordaccore mscordbi - DESTINATIONS . + DESTINATIONS . sharedFramework COMPONENT crosscomponents ) endif() diff --git a/src/coreclr/dlls/mscordac/CMakeLists.txt b/src/coreclr/dlls/mscordac/CMakeLists.txt index 327560a030db20..8e205b6e15e146 100644 --- a/src/coreclr/dlls/mscordac/CMakeLists.txt +++ b/src/coreclr/dlls/mscordac/CMakeLists.txt @@ -210,5 +210,6 @@ if(CLR_CMAKE_HOST_WIN32) string(REGEX MATCH "#define VER_FILEVERSION[ \t]+[0-9]+(,[0-9]+)+" FILE_VERSION_LINE "${NATIVE_VERSION_HEADER}") string(REGEX MATCHALL "[0-9]+" FILE_VERSION_COMPONENTS "${FILE_VERSION_LINE}") list(JOIN FILE_VERSION_COMPONENTS "." FILE_VERSION) - install(FILES $ RENAME mscordaccore_${LONG_NAME_HOST_ARCH}_${LONG_NAME_TARGET_ARCH}_${FILE_VERSION}.dll DESTINATION sharedFramework COMPONENT runtime) + install(PROGRAMS $ RENAME mscordaccore_${LONG_NAME_HOST_ARCH}_${LONG_NAME_TARGET_ARCH}_${FILE_VERSION}.dll DESTINATION sharedFramework COMPONENT runtime) + install(PROGRAMS $ RENAME mscordaccore_${LONG_NAME_HOST_ARCH}_${LONG_NAME_TARGET_ARCH}_${FILE_VERSION}.dll DESTINATION sharedFramework COMPONENT crosscomponents) endif() From 53d042b7b6350943f2985ab6c66fb758cbd64cec Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 9 Apr 2021 12:18:10 -0700 Subject: [PATCH 4/5] Don't install the cross-os dac in crosscomponents in cross-bitness scenarios. --- src/coreclr/dlls/mscordac/CMakeLists.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/coreclr/dlls/mscordac/CMakeLists.txt b/src/coreclr/dlls/mscordac/CMakeLists.txt index 8e205b6e15e146..9dd3329a230487 100644 --- a/src/coreclr/dlls/mscordac/CMakeLists.txt +++ b/src/coreclr/dlls/mscordac/CMakeLists.txt @@ -211,5 +211,7 @@ if(CLR_CMAKE_HOST_WIN32) string(REGEX MATCHALL "[0-9]+" FILE_VERSION_COMPONENTS "${FILE_VERSION_LINE}") list(JOIN FILE_VERSION_COMPONENTS "." FILE_VERSION) install(PROGRAMS $ RENAME mscordaccore_${LONG_NAME_HOST_ARCH}_${LONG_NAME_TARGET_ARCH}_${FILE_VERSION}.dll DESTINATION sharedFramework COMPONENT runtime) - install(PROGRAMS $ RENAME mscordaccore_${LONG_NAME_HOST_ARCH}_${LONG_NAME_TARGET_ARCH}_${FILE_VERSION}.dll DESTINATION sharedFramework COMPONENT crosscomponents) + if (NOT FEATURE_CROSSBITNESS) + install(PROGRAMS $ RENAME mscordaccore_${LONG_NAME_HOST_ARCH}_${LONG_NAME_TARGET_ARCH}_${FILE_VERSION}.dll DESTINATION sharedFramework COMPONENT crosscomponents) + endif() endif() From 74ffae2420ef7a2680c7e007b56abcd2f2caa3fa Mon Sep 17 00:00:00 2001 From: Jeremy Koritzinsky Date: Fri, 9 Apr 2021 14:38:50 -0700 Subject: [PATCH 5/5] Jit Interface doesn't need to go into the sharedFramework folder (it wasn't there in 6.0.0p3) --- src/coreclr/crosscomponents.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/coreclr/crosscomponents.cmake b/src/coreclr/crosscomponents.cmake index 023dce704e94a6..03b076becfb6d6 100644 --- a/src/coreclr/crosscomponents.cmake +++ b/src/coreclr/crosscomponents.cmake @@ -3,10 +3,15 @@ if (CLR_CMAKE_HOST_OS STREQUAL CLR_CMAKE_TARGET_OS) install_clr (TARGETS clrjit - jitinterface_${ARCH_HOST_NAME} DESTINATIONS . sharedFramework COMPONENT crosscomponents ) + install_clr (TARGETS + clrjit + jitinterface_${ARCH_HOST_NAME} + DESTINATIONS . + COMPONENT crosscomponents + ) if(CLR_CMAKE_HOST_LINUX OR NOT FEATURE_CROSSBITNESS) install_clr (TARGETS