# Parallel make flags on break build %global _smp_build_ncpus 1 # https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval # astropy is not available anymore on i686 ExcludeArch: %{ix86} Name: astrometry Version: 0.94 Release: 10%{?dist} Summary: Blind astrometric calibration of arbitrary astronomical images # Software is BSD with some GPL code # https://groups.google.com/forum/#!topic/astrometry/9GgP7rj4Y-g # Here we asked to fix source headers: # https://groups.google.com/forum/#!topic/astrometry/mCuyze3TOeM # # Licensing breakdown # =================== # # See also: file CREDITS in source folder # # General license for astrometry and libkd code: 3-clause BSD # # GPLv2+: # qfits-an/* # include/astrometry/qfits* # catalogs/ucac4-fits.h # util/makefile.jpeg # util/md5.c # Makefile # doc/UCAC3_guide/* (not used for build and not shipped) # doc/UCAC4_guide/* (not used for build and not shipped) # # .fits data files # # GPLv3+: # blind/an_mm_malloc.h # util/ctmf.c # License: BSD-3-Clause and GPL-2.0-or-later and GPL-3.0-or-later URL: http://www.astrometry.net # Upstream sources contains nonfree stuff so we must clean them # Download original sources from: # Source0: https://github.com/dstndstn/%%{name}.net/releases/download/%%{version}/%%{name}.net-%%{version}.tar.gz # Then use the provided script to clean them with # ./astrometry-generate-tarball %%{version} Source0: %{name}.net-%{version}-clean.tar.xz Source1: %{name}-generate-tarball.sh # data files, ./astrometry-get-data.sh Source2: astrometry-data-4107-4119.tar.zst Source3: astrometry-data-5206.tar.zst Source4: astrometry-data-5205.tar.zst Source5: astrometry-get-data.sh Patch: numpy-distutils-removal.patch # Patches from Ole Streicher used on Debian Patch: %{name}-0.89_Add-SONAME-to-libastrometry.so.patch Patch: %{name}-0.89_Dynamically-link-to-libastrometry.so-when-possible.patch Patch: %{name}-0.89_Fix-issues-when-using-Debian-libs-instead-of-convienience.patch Patch: %{name}-0.91_Fix-shared-lib-flags-so-that-the-package-can-be-built-on-.patch Patch: %{name}-0.89_Don-t-copy-demo-files-to-examples.patch Patch: %{name}-0.89_Remove-errornous-generation-of-net-client.py.patch BuildRequires: gcc BuildRequires: make BuildRequires: netpbm-devel BuildRequires: python3-numpy BuildRequires: python3-astropy BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: swig BuildRequires: xorg-x11-proto-devel BuildRequires: pkgconfig BuildRequires: pkgconfig(cairo) BuildRequires: pkgconfig(cfitsio) BuildRequires: pkgconfig(fontconfig) BuildRequires: pkgconfig(gsl) BuildRequires: pkgconfig(libjpeg) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(wcslib) BuildRequires: pkgconfig(xrender) BuildRequires: pkgconfig(zlib) Requires: %{name}-libs%{?_isa} = %{version}-%{release} Requires: netpbm-progs Requires: python3-%{name} = %{version}-%{release} # User could use own set of index files or another set from upstream. # Therefore we recommend and not require index-files from Fedora repos. Recommends: %{name}-data-4107-4119 = %{version}-%{release} Provides: bundled(libkd) Provides: bundled(qfits) %description The astrometry engine will take any image and return the astrometry world coordinate system (WCS), a standards-based description of the transformation between image coordinates and sky coordinates. Other tools included in the astrometry package can do much more, like plotting astronomic information over solved images, conversion utilities or generate statistics from FITS images. %package data-4107-4119 Summary: Index files for astrometry (scale 7-19, wide-field) License: GPL-2.0-or-later BuildArch: noarch Requires: %{name} = %{version}-%{release} Enhances: %{name} Obsoletes: %{name}-data <= %{version}-%{release} Provides: %{name}-data = %{version}-%{release} Obsoletes: %{name}-data-4207 <= %{version}-%{release} Provides: %{name}-data-4207 = %{version}-%{release} Obsoletes: %{name}-tycho2 <= 2.0-18 Provides: %{name}-tycho2 = 2.0-18 %description data-4107-4119 Index files for astrometry built from the Tycho-2 catalog (scales 7-19, wide-field, from 22 to 2000 arcminutes). %package data-5206 Summary: Index files for astrometry (scale 6, 16 to 22 arcmin) License: GPL-2.0-or-later BuildArch: noarch Requires: %{name} = %{version}-%{release} Enhances: %{name} Obsoletes: %{name}-data-4206 <= %{version}-%{release} Provides: %{name}-data-4206 = %{version}-%{release} %description data-5206 Index files for astrometry built from Tycho-2 + Gaia-DR2 catalogs, light version (no additional Gaia-DR2 information tagged along). These indexes are suitable for images from 16 to 22 arcminutes. %package data-5205 Summary: Index files for astrometry (scale 5, 11 to 16 arcmin) License: GPL-2.0-or-later BuildArch: noarch Requires: %{name} = %{version}-%{release} Enhances: %{name} Obsoletes: %{name}-data-4205 <= %{version}-%{release} Provides: %{name}-data-4205 = %{version}-%{release} %description data-5205 Index files for astrometry built from Tycho-2 + Gaia-DR2 catalogs, light version (no additional Gaia-DR2 information tagged along). These indexes are suitable for images from 11 to 16 arcminutes. %package devel Summary: Development files for %{name} Requires: %{name}-libs%{?_isa} = %{version}-%{release} %description devel %{summary} %package libs Summary: Libraries for %{name} %description libs Libraries for %{name} %package -n python3-%{name} Summary: Python modules from %{name} Requires: python3-astropy %description -n python3-%{name} %{summary} %prep %autosetup -p1 -n %{name}.net-%{version} %setup -T -D -a 2 -n %{name}.net-%{version} %setup -T -D -a 3 -n %{name}.net-%{version} %setup -T -D -a 4 -n %{name}.net-%{version} %build # Weird symlink required... (also in upstream git) ln -sf . astrometry # Parallel make flags on break build %make_build \ SYSTEM_GSL=yes \ NETPBM_INC=-I%{_includedir}/netpbm \ NETPBM_LIB="-L%{_libdir} -lnetpbm" \ all py extra %install %make_install SYSTEM_GSL=yes \ INSTALL_DIR=%{buildroot}%{_prefix} \ PY_BASE_INSTALL_DIR=%{buildroot}%{python3_sitearch}/%{name} \ INCLUDE_INSTALL_DIR=%{buildroot}%{_includedir}/%{name} \ LIB_INSTALL_DIR=%{buildroot}%{_libdir} \ BIN_INSTALL_DIR=%{buildroot}%{_bindir} \ DATA_INSTALL_DIR=%{buildroot}%{_datadir}/%{name}/data \ PY_BASE_LINK_DIR=%{python3_sitearch}/%{name} \ ETC_INSTALL_DIR=%{buildroot}%{_sysconfdir} \ MAN1_INSTALL_DIR=%{buildroot}%{_mandir}/man1 \ DOC_INSTALL_DIR=%{buildroot}%{_docdir}/%{name} \ EXAMPLE_INSTALL_DIR=%{buildroot}%{_datadir}/%{name}/examples # We need to correct the data dir link in config file sed -i \ "s:%{buildroot}%{_prefix}/data:%{_datadir}/%{name}/data:" \ %{buildroot}/etc/astrometry.cfg # Rename generic named executables with known conflict pushd %{buildroot}%{_bindir} for exec in tabmerge tablist; do mv $exec astrometry-$exec done popd # Fix python shebangs %py3_shebang_fix %{buildroot}%{_bindir}/degtohms \ %{buildroot}%{_bindir}/hmstodeg \ %{buildroot}%{_bindir}/image2pnm \ %{buildroot}%{_bindir}/merge-columns \ %{buildroot}%{_bindir}/removelines \ %{buildroot}%{_bindir}/text2fits \ %{buildroot}%{_bindir}/uniformize \ %{buildroot}%{_bindir}/votabletofits # Remove unuseful file rm -f %{buildroot}%{_docdir}/%{name}/report.txt # We don't ship static libraries so we remove them rm -f %{buildroot}%{_libdir}/*.a # LICENSE file is managed by %%license scriptlet rm -f %{buildroot}%{_docdir}/%{name}/LICENSE # Remove symlink in bin to python script rm -f %{buildroot}%{_bindir}/plotann.py # Install data files install -m0644 astrometry-data*/*.fits %{buildroot}%{_datadir}/%{name}/data %check export PYTHON=%{__python3} make test ARCH_FLAGS="%{optflags}" %files %doc CREDITS README.md %license LICENSE %{_mandir}/man1/* %{_bindir}/* # Exclude python scripts %exclude %{_bindir}/degtohms %exclude %{_bindir}/hmstodeg %exclude %{_bindir}/image2pnm %exclude %{_bindir}/merge-columns %exclude %{_bindir}/removelines %exclude %{_bindir}/text2fits %exclude %{_bindir}/uniformize %exclude %{_bindir}/votabletofits %dir %{_datadir}/astrometry %dir %{_datadir}/astrometry/data %{_datadir}/astrometry/examples %config(noreplace) %{_sysconfdir}/astrometry.cfg %files data-4107-4119 %{_datadir}/astrometry/data/index-41*.fits %files data-5206 %{_datadir}/astrometry/data/index-5206*.fits %files data-5205 %{_datadir}/astrometry/data/index-5205*.fits %files devel %{_includedir}/* %{_libdir}/*.so %files libs %license LICENSE %{_libdir}/*.so.0* %files -n python3-%{name} %{python3_sitearch}/%{name} %{_bindir}/degtohms %{_bindir}/hmstodeg %{_bindir}/image2pnm %{_bindir}/merge-columns %{_bindir}/removelines %{_bindir}/text2fits %{_bindir}/uniformize %{_bindir}/votabletofits %changelog * Sun Aug 04 2024 Mattia Verga - 0.94-10 - Disable build on i686 (fix Fedora#2300567) - Switch Tycho index files to upstream provided - Switch 42xx index files to 52xx * Thu Jul 25 2024 Miroslav Suchý - 0.94-9 - convert license to SPDX * Wed Jul 17 2024 Fedora Release Engineering - 0.94-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild * Sat Jun 08 2024 Python Maint - 0.94-7 - Rebuilt for Python 3.13 * Mon Jan 29 2024 Mattia Verga - 0.94-6 - Rebuilt for libwcs soname bump * Mon Jan 22 2024 Fedora Release Engineering - 0.94-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Sun Jan 21 2024 Mattia Verga - 0.94-4 - Fix build failure due to removed numpy.distutils and deprecated distutils * Fri Jan 19 2024 Fedora Release Engineering - 0.94-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild * Wed Jan 10 2024 Mattia Verga - 0.94-2 - Rebuilt for libwcs soname bump * Sun Sep 17 2023 Mattia Verga - 0.94-1 - Update to 0.94 (fedora#2148995) - Migrate license to SPDX * Wed Jul 19 2023 Fedora Release Engineering - 0.91-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild * Thu Jun 15 2023 Python Maint - 0.91-4 - Rebuilt for Python 3.12 * Wed Jan 18 2023 Fedora Release Engineering - 0.91-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild * Thu Dec 29 2022 Maxwell G - 0.91-2 - Rebuild for cfitsio 4.2 * Tue Nov 01 2022 Mattia Verga - 0.91-1 - Update to 0.91 (fedora#2078037) * Tue Aug 23 2022 Mamoru TASAKA - 0.89-4 - Rebuild for gsl-2.7.1 * Wed Jul 20 2022 Fedora Release Engineering - 0.89-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild * Wed Jun 15 2022 Python Maint - 0.89-2 - Rebuilt for Python 3.11 * Sun Feb 06 2022 Mattia Verga - 0.89-1 - Update to 0.89 (fedora#1828169) * Wed Jan 19 2022 Fedora Release Engineering - 0.78-13 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild * Wed Jul 21 2021 Fedora Release Engineering - 0.78-12 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild * Fri Jun 04 2021 Python Maint - 0.78-11 - Rebuilt for Python 3.10 * Tue Feb 02 2021 Christian Dersch - 0.78-10 - Rebuilt for libcfitsio.so.7 * Tue Jan 26 2021 Fedora Release Engineering - 0.78-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild * Mon Jul 27 2020 Fedora Release Engineering - 0.78-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild * Tue May 26 2020 Miro Hrončok - 0.78-7 - Rebuilt for Python 3.9 * Wed Mar 25 2020 Mamoru TASAKA - 0.78-6 - Rebuild for new wcslib * Tue Jan 28 2020 Fedora Release Engineering - 0.78-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild * Thu Oct 03 2019 Miro Hrončok - 0.78-5 - Rebuilt for Python 3.8.0rc1 (#1748018) * Tue Aug 20 2019 Susi Lehtola - 0.78-4 - Rebuilt for GSL 2.6. * Mon Aug 19 2019 Miro Hrončok - 0.78-3 - Rebuilt for Python 3.8 * Wed Jul 24 2019 Fedora Release Engineering - 0.78-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild * Sun Apr 28 2019 Christian Dersch - 0.78-1 - new version * Thu Jan 31 2019 Fedora Release Engineering - 0.76-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild * Wed Oct 10 2018 Christian Dersch - 0.76-1 - new version * Mon Jul 16 2018 Christian Dersch - 0.75-2 - Dependency fix, require python3-astrometry, not python2-astrometry * Sat Jul 14 2018 Christian Dersch - 0.75-1 - new version * Sat Jul 14 2018 Christian Dersch - 0.74-3 - Switch to Python 3 - BuildRequires: gcc * Thu Jul 12 2018 Fedora Release Engineering - 0.74-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild * Sat May 26 2018 Christian Dersch - 0.74-1 - new version * Sat May 26 2018 Christian Dersch - 0.73-5 - rebuilt for cfitsio 3.450 * Sat Feb 24 2018 Christian Dersch - 0.73-4 - rebuilt for cfitsio 3.420 (so version bump) * Wed Feb 14 2018 Christian Dersch - 0.73-3 - rebuilt * Wed Feb 07 2018 Fedora Release Engineering - 0.73-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild * Fri Nov 17 2017 Christian Dersch - 0.73-1 - new version * Tue Oct 17 2017 Christian Dersch - 0.72-4 - Added subpackages for 4204-4207 index files * Mon Oct 16 2017 Christian Dersch - 0.72-3 - Added data subpackage containing the wide-field 2MASS indices * Mon Sep 25 2017 Christian Dersch - 0.72-2 - Move libs to subpackage to be multiarch compatible * Tue Sep 12 2017 Christian Dersch - 0.72-1 - Initial SCM import (#1470436) * Wed Jul 12 2017 Christian Dersch - 0.72-0.1 - initial spec (using the packaging effort from Mattia Verga, RHBZ #1299139)