[msbuild] Repack all iOS Task assemblies into Xamarin.iOS.Tasks.dll - #3007
Conversation
This is needed to prevent symbol conflicts with Xamarin.MacDev's ProcessArgumentBuilder (which is functionally different from Xamarin.MacDev.Tasks.Core's class of the same name).
…ntains all symbols
|
This PR replaces #2875 |
|
Build failure |
1 similar comment
|
Build failure |
|
Build failure |
|
build |
chamons
left a comment
There was a problem hiding this comment.
Looks reasonable at first glance. I don't grok the ilpack msbuild logic very well, but it should break very quickly if it's wrong. I added mmp/mtouch tests, at least mmp invoke msbuild a lot.
|
Build failure |
|
Build failure |
|
Does anyone understand what is failing in the build? |
|
https://jenkins.mono-project.com/job/xamarin-macios-pr-builder/5603/Test_Report/ |
|
Ok, that suggests that xbuild is being used instead of msbuild on the bots :( |
|
@jstedfast Correct. msbuild currently does not have sufficient redirect support to build all of the tests and use the local built binaries. @radical is working on that. However, I don't know of a reason why the msbuild/ can't be built w\ msbuild. You could look at changing that and see how it goes. |
|
I modified the Makefile to make it use msbuild for building the msbuild/ directory tho. :-\ |
|
https://jenkins.mono-project.com/job/xamarin-macios-pr-builder/5603/Test_Report/
|
|
@jstedfast I've just pushed a fix |
|
A wild @rolfbjarne to the rescue! 🎉 |
|
thanks @rolfbjarne ! |
|
Build failure |
|
This happens now: which seems to be a rebuild issue (if I do |
|
Yea, that's what is happening. How do I fix this? Why is it being "re"built? |
|
It's first built during normal In any case it doesn't matter why: it should be possible to build the solution multiple times. I don't know how to fix it, maybe @kzu knows? |
|
Build failure |
|
Build success |
…otnet#3007) * [msbuild] Pack all iOS MSBuild Task assemblies into a single assembly * Fixed the build * Renamed ProcessArgumentBuilder to CommandLineArgumentBuilder This is needed to prevent symbol conflicts with Xamarin.MacDev's ProcessArgumentBuilder (which is functionally different from Xamarin.MacDev.Tasks.Core's class of the same name). * Fixed ILRepack logic for filtering dll's to repack * Fixed building of Xamarin.iOS.Tasks.Tests now that X.iOS.Tasks.dll contains all symbols * Updated Makefile now that only 1 iOS Task assembly needs to be distributed * ILRepack Xamarin.Mac.Tasks as well * Fixed up *.targets to specify The One Assembly To Rule Them All * [xharness] Build MSBuild tests with MSBuild. * Touch the ilrepack stamp file *after* invoking ILRepack, not before. * Same for Xamarin.Mac.Tasks
https://bugzilla.xamarin.com/show_bug.cgi?id=52729