Bug 1588734 - Mono FTBFS on ppc64 and ppc64le with a stacktrace
Summary: Mono FTBFS on ppc64 and ppc64le with a stacktrace
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: mono
Version: 30
Hardware: ppc64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Xavier Lamien
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Keywords:
Depends On: 1686983
Blocks: PPCTracker 1659050 1686736 1686738 1686270
TreeView+ depends on / blocked
 
Reported: 2018-06-07 19:03 UTC by Timotheus Pokorra
Modified: 2019-04-15 14:15 UTC (History)
15 users (show)

(edit)
Clone Of:
(edit)
Last Closed: 2019-04-03 04:19:52 UTC


Attachments (Terms of Use)
build log of ppc64 (381.40 KB, text/plain)
2018-06-07 19:03 UTC, Timotheus Pokorra
no flags Details
build log of ppc64le (799.60 KB, text/plain)
2018-06-07 19:04 UTC, Timotheus Pokorra
no flags Details

Description Timotheus Pokorra 2018-06-07 19:03:25 UTC
Created attachment 1448815 [details]
build log of ppc64

This happens reproducibly on each build.
There is a stack trace when building mscorlib.dll.

Comment 1 Timotheus Pokorra 2018-06-07 19:04 UTC
Created attachment 1448816 [details]
build log of ppc64le

Comment 2 Timotheus Pokorra 2018-06-07 19:05:55 UTC
I have tried to apply the same parameters for RPM_OPT_FLAGS as was used for fixing the s390x build, but that did not make a difference.

Comment 3 Dan Horák 2018-06-07 19:50:49 UTC
Thanks for the report, I'm looking into it and planned to open a bug in  the morning :-)

Comment 4 Dan Horák 2018-06-08 09:00:34 UTC
So I'm getting no crash when building locally from the 2018-04 branch, which makes me to think there was some ppc related fix applied. How difficult it would be to update mono in rawhide to the 5.x version?

Comment 5 Timotheus Pokorra 2018-06-12 05:54:47 UTC
Hello Dan,
thanks for looking into fixing mono for these architectures. This is much appreciated!

Upgrading to 5.x: that would be very nice. But Claudio and myself have tried it various times. see the comments in bug 1436896.
Unfortunately Mono now uses binary files to build, that are not built by Mono, so we would need to package those. But that is not easy (or even not possible?), because they require msbuild and dotnet core to build. But I have to admit I don't know for sure.

To some degree I am waiting for .NET Core to land in Fedora (https://fedoraproject.org/wiki/SIGs/DotNet), and hope this will give support for the latest version of Mono.

Timotheus

Comment 6 Dan Horák 2018-06-12 08:06:03 UTC
I wonder what's missing for Mono 5.x because the Sine Nomine guys were able to build 5.12 for EPEL-7 for s390x (they are upstream for Mono on s390x), with the same package layout as our 4.8 has. I'll check with them. Their binaries are at http://download.sinenomine.net/clefos/epel7/s390x/

AFAIK bundling binaries for bootstrapping purpose is allowed.

Comment 7 Timotheus Pokorra 2018-06-12 15:49:19 UTC
yes, for bootstrapping that is fine.
But those additional binaries are not built from the mono package, and would need to be packaged separately.

Claudio wrote in https://bugzilla.redhat.com/show_bug.cgi?id=1436896#c82

Well, I managed to compile using mcs. But it is still necessary to keep the folder ./external/roslyn-binaries/Microsoft.Net.Compilers/Microsoft.Net.Compilers.2.6.0/* and the file ./external/binary-reference-assemblies/v4.7.1/System .Net.Http.dll from references-assemblies

Comment 8 Jan Kurik 2018-08-14 09:58:57 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 29 development cycle.
Changing version to '29'.

Comment 9 Timotheus Pokorra 2019-01-02 06:27:44 UTC
We cannot fix Mono for Fedora 29 and rawhide due to this bug.

Can this be fixed, or should we drop support for ppc64le?

Comment 10 Timotheus Pokorra 2019-02-11 06:15:10 UTC
I have now added ExcludeArch: ppc64le to the Mono spec file, so that it builds in Rawhide for Fedora 30.

Since Debian managed to get Mono 5 to build according to their rules, we will probably try that for Fedora 31 too. We were too late for Fedora 30, since this affects a number of packages depending on Mono.

Comment 11 Elliott Sales de Andrade 2019-02-18 01:35:03 UTC
You should probably contact downstream packagers about this ExcludeArch, because it'll break many of them: https://apps.fedoraproject.org/koschei/affected-by/mono-core?epoch1=0&version1=4.8.0&release1=14.fc28&epoch2=0&version2=4.8.0&release2=17.fc30&collection=f30

Comment 12 Timotheus Pokorra 2019-02-18 12:21:31 UTC
I was just worried that Mono would fail a second mass rebuild.
I could post to the mono SIG, but it has been very quiet in the past years.

Release 30 will be branched from Rawhide tomorrow, and I will file a change proposal for Mono 5, and that will hopefully fix the situation again.

Comment 13 Jaroslav Škarvada 2019-03-07 09:11:16 UTC
(In reply to Timotheus Pokorra from comment #10)
> I have now added ExcludeArch: ppc64le to the Mono spec file, so that it
> builds in Rawhide for Fedora 30.
> 
> Since Debian managed to get Mono 5 to build according to their rules, we
> will probably try that for Fedora 31 too. We were too late for Fedora 30,
> since this affects a number of packages depending on Mono.

It broke graphviz package and probably others who are relying on the %mono_arches macro:
$ rpm --eval %mono_arches
i386 i486 i586 i686 pentium3 pentium4 athlon geode x86_64 sparc sparcv9 ia64 armv3l armv4b armv4l armv4tl armv5tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl aarch64 alpha s390x ppc ppc64 ppc64le

Could you update it?

Graphviz FTBFS bug 1686270.

Comment 14 Timotheus Pokorra 2019-03-07 21:59:34 UTC
that mono_arches is actually defined in another package: https://src.fedoraproject.org/cgit/rpms/redhat-rpm-config.git/tree/macros.mono-srpm

For Rawhide, I hope to update to the latest Mono 5 quite soon, which should build again for ppc64, when this change is approved: https://fedoraproject.org/wiki/Changes/Mono_5

For Fedora 30, changing mono_arches to drop ppc64 is a option we should consider. Or should we dare to update Mono to version 5 in Fedora 30 after it is released? I am not sure if that is permitted at all. So dropping ppc64 Mono from Fedora 30 might be the only way.

What do you think?

Comment 15 Jaroslav Škarvada 2019-03-08 09:51:43 UTC
(In reply to Timotheus Pokorra from comment #14)
> that mono_arches is actually defined in another package:
> https://src.fedoraproject.org/cgit/rpms/redhat-rpm-config.git/tree/macros.
> mono-srpm
> 
> For Rawhide, I hope to update to the latest Mono 5 quite soon, which should
> build again for ppc64, when this change is approved:
> https://fedoraproject.org/wiki/Changes/Mono_5
> 
> For Fedora 30, changing mono_arches to drop ppc64 is a option we should
> consider. Or should we dare to update Mono to version 5 in Fedora 30 after
> it is released? I am not sure if that is permitted at all. So dropping ppc64
> Mono from Fedora 30 might be the only way.
> 
> What do you think?

Personally I don't know much about mono, that's why I commented here for mono maintainers to make the decision.

I am OK if you decide to drop it from the f30, in such case I would prefer changing the macro, because it will resolve the problem for everybody. I can also live without the macro change, in such case me and other maintainers will have to add workarounds to their SRPM for the f30 branch (dirty). In any case please let me know the way you decided to go. I can also create the redhat-rpm-config bug if you decided to go this way.

Comment 16 Timotheus Pokorra 2019-03-08 19:50:22 UTC
I like your suggestion. I filed bug 1686983 for redhat-rpm-config to drop ppc64 and ppc64le from mono_arches for Fedora 30.

Comment 17 Dan Horák 2019-03-28 22:13:39 UTC
this is fixed in mono-5.18.1-2.fc30 (.fc31), it's available on all arches again

Comment 18 Fedora Update System 2019-03-28 22:13:59 UTC
mono-5.18.1-2.fc30 has been submitted as an update to Fedora 30. https://bodhi.fedoraproject.org/updates/FEDORA-2019-153a4642ad

Comment 19 Fedora Update System 2019-03-29 00:12:52 UTC
mono-5.18.1-2.fc30 has been pushed to the Fedora 30 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-153a4642ad

Comment 20 Fedora Update System 2019-04-03 00:39:16 UTC
mono-5.18.1-2.fc30 has been pushed to the Fedora 30 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.