-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Initial commit of native shims building in corefx #2445
Conversation
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 think it'd be worth noting explicitly that this isn't just about Linux vs OS X vs FreeBSD vs... etc. It's also about 32-bit vs 64-bit, processor architecture, etc.
|
Thanks, Nick. Great to see this starting to come online. |
run-test.sh
Outdated
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.
This is fine for now. As soon as this gets checked in I'll add the necessary legs. Do you need new parameters in run-test to indicating the location of the corefx Linux native binaries, or will that fall under the corefx Linux managed binaries?
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.
OK. Can I leave the path handling to you once we have the proper legs? We need to (1) build src/Native on the target OS and (2) get everything in bin/OS.arch.config/Native in to the overlay. I'm not sure if that can be inferred from the existing args or not.
|
I'm not opposed to having a "src\Native.Native" file layout but I wanted to at least ask the question of whether or not we felt these native libs should live next to the managed versions that will use them or if we feel they are general purpose enough to be isolated like you are proposing? Do we know what package they will end up in when we start packaging these? If for example we expect System.IO.Native.dll to be in the System.IO package then we may want to keep it along side System.IO but if it is going to be somewhere else then we can keep it isolated. At a high level I intend for anything that ships in a package together to live together so they can mostly be independent and we can move or build them independently. For example anything we plan to ship in the System.IO package, including any contracts or facades I would hope to live under src\System.IO directory. |
|
@weshaggard I believe these should be packaged on their own and shared between managed packages. See my previous comments on dotnet/coreclr#1225. With that said, I'm deferring the packaging part for now to #2302 and we may want to reorganize based on what we decide there. |
* Rename shims to match their underlying platform API names * Update guidelines * Add errno conversion TODO * Account for OS X in run-test.sh
|
LGTM. Thanks, Nick. |
|
@dotnet-bot test this please |
Initial commit of native shims building in corefx
Initial commit of native shims building in corefx Commit migrated from dotnet/corefx@eacdd5d
cc @stephentoub
This PR replaces #2303 and dotnet/coreclr#1225.
It makes progress towards #2137 and #2301
Changes:
Notes: