Re: Packaging golang for secondary architectures, go-srpm-macros

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 07/09/2015 12:49 PM, Petr Pisar wrote:
On 2015-07-09, Jan Chaloupka <jchaloup@xxxxxxxxxx> wrote:
# Define arches for PA and SA
%golang_arches   %{ix86} x86_64 %{arm}
[...]
Recommended use in spec file:
1) To choose the correct compiler:
%ifarch %{golang_arches}
BuildRequires: golang
%else
BuildRequires: gcc-go >= %{gccgo_min_vers}
%endif

This will not work. A source package is built on random architecture,
thus using %ifarch to define BuildRequire will provide random results.

Yes. SRPM is generated on random architecture. However spec file in generated SRPM is untouched. Once rpm is being built correct architectures is chosen based on BuildArch/ExclusiveArch tag. The above piece of a code is again reevaluated. But this time %ifarch is tested based on the chosen architecture. Thus the correct compiler is taken.

Even if the rpm is noarch, %ifarch x86_64 still works if it is built on x86_64. %ifarch noarch is false. Or maybe koji works differently?

(And maybe while building a source package, the RPM architecture is
redefined to `noarch' value.)

-- Petr

--
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxxx
https://admin.fedoraproject.org/mailman/listinfo/devel
Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]
  Powered by Linux