SHA256
10
0
forked from pool/wcslib
Files
wcslib/wcslib.spec

142 lines
4.1 KiB
RPMSpec
Raw Permalink Normal View History

#
# spec file for package wcslib
#
Accepting request 1132251 from home:bnavigator:branches:devel:languages:python:numeric Required by astropy v6.0 - Update to 8.2.2 * In prj.c, a number of variables with global scope that are only used internally were declared static to avoid namespace conflicts arising in Link Time Optimization (LTO) builds of the Rwcs wrappers. This is a patch release as it does not affect the library itself other than in localising some symbols that were never meant to be global. Reported by Rodrigo Carrizo with patch. Likewise for an internally used helper function, prjoff(). Likewise for a handful of variables in cel.c, dis.c, lin.c, tab.c, wcs.c, wcsfix.c, and wcshdr.c. - WCSLIB version 8.2 * In wcshdo(), fixed character buffer overflows in the comment string for the longitude and latitude axes triggered by some projections, and also the formatting for generic coordinate systems. Reported by Shu Niu. - WCSLIB version 8.1 * Changes in the contents of the auxprm struct (in 8.0 beta) necessitated incrementing the major version number from 7 to 8, i.e. the ABI changed. Took the opportunity for minor tweaks to wcsprm and disprm. ## C library * In disprm, changed the order of maxdis and totdis to ensure correct alignment of doubles on 32-bit machines. ## Fortran wrappers * Match changes to disprm in the C library. * In the Fortran test suite, inserted a brief pause between plots in tprj2, tspc, and tpih2, which have long been a blur. ## PGSBOX * Quell innocuous compiler warnings from gfortran 12.1.0. OBS-URL: https://build.opensuse.org/request/show/1132251 OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=27
2023-12-09 19:49:20 +00:00
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
Accepting request 1132251 from home:bnavigator:branches:devel:languages:python:numeric Required by astropy v6.0 - Update to 8.2.2 * In prj.c, a number of variables with global scope that are only used internally were declared static to avoid namespace conflicts arising in Link Time Optimization (LTO) builds of the Rwcs wrappers. This is a patch release as it does not affect the library itself other than in localising some symbols that were never meant to be global. Reported by Rodrigo Carrizo with patch. Likewise for an internally used helper function, prjoff(). Likewise for a handful of variables in cel.c, dis.c, lin.c, tab.c, wcs.c, wcsfix.c, and wcshdr.c. - WCSLIB version 8.2 * In wcshdo(), fixed character buffer overflows in the comment string for the longitude and latitude axes triggered by some projections, and also the formatting for generic coordinate systems. Reported by Shu Niu. - WCSLIB version 8.1 * Changes in the contents of the auxprm struct (in 8.0 beta) necessitated incrementing the major version number from 7 to 8, i.e. the ABI changed. Took the opportunity for minor tweaks to wcsprm and disprm. ## C library * In disprm, changed the order of maxdis and totdis to ensure correct alignment of doubles on 32-bit machines. ## Fortran wrappers * Match changes to disprm in the C library. * In the Fortran test suite, inserted a brief pause between plots in tprj2, tspc, and tpih2, which have long been a blur. ## PGSBOX * Quell innocuous compiler warnings from gfortran 12.1.0. OBS-URL: https://build.opensuse.org/request/show/1132251 OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=27
2023-12-09 19:49:20 +00:00
%define libver 8
Name: wcslib
Accepting request 1132251 from home:bnavigator:branches:devel:languages:python:numeric Required by astropy v6.0 - Update to 8.2.2 * In prj.c, a number of variables with global scope that are only used internally were declared static to avoid namespace conflicts arising in Link Time Optimization (LTO) builds of the Rwcs wrappers. This is a patch release as it does not affect the library itself other than in localising some symbols that were never meant to be global. Reported by Rodrigo Carrizo with patch. Likewise for an internally used helper function, prjoff(). Likewise for a handful of variables in cel.c, dis.c, lin.c, tab.c, wcs.c, wcsfix.c, and wcshdr.c. - WCSLIB version 8.2 * In wcshdo(), fixed character buffer overflows in the comment string for the longitude and latitude axes triggered by some projections, and also the formatting for generic coordinate systems. Reported by Shu Niu. - WCSLIB version 8.1 * Changes in the contents of the auxprm struct (in 8.0 beta) necessitated incrementing the major version number from 7 to 8, i.e. the ABI changed. Took the opportunity for minor tweaks to wcsprm and disprm. ## C library * In disprm, changed the order of maxdis and totdis to ensure correct alignment of doubles on 32-bit machines. ## Fortran wrappers * Match changes to disprm in the C library. * In the Fortran test suite, inserted a brief pause between plots in tprj2, tspc, and tpih2, which have long been a blur. ## PGSBOX * Quell innocuous compiler warnings from gfortran 12.1.0. OBS-URL: https://build.opensuse.org/request/show/1132251 OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=27
2023-12-09 19:49:20 +00:00
Version: 8.2.2
Release: 0
Summary: An implementation of the FITS WCS standard
License: LGPL-3.0-or-later
Group: Development/Libraries/C and C++
URL: https://www.atnf.csiro.au/people/mcalabre/WCS/wcslib/
Source0: ftp://ftp.atnf.csiro.au/pub/software/wcslib/%{name}-%{version}.tar.bz2
BuildRequires: cfitsio-devel
BuildRequires: fdupes
BuildRequires: flex
BuildRequires: gcc-fortran
BuildRequires: pkgconfig
%description
WCSLIB is a C library, supplied with a full set of Fortran wrappers, that
implements the "World Coordinate System" (WCS) standard in FITS (Flexible Image
Transport System).
%package -n libwcs%{libver}
Summary: An implementation of the FITS WCS standard
Group: System/Libraries
%description -n libwcs%{libver}
WCSLIB is a C library, supplied with a full set of Fortran wrappers, that
implements the "World Coordinate System" (WCS) standard in FITS (Flexible Image
Transport System).
%package devel
Summary: Development files for %{name}
Group: Development/Libraries/C and C++
Requires: cfitsio-devel
Requires: libwcs%{libver} = %{version}
Recommends: %{name}-doc
# libwcs-devel was last used in version 5.15
Provides: libwcs-devel = %{version}
Obsoletes: libwcs-devel <= 5.15
%description devel
This package contains libraries and header files for developing
applications that use %{name}.
%package doc
Summary: Documentation for %{name} library
# libwcs-doc was last used in version 5.15
Group: Documentation/Other
Provides: libwcs-doc = %{version}
Obsoletes: libwcs-doc <= 5.15
BuildArch: noarch
%description doc
This package contains documentation and help files for %{name} library.
%package tools
Summary: Tools for %{name}
Group: Productivity/Scientific/Other
Requires: libwcs%{libver} = %{version}
# libwcs-tools was last used in version 5.15
Provides: libwcs-tools = %{version}
Obsoletes: libwcs-tools <= 5.15
%description tools
This package contains tools for working with files created or
opened with %{name}.
%prep
%autosetup -p1
%build
# Additional FLAGS from %%configure macro makes tests ("make check") fail in i586. So don't use them for now.
%ifarch %ix86
./configure --prefix=%{_prefix} -docdir=%{_docdir}/%{name} --without-pgplot
%else
%configure --docdir=%{_docdir}/%{name} --without-pgplot
%endif
Accepting request 747228 from home:StefanBruens:branches:science - Update to version 6.4 (2019/08/15): * Installation - The rule change to the Fortran makefile in v6.3 to add getwcstab_f.o to the sharable library causes it to depend on CFITSIO to resolve fits_get_wcstab(). Hence backed out of that change. * User manual - Documentation generation moved to doxygen 1.8.16 (was 1.8.14). - Update to version 6.3 (2019/07/12) * C library - Fixed the Polynomial and TPD distortions so that, as stipulated in WCS Paper IV, they are now considered to return an additive correction to be applied to the given coordinates, rather than the corrected coordinates themselves. Added a new subsection to the prologue of dis.h entitled 'Historical idiosyncrasies', which discusses this issue and other vagueries. Amended components of the test suite accordingly: SIPTPV.keyrec, TPV7.keyrec, and tdis1.c. - Fixed memory leaks and other potential problems that arose in the wcserr system consequent on changes made in release 6.1. Memory allocated by wcsfixi() for messages in the array of wcserr structs must now be freed by the caller. Amended twcsfix.c accordingly. - Plugged memory leaks arising in disset(). - New function wcsdealloc() provided to free memory allocated within certain WCSLIB routines. Suggested by David Motl. - Eliminated a swag of inconsequential compiler warnings, particularly those emanating from the flex sources. * Validation - The library, Fortran wrappers, utilities, and test programs now pass runtime analysis using -fsanitize=address and -fsanitize=undefined in gcc 8.3.0, in addition to valgrind. Also compile-time strictures using -std=c99, -pedantic, -Wall, -Wextra, and -DFORTIFY_SOURCE=2. Prompted by feedback from Ole Streicher. * Installation - The non-graphical tests now run reliably in parallel builds (make CHECK=nopgplot -j8 check). Requested by Mohammed Akhlaghi. The graphical tests can also be run in parallel, but as PGPLOT can only handle one stream at a time, some graphics are likely to be lost. Nevertheless, it is a useful option, especially with runtime analysis via -fsanitize=address, etc. - As CFITSIO doesn't provide a Fortran wrapper for fits_read_wcstab(), getwcstab_f.o is now always included in the WCSLIB object library and sharable library if CFITSIO is available (and the WCSLIB Fortran wrappers are required). Use 'configure --without-cfitsio' to defeat this. - Tidied up some aspects of the build where CFITSIO is not available. * User manual - Fixed minor formatting problems in dis.h. OBS-URL: https://build.opensuse.org/request/show/747228 OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=9
2019-11-10 20:17:45 +00:00
%make_build
%install
%make_install
# Remove static libraries
rm -rf %{buildroot}%{_libdir}/*.a
%fdupes %{buildroot}%{_docdir}/%{name}/html
Accepting request 1132251 from home:bnavigator:branches:devel:languages:python:numeric Required by astropy v6.0 - Update to 8.2.2 * In prj.c, a number of variables with global scope that are only used internally were declared static to avoid namespace conflicts arising in Link Time Optimization (LTO) builds of the Rwcs wrappers. This is a patch release as it does not affect the library itself other than in localising some symbols that were never meant to be global. Reported by Rodrigo Carrizo with patch. Likewise for an internally used helper function, prjoff(). Likewise for a handful of variables in cel.c, dis.c, lin.c, tab.c, wcs.c, wcsfix.c, and wcshdr.c. - WCSLIB version 8.2 * In wcshdo(), fixed character buffer overflows in the comment string for the longitude and latitude axes triggered by some projections, and also the formatting for generic coordinate systems. Reported by Shu Niu. - WCSLIB version 8.1 * Changes in the contents of the auxprm struct (in 8.0 beta) necessitated incrementing the major version number from 7 to 8, i.e. the ABI changed. Took the opportunity for minor tweaks to wcsprm and disprm. ## C library * In disprm, changed the order of maxdis and totdis to ensure correct alignment of doubles on 32-bit machines. ## Fortran wrappers * Match changes to disprm in the C library. * In the Fortran test suite, inserted a brief pause between plots in tprj2, tspc, and tpih2, which have long been a blur. ## PGSBOX * Quell innocuous compiler warnings from gfortran 12.1.0. OBS-URL: https://build.opensuse.org/request/show/1132251 OBS-URL: https://build.opensuse.org/package/show/science/wcslib?expand=0&rev=27
2023-12-09 19:49:20 +00:00
# recursive symlink
rm %{buildroot}%{_docdir}/%{name}/wcslib
# avoid rpmlint install-file-in-docs, not needed in rpm package
rm %{buildroot}%{_docdir}/%{name}/INSTALL
%check
make check
%post -n libwcs%{libver} -p /sbin/ldconfig
%postun -n libwcs%{libver} -p /sbin/ldconfig
%files -n libwcs%{libver}
%doc CHANGES
%license COPYING COPYING.LESSER
%{_libdir}/libwcs.so.%{libver}*
%files tools
%{_bindir}/HPXcvt
%{_bindir}/fitshdr
%{_bindir}/sundazel
%{_bindir}/tofits
%{_bindir}/wcsware
%{_mandir}/man1/HPXcvt.1%{?ext_man}
%{_mandir}/man1/fitshdr.1%{?ext_man}
%{_mandir}/man1/sundazel.1%{?ext_man}
%{_mandir}/man1/tofits.1%{?ext_man}
%{_mandir}/man1/wcsware.1%{?ext_man}
%files doc
%doc %{_docdir}/%{name}/
%files devel
%{_includedir}/wcslib
%{_includedir}/wcslib-%{version}/
%{_libdir}/libwcs.so
%{_libdir}/pkgconfig/wcslib.pc
%changelog