Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building singlefilehost with clr partition. #48254

Merged
2 commits merged into from
Feb 20, 2021
Merged

Conversation

VSadov
Copy link
Member

@VSadov VSadov commented Feb 12, 2021

  • single file host builds with clr partition
  • removed hacks that align single file host build flavor and CRT to match with clr
  • host build script now just picks singlefilehost executable from clr artifacts
  • fixed a few places which introduce duplicate definitions when JIT and VM are linked together.

NOTE: static libs for the native libraries that are built in clr partitions are still installed into artifacts.
I left them be, in case there are other uses, but singlefilehost no longer needs them.

Resolves:#43700

@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this PR. If you have write-permissions please help me learn by adding exactly one area label.

src/coreclr/CMakeLists.txt Outdated Show resolved Hide resolved
src/coreclr/build-runtime.sh Outdated Show resolved Hide resolved
@VSadov VSadov force-pushed the partitions branch 2 times, most recently from 325bf4d to 488ee21 Compare February 15, 2021 20:03
@VSadov VSadov changed the title [WIP] Building singlefilehost from clr partition. Building singlefilehost with clr partition. Feb 15, 2021
@VSadov VSadov force-pushed the partitions branch 3 times, most recently from 9839004 to 04bf9bb Compare February 17, 2021 00:16
@VSadov VSadov marked this pull request as ready for review February 17, 2021 02:09
@VSadov
Copy link
Member Author

VSadov commented Feb 17, 2021

I think this is ready for review.

@@ -348,14 +348,14 @@ else()
clr_unknown_arch()
endif()

set(SOURCES
set(JIT_CORE_SOURCES
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change was needed to not include resources in the statically linked JIT.

@@ -42,6 +42,20 @@ include(../../fxr/files.cmake)
include(../../hostpolicy/files.cmake)
include(../../hostcommon/files.cmake)

if(MSVC)
add_compile_options($<$<COMPILE_LANGUAGE:C,CXX>:/wd4996>)
Copy link
Member Author

@VSadov VSadov Feb 17, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

these /wd defined for everything in host.native .
Since we build this separately from others now, I had to add the options here.

get_property(ALL_COMPILE_OPTIONS TARGET ${PROJECT_NAME} PROPERTY COMPILE_OPTIONS)
string(TOUPPER ${RUNTIME_CONFIG} UPPERCASE_RUNTIME_CONFIG)

# make sure that certain compiler and linker settings match the runtime config
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am very happy that this is gone. It seemed very fragile.

@VSadov VSadov force-pushed the partitions branch 2 times, most recently from 6385035 to a874f3a Compare February 18, 2021 16:57
Copy link
Member

@janvorli janvorli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, thank you!

@VSadov
Copy link
Member Author

VSadov commented Feb 19, 2021

Thanks!!!

@ghost
Copy link

ghost commented Feb 19, 2021

Hello @VSadov!

Because this pull request has the auto-merge label, I will be glad to assist with helping to merge this pull request once all check-in policies pass.

p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (@msftbot) and give me an instruction to get started! Learn more here.

@ghost ghost merged commit 2b53a0a into dotnet:master Feb 20, 2021
@VSadov VSadov deleted the partitions branch February 20, 2021 05:13
@BruceForstall
Copy link
Member

@VSadov It appears this change broke the JIT rolling build (which only builds the JIT, using, for example, src/coreclr/build-runtime.cmd checked x64 -ci -skipruntime -nopgooptimize -skiprestoreoptdata):

https://dev.azure.com/dnceng/internal/_build/results?buildId=1004132&view=results

cc @dotnet/jit-contrib

@am11
Copy link
Member

am11 commented Feb 20, 2021

@BruceForstall, I have opened #48552 with the fix. The condition just need to include corehost directory conditionally.

This pull request was closed.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants