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

WIP Separate platform & target #757

Closed
wants to merge 35 commits into from

Conversation

sdmaclea
Copy link
Contributor

@sdmaclea sdmaclea commented Dec 11, 2019

Extend cross component build make system to allow cross OS build for some components.

Standardize on Platform and Target for the nomenclature (rename _Host_ to _Platform_)
Add CLR_CMAKE_TARGET_*
Modify feature flag definition to depend on CLR_CMAKE_TARGET_*
Modify crosscomponent make to handle CLR_CMAKE_TARGET_OS
Set CLR_CMAKE_TARGET_OS in build.cmd
Add flag to set target OS to linux.
Remove stray sos reference

@janvorli
Copy link
Member

@sdmaclea it is not clear to me how we can ever build native components cross os, can you please share more details on how are we planning to do that?

@sdmaclea
Copy link
Contributor Author

@janvorli This work is experimental at this point.

@@ -128,6 +128,8 @@ if /i "%1" == "-x86" (set __BuildArchX86=1&set processedArgs=!pr
if /i "%1" == "-arm" (set __BuildArchArm=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
if /i "%1" == "-arm64" (set __BuildArchArm64=1&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)

if /i "%1" == "-linux" (set __BuildOS=Linux&set processedArgs=!processedArgs! %1&shift&goto Arg_Loop)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This option may imply general support. Maybe a special purpose flag would be better.

Move the Crst member to the end of the structure for the cross OS DAC.
Remove multiple inheritance by dropping noncopyable
This corrects the layout of the SHash structure on Windows to
match Linux.

The multiple inheritance was in serting an extra byte of padding in
the structure layout.
@sdmaclea
Copy link
Contributor Author

This prototype worked, but this code needs to be polished before merging. Closing this in favor of smaller actionable PRs.

@sdmaclea sdmaclea closed this Jan 17, 2020
@ghost ghost locked as resolved and limited conversation to collaborators Dec 11, 2020
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.

2 participants