Skip to content

Conversation

@akoeplinger
Copy link
Member

No description provided.

@akoeplinger akoeplinger added the full-mono-integration-build For PRs; run a full build (~6-10h for mono bumps), not the faster PR subset (~2h for mono bumps) label Oct 18, 2017
@akoeplinger
Copy link
Member Author

@monojenkins build

if (string.Compare (expectedRuntime, "debug", StringComparison.OrdinalIgnoreCase) == 0) {
Assert.IsNotNull (inApk, "libmono-profiler-log.so should exist in the apk.");
if (inApk == null)
Assert.Fail ("libmono-profiler-log.so should exist in the apk.");
Copy link
Contributor

Choose a reason for hiding this comment

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

Why replace Assert.IsNotNull with if (inapt != null) Assert.Fail()? Aren't those semantically the same?

Copy link
Member Author

Choose a reason for hiding this comment

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

I cherry-picked that from the abandoned #723 so I don't have a lot of context, but the commit message says this: Avoid dumping the content of libmono-profiler-log.so when test is falling which makes sense to me since Assert.IsNotNull would dump the value of inApk to the log.

Copy link
Contributor

Choose a reason for hiding this comment

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

Ah. Good reason. :-)

psi.StandardOutputEncoding = Encoding.UTF8;
var p = Process.Start (psi);
var ranToCompletion = p.WaitForExit ((int)new TimeSpan (0,10,0).TotalMilliseconds);
var ranToCompletion = p.WaitForExit ((int)new TimeSpan (0,15,0).TotalMilliseconds);
Copy link
Contributor

Choose a reason for hiding this comment

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

Is the new mono slower and that's why we need to increase timeouts?

Copy link
Member Author

Choose a reason for hiding this comment

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

This is a debugging aid I added to investigate failures I saw before the msbuild tests got broken in master. I'll take a closer look once those are fixed again.

@luhenry
Copy link
Contributor

luhenry commented Oct 19, 2017

@jonpryor the error on Ubuntu+xbuild PR build is /mnt/jenkins/workspace/xamarin-anroid-linux-pr-builder/xamarin-android/build-tools/scripts/RequiredPrograms.targets: error : Missing dependency detected. For Linux we do not know how to install program mono, version >= 5.8.0., what should be done on xamarin-android's side to fix that?

And for the VSTS: Xamarin.Android Windows build, there are a bunch of errors, but the most meaningful one seems to be Error MSB3073: The command "NOCONFIGURE=1 ./autogen.sh" exited with code 9009, and that happens to be that we try to execute the command starting with NOCONFIGURE and the shell doesn't seem to understand that.

Are these knows failures? Or do they seem to be introduced by the mono bump?

@akoeplinger
Copy link
Member Author

akoeplinger commented Oct 19, 2017

@luhenry the Linux error is expected because there's no Mono 5.8 for Linux yet (the integration guide says this should be dealt with at the end).

The VSTS Windows error I think is expected as well since it relies on the Mono bundle, which won't be uploaded until this lands in master. This means it tries to build Mono from source which won't work on Windows (out of the box).

@akoeplinger akoeplinger force-pushed the mono-2017-10 branch 2 times, most recently from 5f85022 to 6407581 Compare October 24, 2017 18:34
@akoeplinger
Copy link
Member Author

@monojenkins build

@akoeplinger akoeplinger force-pushed the mono-2017-10 branch 3 times, most recently from 0b4b5be to 4df96d4 Compare October 27, 2017 00:38
akoeplinger and others added 11 commits October 27, 2017 20:59
Using an explicit version there is just a recipe for outdated info,
instead rewrite it to be generic since the build will complain on
an outdated Mono anyway
It's behind the CDN and way faster outside US.
eglib was moved into a subdirectory in mono/mono#5297
eglib/config.h doesn't exist anymore, mono doesn't use a separate autoconf for eglib anymore
It isn't required to build the monodroid profile and saves a lot of build time.
The tools needed by XA are taken from the new monodroid_tools profile instead.
The target in Mono builds without errors now when using the monodroid profile.
Those are used in the new System.Reflection.Emit.SaveTest ().
Xamarin.Android.Common.props is generated as part of the build.

The build/ directory contains .rawproto files created by the
Android Gradle plugin and should be excluded.
@akoeplinger akoeplinger changed the title [WIP] Bump Mono to 2017-10 Bump Mono to 2017-10 Oct 27, 2017
@jonpryor jonpryor merged commit c43c5e6 into master Oct 31, 2017
@github-actions github-actions bot locked and limited conversation to collaborators Feb 4, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

full-mono-integration-build For PRs; run a full build (~6-10h for mono bumps), not the faster PR subset (~2h for mono bumps)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants