This repository was archived by the owner on Jan 23, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Build-test.sh handles native test assets #19430
Merged
AaronRobinsonMSFT
merged 13 commits into
dotnet:master
from
AaronRobinsonMSFT:build_test_sh_handles_native
Aug 16, 2018
Merged
Changes from all commits
Commits
Show all changes
13 commits
Select commit
Hold shift + click to select a range
973834f
Respect Windows script argument to skip package building.
AaronRobinsonMSFT 0b29717
Bring build.sh logic closer to build.cmd with respect to passing CMAK…
AaronRobinsonMSFT 2cfd120
Rename build_Tests_internal to build_MSBuild_projects
AaronRobinsonMSFT 7ecdb0f
Update comments regarding test logic
AaronRobinsonMSFT a186471
Make cmake gen script find override file without using script arguments
AaronRobinsonMSFT 8dc11d3
build-test.sh supports building native projects
AaronRobinsonMSFT 53e528f
build-test.sh can now build native test projects
AaronRobinsonMSFT 736fce9
Fix Windows test build - always include ole32 and advapi32 for Intero…
AaronRobinsonMSFT 839847a
Force file to be compiled as C
AaronRobinsonMSFT c3d400d
Compile all files as C for StructABI project
AaronRobinsonMSFT e69a35e
Use interop macro for CoTaskMem* functions
AaronRobinsonMSFT 8973f99
Remove bug in test
AaronRobinsonMSFT 9df8794
Fix CheckTestBuild target run in build-test.sh
AaronRobinsonMSFT File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
After checking you PR I have noticed that default settings in config.json for invoking
msbuild
on unixes do not setmaxcpucount
parameter what makes all calls non parallel and slows down everymsbuild
based operation.Another problem is related to node reuse. AFAIR node reuse was off by default on Linux, however, this could have changed now. In such case we would need
-nodereuse=false
msbuild
parameter. @rainersigwald may know more about current state of node reuse support on Linux.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.
dotnet build
anddotnet msbuild
unconditionally insert-maxcpucount
into MSBuild's command line.Node reuse is on by default on all platforms since .NET Core SDK 2.1.300/MSBuild 15.7. Since there are many individual invocations of MSBuild here, I would expect it to provide a performance improvement and wouldn't recommend leaving it off entirely unless there's a pressing need. It might be a good idea to do a
dotnet build-server shutdown
at the end of the script (even on error paths), depending on the use case.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 didn't change any MSBuild logic in this review. That is definitely something we should investigate going forward though.