summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sci-libs/cfitsio/Manifest1
-rw-r--r--sci-libs/cfitsio/cfitsio-4.1.0.ebuild82
-rw-r--r--sci-libs/cfitsio/files/cfitsio-4.1.0-pkgconfig.patch19
-rw-r--r--sci-libs/cfitsio/files/cfitsio-4.1.0-system-zlib.patch53
-rw-r--r--sci-libs/cfitsio/metadata.xml5
5 files changed, 160 insertions, 0 deletions
diff --git a/sci-libs/cfitsio/Manifest b/sci-libs/cfitsio/Manifest
index e716f04e6788..2482f16f036b 100644
--- a/sci-libs/cfitsio/Manifest
+++ b/sci-libs/cfitsio/Manifest
@@ -1,2 +1,3 @@
DIST cfitsio-3.49.tar.gz 4934662 BLAKE2B ca8b701f0fec399d989efb61fdaa2bfbf49d0eea2d3ff47e156757c5a99bc77c23a1b91b4c91166696293c71c78210065dc48d0bb3c77039815f326d0ed55f0a SHA512 9836a4af3bbbfed1ea1b4c70b9d500ac485d7c3d8131eb8a25ee6ef6662f46ba52b5161c45c709ed9a601ff0e9ec36daa5650eaaf4f2cc7d6f4bb5640f10da15
DIST cfitsio-4.0.0.tar.gz 4746177 BLAKE2B a43a21d29522cac84294e81ad5f0a45839c21c2fafcbde42504670e73757a41ebd91e42d086529df8139ce920446332f827b1abf027f8932ee73dd025103cd8e SHA512 a5b20bd6ad648450e99167f63813cc7523347aadfc9f85d2c0ed3ba7e4516b3bb6bc0851f209268f2cb045cdacc43a3da9e4506af4581f806ab9f4de248065fa
+DIST cfitsio-4.1.0.tar.gz 4305184 BLAKE2B 1edfce2b44ab990ed834b22dfc734af632f8f1401b6616f0c4322a3c40117123e52ba191610a3393c077f4a5fccd7462bcb4749e715cf2e9abae08edb1f1f8eb SHA512 bbbe10e890e74a30a9806dd2bbf711b3b1f15502b210b222d2d57cc083495c3b66b44927e4680f989045187fb7075f7187e2805ddcb4753ce53c68c3442cc813
diff --git a/sci-libs/cfitsio/cfitsio-4.1.0.ebuild b/sci-libs/cfitsio/cfitsio-4.1.0.ebuild
new file mode 100644
index 000000000000..4a55f5bf63bc
--- /dev/null
+++ b/sci-libs/cfitsio/cfitsio-4.1.0.ebuild
@@ -0,0 +1,82 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fortran-2 multilib-minimal
+
+DESCRIPTION="C and Fortran library for manipulating FITS files"
+HOMEPAGE="https://heasarc.gsfc.nasa.gov/docs/software/fitsio/fitsio.html"
+SRC_URI="https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/${P}.tar.gz"
+
+LICENSE="ISC"
+SLOT="0/9"
+KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris"
+IUSE="bzip2 curl threads tools cpu_flags_x86_sse2 cpu_flags_x86_ssse3"
+
+BDEPEND="
+ sys-devel/bison
+ sys-devel/flex
+"
+RDEPEND="
+ sys-libs/zlib[${MULTILIB_USEDEP}]
+ bzip2? ( app-arch/bzip2[${MULTILIB_USEDEP}] )
+ curl? ( net-misc/curl[${MULTILIB_USEDEP}] )
+"
+# Bug #803350
+DEPEND="${RDEPEND}
+ <dev-lang/cfortran-20110621
+"
+
+PATCHES=(
+ "${FILESDIR}/${PN}-3.490-ldflags.patch"
+ "${FILESDIR}/${P}-system-zlib.patch"
+ "${FILESDIR}/${P}-pkgconfig.patch"
+)
+
+pkg_setup() {
+ fortran-2_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # Avoid internal cfortran
+ mv cfortran.h cfortran.h.disabled || die
+ ln -s "${EPREFIX}"/usr/include/cfortran.h . || die
+
+ multilib_copy_sources
+}
+
+multilib_src_configure() {
+ local myeconfargs=(
+ $(use_with bzip2)
+ $(use_enable curl)
+ $(use_enable threads reentrant)
+ $(use_enable cpu_flags_x86_sse2 sse2)
+ $(use_enable cpu_flags_x86_ssse3 ssse3)
+ )
+ ECONF_SOURCE="${S}" econf "${myeconfargs[@]}"
+}
+
+multilib_src_compile() {
+ default
+
+ if use tools ; then
+ emake utils
+ fi
+}
+
+multilib_src_install_all() {
+ dodoc README docs/changes.txt
+
+ dodoc docs/{quick,cfitsio,fpackguide}.pdf
+ dodoc docs/fitsio.pdf
+
+ docinto examples
+ dodoc cookbook.c testprog.c speed.c smem.c
+ dodoc cookbook.f testf77.f
+
+ # Remove static libs
+ find "${ED}" -name '*.a' -delete || die
+}
diff --git a/sci-libs/cfitsio/files/cfitsio-4.1.0-pkgconfig.patch b/sci-libs/cfitsio/files/cfitsio-4.1.0-pkgconfig.patch
new file mode 100644
index 000000000000..63502b77f756
--- /dev/null
+++ b/sci-libs/cfitsio/files/cfitsio-4.1.0-pkgconfig.patch
@@ -0,0 +1,19 @@
+diff -ur a/cfitsio.pc.in b/cfitsio.pc.in
+--- a/cfitsio.pc.in 2022-05-26 17:25:47.094287274 +0200
++++ b/cfitsio.pc.in 2022-05-26 17:30:27.552413663 +0200
+@@ -1,12 +1,12 @@
+ prefix=@prefix@
+ exec_prefix=@exec_prefix@
+ libdir=@libdir@
+-includedir=@includedir@
++includedir=@includedir@/cfitsio
+
+ Name: cfitsio
+ Description: FITS File Subroutine Library
+ URL: https://heasarc.gsfc.nasa.gov/fitsio/
+ Version: @CFITSIO_MAJOR@.@CFITSIO_MINOR@.@CFITSIO_MICRO@
+ Libs: -L${libdir} -lcfitsio
+-Libs.private: -lm @LIBS@
+-Cflags: -I${includedir}
++Libs.private: -lm -lz @LIBS@
++Cflags: -D_REENTRANT -I${includedir}
diff --git a/sci-libs/cfitsio/files/cfitsio-4.1.0-system-zlib.patch b/sci-libs/cfitsio/files/cfitsio-4.1.0-system-zlib.patch
new file mode 100644
index 000000000000..6d740074857c
--- /dev/null
+++ b/sci-libs/cfitsio/files/cfitsio-4.1.0-system-zlib.patch
@@ -0,0 +1,53 @@
+diff -ur a/Makefile.in b/Makefile.in
+--- a/Makefile.in 2022-05-26 17:33:37.986215858 +0200
++++ b/Makefile.in 2022-05-26 17:34:27.580944957 +0200
+@@ -102,7 +102,7 @@
+ shared: lib${PACKAGE}${SHLIB_SUFFIX}
+
+ lib${PACKAGE}${SHLIB_SUFFIX}: ${OBJECTS}
+- ${SHLIB_LD} ${LDFLAGS} -o ${CFITSIO_SHLIB} ${OBJECTS} -lm ${LIBS_CURL} ${LIBS}
++ ${SHLIB_LD} ${LDFLAGS} -o ${CFITSIO_SHLIB} ${OBJECTS} -lm -lz -lbz2 ${LIBS_CURL} ${LIBS}
+ @if [ "x${CFITSIO_SHLIB_SONAME}" != x ]; then \
+ ln -sf ${CFITSIO_SHLIB} ${CFITSIO_SHLIB_SONAME}; \
+ ln -sf ${CFITSIO_SHLIB_SONAME} $@; \
+@@ -140,31 +140,31 @@
+ ${CC} -c ${CFLAGS} ${CPPFLAGS} ${SSE_FLAGS} ${DEFS} $<
+
+ smem: smem.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz
+
+ testprog: testprog.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ fpack: fpack.o fpackutil.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o fpackutil.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o fpackutil.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ funpack: funpack.o fpackutil.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o fpackutil.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o fpackutil.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ fitscopy: fitscopy.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ speed: speed.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ imcopy: imcopy.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ cookbook: cookbook.o lib${PACKAGE}.a ${OBJECTS}
+- ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${CC} ${LDFLAGS_BIN} ${DEFS} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ testf77: testf77.o lib${PACKAGE}.a ${OBJECTS}
+- ${FC} ${LDFLAGS_BIN} -o $@ ${@}.o -L. -l${PACKAGE} -lm ${LIBS}
++ ${FC} ${LDFLAGS_BIN} -o $@ ${@}.o -L. -l${PACKAGE} -lm -lz ${LIBS}
+
+ eval: # Rebuild eval_* files from flex/bison source
+ ${FLEX} -t eval.l > eval_l.c1
diff --git a/sci-libs/cfitsio/metadata.xml b/sci-libs/cfitsio/metadata.xml
index 7524e3a95041..47dcef290728 100644
--- a/sci-libs/cfitsio/metadata.xml
+++ b/sci-libs/cfitsio/metadata.xml
@@ -5,6 +5,11 @@
<email>sci-astronomy@gentoo.org</email>
<name>Gentoo Astronomy Project</name>
</maintainer>
+ <use>
+ <flag name="tools">
+ Build optional utilities (cookbook fitscopy imcopy smem speed testprog fpack funpack)
+ </flag>
+ </use>
<longdescription lang="en">
CFITSIO is a library of C and Fortran subroutines for reading and
writing data files in FITS (Flexible Image Transport System) data