#602 Mono packages must have ExclusiveArch: %{mono_arches}
Closed: Fixed None Opened 6 years ago by raphgro.

Mono packages can generally fail to build on secondary architectures, like s390, due to mono not being available on that arches. As a sample, that happened for restsharp [1].

To avoid FTBFS bugs, it is necessary to enhance mono guidelines to enforce 'ExclusiveArch: %{mono_arches}' for each mono package.

We already have guidelines [2] [3] for architecture specific packages. In case of mono, we think that's a special case cause all mono packages are to exclude from unsupported secondary architectures (i.e. "Mono 2.8+ drops support for s390" [4]) and that should be absolutely clear to packagers and reviewers.

By luckily having the mono_arches macro at hand, there's still a future chance to get all packages built on unforeseen architectures with newly enabled support for mono.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=1308457

[2] https://fedoraproject.org/wiki/Packaging:Guidelines#Architecture_Support

[3] https://fedoraproject.org/wiki/Architectures#ExcludeArch_.26_ExclusiveArch

[4] https://fedoraproject.org/wiki/Architectures/s390x#Notes_for_application_developers_and_package_maintainers

We discussed this at this weeks meeting (http://meetbot.fedoraproject.org/fedora-meeting-1/2016-03-03/fpc.2016-03-03-17.00.txt):

  • 602 Mono packages must have ExclusiveArch: %{mono_arches} (geppetto,

  • ACTION: Add exclusive arch, via mono_arches macro, to all mono
    packages (+1:5, 0:0, -1:0) (geppetto, 17:58:01)

I have made the necessary changes to the Mono packaging guidelines. Since no draft was provided, I've done my best.

Also note that EPEL6 does not have %mono_arches (or some other mono macros). If those are desired, please file a bugzilla ticket against epel-rpm-macros and I'll add them.

Announcement text:

The mono guidelines were modified to require that packages limit themselves via ExclusiveArch: to architectures which actually support mono.

LGTM, thanks.


BTW, we need a similiar thing for pascal (fpc is the compiler name). Pascal compiler availability is limited to some architectures, too. I've suggested to open another ticket in a pascal package review but no idea if the ticket really happened, and there are not any pascal guidelines yet.

Metadata Update from @james:
- Issue assigned to tibbs

5 years ago

Login to comment on this ticket.