Am 26.02.2017 um 23:13 schrieb Susi Lehtola:
Hi,


I've packaged pybind11 which is a seamless interface between Python and C++11. This is a headers-only package, which would make it noarch... However, it also carries a testsuite, which - of course - is important to run on all architectures.

Is there some nifty trick to trick the build system to build the package on all arches simultaneously while making the headers package noarch?

If there were any binaries produced by the package, this would be easily accomplished, but I don't think there's any sense in shipping e.g. the testsuite just to make the headers noarch.

(Of course, should pybind11 develop a runtime library, then pybind11-devel would also include symlinks to the library, making it no longer a noarch package!)

Since you would build it like any python-package (python2 / python3 sub-packages), it's pretty easy to run the testsuite on all arches: Simply move the "BuildArch: noarch" from the main-package to all sub-packages.

Example:

# This package ships no binaries, thus no debuginfo is available.
%global debug_package %{nil}


Name: python-pybind11
…
BuildRequires: …
# No BuildArch here!!!

%package -n python2-pybind11
…
BuildArch: noarch

…

%package -n python3-pybind11
…
BuildArch: noarch

…

%check
#Run tests here.


This will make the package be build on all arches, but simply generate noarch-packages.

Cheers
  Björn
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org

Reply via email to