DevHeads.net

Outdated %fpc_arches macro?

Hello. I was trying to package some software written in Pascal, which means using the Free Pascal Compiler for building. FPC isn't available for all architectures that Fedora supports, so it was necessary to use the ExclusiveArch tag. I navigated to fpc in PkgDB, opened the spec file and copy-pasted the following line:
"ExclusiveArch: %{arm} %{ix86} x86_64 ppc ppc64"

Copy-pasting is a bit iffy, so I wondered if there's a better solution. I browsed Bugzilla and encountered the following ticket:
<a href="https://bugzilla.redhat.com/show_bug.cgi?id=1247925" title="https://bugzilla.redhat.com/show_bug.cgi?id=1247925">https://bugzilla.redhat.com/show_bug.cgi?id=1247925</a>

The last comment in the ticket says that there's an %{fpc_arches} macro that can be used instead. So I went ahead and changed that in my spec file:
"ExclusiveArch: %{fpc_arches}"

I then submitted my package for a scratch build in koji and noticed that in the task descendants list, ppc64 is missing. I ran "rpm --eval '%{fpc_arches}'" in my terminal and I got back:
"i386 i486 i586 i686 pentium3 pentium4 athlon geode armv3l armv4b armv4l armv4tl armv5tel armv5tejl armv6l armv6hl armv7l armv7hl armv7hnl x86_64"

As can be seen, ppc64 is missing from the list. Is this a case of the macro having an outdated value, or am I doing something wrong?

Comments

Re: Outdated %fpc_arches macro?

By Raphael Groner at 06/18/2017 - 08:47

Hi Artur,

I'm the one to blame for the beginnings of the fpc_arches macro. This idea was born from a package review [1] and implementation started with a FESCO ticket [2]. The legacy ticket #608 should be ported with the same number from fedorahosted.org with the big move to pagure.io, I can't verify currently cause pagure.io is down for me.

I'm wondering what to do about ppc64le [1] as well besides ppc64 only [2]?

Please also notice you have to block for the specificly failing architectures trackers with separate bug reports [3].

[1] <a href="https://bugzilla.redhat.com/show_bug.cgi?id=1299127#c6" title="https://bugzilla.redhat.com/show_bug.cgi?id=1299127#c6">https://bugzilla.redhat.com/show_bug.cgi?id=1299127#c6</a>
[2] <a href="https://lists.fedoraproject.org/archives/list/ ... at lists dot fedoraproject.org/thread/EAUKQDPUPNDAZPFIF6JM4U42Z2DC6U62/" title="https://lists.fedoraproject.org/archives/list/ ... at lists dot fedoraproject.org/thread/EAUKQDPUPNDAZPFIF6JM4U42Z2DC6U62/">https://lists.fedoraproject.org/archives/list/ ... at lists dot fedoraproj...</a>
[2] <a href="https://lists.fedoraproject.org/archives/list/ ... at lists dot fedoraproject.org/thread/NK6NUWOBQ2IEJHD65SFPLVJPVEKYA7ZW/" title="https://lists.fedoraproject.org/archives/list/ ... at lists dot fedoraproject.org/thread/NK6NUWOBQ2IEJHD65SFPLVJPVEKYA7ZW/">https://lists.fedoraproject.org/archives/list/ ... at lists dot fedoraproject....</a>
[3] <a href="https://fedoraproject.org/wiki/Packaging:Guidelines#Architecture_Build_Failures" title="https://fedoraproject.org/wiki/Packaging:Guidelines#Architecture_Build_Failures">https://fedoraproject.org/wiki/Packaging:Guidelines#Architecture_Build_F...</a>

Re: Outdated %fpc_arches macro?

By Mattia Verga at 06/18/2017 - 07:26

Il 18/06/2017 12:31, Artur Iwicki ha scritto:
The %{fpc_arches} macro evaluates to "%{ix86} %{arm} x86_64 ppc64" on
F26 and newer, for F25 and older it does only enable builds on "%{ix86}
%{arm} x86_64".