%global upstream_version 0.9.10 Name: starlink-pal Version: %{upstream_version} Release: 2%{?dist} Summary: Starlink Positional Astronomy Library # Upstream (Starlink/pal): LGPL-3.0-or-later License: LGPL-3.0-or-later URL: https://github.com/Starlink/pal Source0: https://github.com/Starlink/pal/archive/refs/tags/v%{upstream_version}/pal-%{upstream_version}.tar.gz # All patches below are carried over from Debian's starlink-pal packaging # (Debian Astronomy Team / Ole Streicher, https://salsa.debian.org/debian-astro-team/starlink-pal) # which already solved building this Starlink-autotools ("starconf") based # project with plain upstream automake instead of Starlink's private # automake fork. Patch0: starlink-pal-0003-rename-library-starlink_pal.patch Patch1: starlink-pal-0002-standard-automake.patch Patch2: starlink-pal-0004-default-source-strlcpy.patch Patch3: starlink-pal-0001-adjust-out-of-bounds-observatory-test.patch BuildRequires: gcc BuildRequires: make BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool BuildRequires: erfa-devel BuildRequires: pkgconfig %description PAL is a positional astronomy library, providing SOFA-like routines but released under the LGPL. It is a replacement for the older SLALIB library, implemented on top of ERFA (a BSD-licensed clean-room implementation of the SOFA routines). This is a build of PAL de-bundled from SAOImage DS9's in-tree copy; DS9 (and this library's consumer, starlink-ast) expects PAL to be installed as a normal shared library, headers under %{_includedir}/star/. %package devel Summary: Development files for starlink-pal Requires: %{name}%{?_isa} = %{version}-%{release} %description devel Header files and the shared-object symlink needed to build software against the Starlink PAL positional-astronomy library. %prep %autosetup -p1 -n pal-%{upstream_version} %build autoreconf -fiv %configure --disable-static %make_build %install %make_install find %{buildroot} -name '*.la' -delete # Duplicates of the COPYING/README files we already ship via %%license/%%doc. rm -rf %{buildroot}%{_datadir}/pal %check # palTest passes in a clean f44 mock (2026-10-22); a failure must fail the build. make %{?_smp_mflags} check || { cat pal-test-suite.log test-suite.log 2>/dev/null; exit 1; } %files %license COPYING COPYING.LESSER %doc README.md pal.news %{_libdir}/libstarlink_pal.so.* %files devel %{_includedir}/star/pal.h %{_includedir}/star/palmac.h %{_libdir}/libstarlink_pal.so %changelog * Thu Oct 22 2026 Morgan Hough - %{upstream_version}-2 - %%check: a failing test suite now fails the build; it was `|| cat ... || :`, which could not fail. palTest (the whole suite) passes in a clean f44 mock. Found by the 2026-10-22 readiness review. * Mon Aug 24 2026 Morgan Hough - 0.9.10-1 - Initial package for the neurofedora COPR: dependency of starlink-ast, itself a dependency of the eventual SAOImage DS9 package. - Build-system patches (standard automake, library renamed to libstarlink_pal, portability fix, test fix) carried over verbatim from Debian's starlink-pal packaging (Debian Astro Team).