add option to specify clang and few minor improvements for Linux#23302
Conversation
|
@wfurt, It will cover your contributions to all .NET Foundation-managed open source projects. |
MattGal
left a comment
There was a problem hiding this comment.
While these changes look benign to me, so did the previous ones which broke the build. The best thing to do would be to grab the logs from the same flavor of official build that failed last time you did this and run through the exact commands from such a build to double check things work.
| @@ -1,4 +1,4 @@ | |||
| #!/usr/bin/env bash | |||
| working_tree_root="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" | |||
| $working_tree_root/run.sh build-managed $* | |||
There was a problem hiding this comment.
I'm by no means an expert in shell scripting so could you please explain the difference between $* and "$@"?
There was a problem hiding this comment.
I've been talking about this @MattGal
The difference is is you pass in something like "aaa bb" The existing form would pass it as two parameters to calling script, "$@" preserves it as single parameter. I bumped into this while back when I was trying to pass multiple options to xunit
https://stackoverflow.com/questions/12314451/accessing-bash-command-line-args-vs/12316565
I'm going to roll back this and submit that as separate PR.
There was a problem hiding this comment.
I've run into this issue as well. This works on Windows but is broken on Linux:
msbuild.sh /t:RebuildAndTest /p:XunitOptions="-showprogress -parallel none"
weshaggard
left a comment
There was a problem hiding this comment.
Looks reasonable to me.
What is the plan for getting the builds to automatically work on supported platforms without needing to pass in the version?
|
I don't know @weshaggard . I would be happy to help with *NIX build improvements but perhaps we can sync up on priority list. |
|
@dleeapho looks like this is another piece of the toolset acquisition problem. |
…net/corefx#23302) * add option to specify clang and few minor improvements * roll-back $* $@ change. that should be separate PR Commit migrated from dotnet/corefx@39b4505
fixes #23299 - build on Ubuntu 17.04
build-native.sh under src/Native already has option to specify clang but that is not exposed to top level and build.sh clang3.8 fails with complain about unknown option.
The options are really inconsistent, some starting with --XX, some -YY and some ZZZ.
To keep it consistent wit top level options and help I added -Clang=XYZ so one can pass any string without need to update script for every new clang version (which builds-managed.sh clangx.y does)
There are also three more minor improvements:
I did test build on Ubuntu 17.04
./build.sh -Clang=clan3.8
I also did basic testing on OSX.
./build.sh -h
...
[-ProducesTarget] MsBuild target that displays all of the artifacts this repo produces.
[-DirectoryToBuild] MsBuild property used to set the directory to scope the build to things under that
directory.
=> Default value: Please-Specify-A-Directory
[-Clang] Specific version of Clang to use e.g. clang3.7, clang3.8, etc ...
[-RunQuiet] Run tool specific setting. Set to True to only display output from the executing
command.
=> Default value: false
=> Legal values: [true, false].
this should fix panda20 build problem @geoffkizer