diff --git a/_multibuild b/_multibuild
new file mode 100644
index 0000000..fcc7b97
--- /dev/null
+++ b/_multibuild
@@ -0,0 +1,3 @@
+
+ test
+
diff --git a/python-astropy.changes b/python-astropy.changes
index 1e9c41c..2fa29fe 100644
--- a/python-astropy.changes
+++ b/python-astropy.changes
@@ -1,3 +1,13 @@
+-------------------------------------------------------------------
+Wed Jun 3 07:42:45 UTC 2020 - Tomáš Chvátal
+
+- Switch to multibuild to avoid cycle with python-asdf package
+
+-------------------------------------------------------------------
+Wed May 27 09:36:06 UTC 2020 - Petr Gajdos
+
+- %python3_only -> %python_alternative
+
-------------------------------------------------------------------
Sun Apr 19 10:53:30 UTC 2020 - Benjamin Greiner
diff --git a/python-astropy.spec b/python-astropy.spec
index a446ef9..e4d3b13 100644
--- a/python-astropy.spec
+++ b/python-astropy.spec
@@ -17,6 +17,15 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
+%global flavor @BUILD_FLAVOR@%{nil}
+%if "%{flavor}" == "test"
+%define psuffix -test
+%bcond_without test
+%else
+%define psuffix %{nil}
+%bcond_with test
+%endif
+%define binaries fitsdiff fitsheader fitscheck fitsinfo fits2bitmap samp_hub showtable volint wcslint
%define skip_python2 1
Name: python-astropy
Version: 4.0.1.post1
@@ -48,12 +57,14 @@ Requires: liberfa1 >= 1.7.0
Requires: python-dbm
Requires: python-matplotlib >= 2.1
Requires: python-numpy >= 1.7.0
+Requires(post): update-alternatives
+Requires(postun): update-alternatives
Recommends: libxml2-tools
+Recommends: python-Bottleneck
Recommends: python-Jinja2
Recommends: python-PyYAML
Recommends: python-asdf >= 2.5
Recommends: python-beautifulsoup4
-Recommends: python-Bottleneck
Recommends: python-bleach
Recommends: python-h5py
Recommends: python-ipython
@@ -63,6 +74,7 @@ Recommends: python-pandas
Recommends: python-scikit-image
Recommends: python-scipy >= 0.18
Conflicts: perl-Data-ShowTable
+%if %{with test}
# SECTION Optional requirements
BuildRequires: %{python_module Bottleneck}
BuildRequires: %{python_module Jinja2}
@@ -86,6 +98,7 @@ BuildRequires: %{python_module pytest-astropy}
BuildRequires: %{python_module pytest-doctestplus}
BuildRequires: %{python_module pytest-mpl}
# /SECTION
+%endif
%python_subpackages
%description
@@ -107,11 +120,16 @@ echo "[build]" >> setup.cfg
echo "use_system_libraries=1" >> setup.cfg
%build
+%if !%{with test}
%python_build --use-system-libraries --offline
+%endif
%install
+%if !%{with test}
%python_install --use-system-libraries --offline
-
+for b in %{binaries}; do
+ %python_clone -a %{buildroot}%{_bindir}/$b
+done
chmod a-x %{buildroot}%{python_sitearch}/astropy/wcs/tests/data/header_with_time.fits
# Deduplicating files can generate a RPMLINT warning for pyc mtime
@@ -131,12 +149,14 @@ $python -m compileall -d %{$python_sitearch} %{buildroot}%{$python_sitearch}/
$python -O -m compileall -d %{$python_sitearch} %{buildroot}%{$python_sitearch}/astropy/wcs/tests/
%fdupes %{buildroot}%{$python_sitearch}
}
+%endif
%check
+%if %{with test}
export PYTHONDONTWRITEBYTECODE=1
# http://docs.astropy.org/en/latest/development/testguide.html#running-tests
%python_exec setup.py build_ext --inplace --offline
-%ifarch aarch64
+%ifarch aarch64
# doctest failure because of precision errors
%define skippytest -k 'not bayesian_info_criterion_lsq'
%endif
@@ -144,20 +164,33 @@ export PYTHONDONTWRITEBYTECODE=1
-W "ignore:Unknown pytest.mark.openfiles_ignore:pytest.PytestUnknownMarkWarning" \
--ignore "docs/whatsnew" %{?skippytest}
}
+%endif
+
+%if !%{with test}
+%post
+for b in %{binaries}; do
+ %python_install_alternative $b
+done
+
+%postun
+for b in %{binaries}; do
+ %python_uninstall_alternative $b
+done
%files %{python_files}
%doc CHANGES.rst README.rst
%license licenses/*
-%python3_only %{_bindir}/fitsdiff
-%python3_only %{_bindir}/fitsheader
-%python3_only %{_bindir}/fitscheck
-%python3_only %{_bindir}/fitsinfo
-%python3_only %{_bindir}/fits2bitmap
-%python3_only %{_bindir}/samp_hub
-%python3_only %{_bindir}/showtable
-%python3_only %{_bindir}/volint
-%python3_only %{_bindir}/wcslint
+%python_alternative %{_bindir}/fitsdiff
+%python_alternative %{_bindir}/fitsheader
+%python_alternative %{_bindir}/fitscheck
+%python_alternative %{_bindir}/fitsinfo
+%python_alternative %{_bindir}/fits2bitmap
+%python_alternative %{_bindir}/samp_hub
+%python_alternative %{_bindir}/showtable
+%python_alternative %{_bindir}/volint
+%python_alternative %{_bindir}/wcslint
%{python_sitearch}/astropy/
%{python_sitearch}/astropy-%{version}-py*.egg-info
+%endif
%changelog