mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 06:48:18 -07:00
sci-libs/cdf: add 3.9.1
Signed-off-by: Alfredo Tupone <tupone@gentoo.org>
This commit is contained in:
@@ -6,4 +6,6 @@ DIST cdf390ug.pdf 1566123 BLAKE2B 639f800454e8f27286d769d505001e07e972b194d589a1
|
||||
DIST cdf390vbrm.pdf 1729074 BLAKE2B d30d177202b516891dba0cb99113d6d19af41d950384469ec8a35d96dd2f7418646d1622bbf35376f02cabe686d6da0382e65b98a5beef0bcf81eb827dab5270 SHA512 98379bb4f30c8073ea1d43b7b4b75559722b6de1c7a500bb79b25162cb1bbc82afd9eec443af4645e369de6f59bf031fd097bc802896ad7310b7614a73486961
|
||||
DIST cdf39_0-dist-cdf.tar.gz 1290187 BLAKE2B 03f7c7840c44514046df0d63ff6086be7263858f90225debfb8a4fe6c4d6e5b03c95faa2762f76e2ffc198ac77359b3494520258ec17678746fd7f619e362853 SHA512 e054b763d86c09c53375ef60a8690f43fcb106be1dc6fd907763379db1ab4c9677692671a63da74d955aec8ce3f866f420ddc7217a59ed68e51c4623562af387
|
||||
DIST cdf39_0-dist-java.tar.gz 1162924 BLAKE2B 4e6416ec5a2a2eede428fa00906ca0e42460916506e7b2075d622e322ffe53e337a77bf81aa871e1559fb6b9339f2f49e365ca835874e060da33cd7c68e45177 SHA512 860468257c70bd6cb9592f40e495b5efb9092fc6fa3ab68c2fdc729c46d9ea4f0499a0b29904fe9c1ae07c13958e551b4e5cc8b9b71c2401ca833f2020073606
|
||||
DIST cdf39_1-dist-cdf.tar.gz 1515823 BLAKE2B a1285c9c146de75147f2b5c2ddee4ac7e6ab97472de7b869f1ff0797f738ab17690adfe42bb9e49c56c14a39c13fb9784cc91bf354c383ccc2e4c4b994e3aab4 SHA512 ae1d6284a308d1db99367c0adf5ec40d9a6f9fc95de58b48d2b940e2fe6a3f0fa046ab17cec8cf5a4fde523f8ae69684b44b72dfa50028725bad25365ef910ab
|
||||
DIST cdf39_1-dist-java.tar.gz 1166989 BLAKE2B 894aff4252a9c60abd99ce5cd522d8fde2bbee329066aaef4669c032467dff9de0e92dad2a7a8a46227a4e2e428511aa9b2a5abe2e3b40cf4c7cacc1dd4ffcf1 SHA512 53109a612570658e508ee84b36ce0eef87b67b9a890d98f602bad2b0d9b8815bba64abc7181d4fbcd40ab7204002474e560c123893d226caefd22aa13bf1fd9a
|
||||
DIST cdf39ifd.pdf 656522 BLAKE2B 2ec3831f27e92fcec8191bedb1617c9f590b726732e02dd8ca317b814c369b46d50dd19e7bfc81df233e1e32ca6fb8191bf7e075ce67dda1ddd50645d5fc754b SHA512 f4de5bea46b7d1ea2621b9fa0ac1ab0f9904ada9a1625ce613f6fdb68ad25ca52398cbf75bb27902e54ba5ee7820f3ea1a563c655186047b8954cb53b4cd8197
|
||||
|
||||
148
sci-libs/cdf/cdf-3.9.1.ebuild
Normal file
148
sci-libs/cdf/cdf-3.9.1.ebuild
Normal file
@@ -0,0 +1,148 @@
|
||||
# Copyright 1999-2026 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=9
|
||||
|
||||
inherit flag-o-matic java-pkg-opt-2 toolchain-funcs
|
||||
|
||||
MY_DP="${PN}$(ver_cut 1)$(ver_cut 2)"
|
||||
MY_P="${MY_DP}_$(ver_cut 3)"
|
||||
|
||||
DESCRIPTION="Common Data Format I/O library for multi-dimensional data sets"
|
||||
HOMEPAGE="https://cdf.gsfc.nasa.gov"
|
||||
SRC_BASE="https://spdf.gsfc.nasa.gov/pub/software/${PN}/dist/${MY_P}/unix/"
|
||||
SRC_URI="
|
||||
${SRC_BASE}/${MY_P}-dist-${PN}.tar.gz
|
||||
java? ( ${SRC_BASE}/${MY_P}-dist-java.tar.gz )
|
||||
doc? (
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}ifd.pdf
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}0crm.pdf
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}0csrm.pdf
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}0frm.pdf
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}0prm.pdf
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}0ug.pdf
|
||||
${SRC_BASE}/${MY_DP}_documentation/${MY_DP}0vbrm.pdf
|
||||
)
|
||||
"
|
||||
S="${WORKDIR}/${MY_P}-dist"
|
||||
|
||||
LICENSE="CDF"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
IUSE="doc examples java ncurses static-libs"
|
||||
RESTRICT="bindist"
|
||||
|
||||
RDEPEND="
|
||||
java? ( >=virtual/jre-1.8:= )
|
||||
ncurses? ( sys-libs/ncurses:= )
|
||||
"
|
||||
DEPEND="
|
||||
${RDEPEND}
|
||||
"
|
||||
BDEPEND="
|
||||
ncurses? ( virtual/pkgconfig )
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
# Respect cflags, ldflags, soname
|
||||
"${FILESDIR}"/${PN}-3.9.1-respect-flags.patch
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Use proper lib dir
|
||||
sed -i \
|
||||
-e "s:\$(INSTALLDIR)/lib:\$(INSTALLDIR)/$(get_libdir):g" \
|
||||
Makefile || die "sed failed"
|
||||
# Uses the wide variant of *curses functions
|
||||
sed -i \
|
||||
-e "s:-I/usr/include/ncurses:$($(tc-getPKG_CONFIG) --cflags-only-I ncursesw):g" \
|
||||
Makefile src/tools/Makefile || die "sed failed"
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Reported upstream by email in 2024-03-22 (bug #862675)
|
||||
append-flags -fno-strict-aliasing
|
||||
filter-lto
|
||||
|
||||
PV_SO=${PV:0:1}
|
||||
|
||||
emake \
|
||||
OS=linux \
|
||||
AR="$(tc-getAR)" \
|
||||
CC="$(tc-getCC)" \
|
||||
LD="$(tc-getCC)" \
|
||||
RANLIB="$(tc-getRANLIB)" \
|
||||
RANLIBcmd="$(tc-getRANLIB)" \
|
||||
ENV=gnu \
|
||||
SHARED=yes \
|
||||
SHAREDEXT_linux=so.${PV_SO} \
|
||||
CURSESLIB_linux_gnu="$(usex ncurses "$($(tc-getPKG_CONFIG) --libs ncursesw)" "")" \
|
||||
CURSES=$(usex ncurses) \
|
||||
${myconf} \
|
||||
all
|
||||
|
||||
if use java; then
|
||||
export CDF_BASE="${S}"
|
||||
export CDF_LIB="${S}/src/lib"
|
||||
cd cdfjava/jni
|
||||
$(tc-getCC) \
|
||||
${CFLAGS} -fPIC \
|
||||
-I${CDF_BASE}/src/include \
|
||||
-I$(java-config -O)/include \
|
||||
-I$(java-config -O)/include/linux \
|
||||
-c cdfNativeLibrary.c \
|
||||
-o cdfNativeLibrary.o \
|
||||
|| die "compiling java lib failed"
|
||||
$(tc-getCC) \
|
||||
${LDFLAGS} \
|
||||
-shared cdfNativeLibrary.o \
|
||||
-Wl,-soname=libcdfNativeLibrary.so.${PV_SO} \
|
||||
-L${CDF_LIB} -lcdf -lm \
|
||||
-o libcdfNativeLibrary.so.${PV_SO} \
|
||||
|| die "linking java lib failed"
|
||||
fi
|
||||
}
|
||||
|
||||
src_test() {
|
||||
emake -j1 test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dodir /usr/bin /usr/$(get_libdir)
|
||||
# -j1 (fragile non-autotooled make)
|
||||
emake -j1 \
|
||||
INSTALLDIR="${ED}/usr" \
|
||||
SHAREDEXT=so.${PV_SO} \
|
||||
install
|
||||
dosym libcdf.so.${PV_SO} /usr/$(get_libdir)/libcdf.so
|
||||
use static-libs || rm "${ED}"/usr/$(get_libdir)/libcdf.a
|
||||
dodoc Release.notes CHANGES.txt Welcome.txt
|
||||
doenvd "${FILESDIR}"/50cdf
|
||||
|
||||
if use doc; then
|
||||
dodoc "${DISTDIR}"/${MY_DP}{0{crm,csrm,frm,prm,ug,vbrm},ifd}.pdf
|
||||
fi
|
||||
|
||||
if use examples; then
|
||||
docinto examples
|
||||
dodoc samples/*
|
||||
fi
|
||||
|
||||
if use java; then
|
||||
cd cdfjava || die
|
||||
dolib.so jni/libcdfNativeLibrary.so.${PV_SO}
|
||||
dosym libcdfNativeLibrary.so.${PV_SO} \
|
||||
/usr/$(get_libdir)/libcdfNativeLibrary.so
|
||||
java-pkg_dojar */*.jar
|
||||
if use examples; then
|
||||
docinto examples/java
|
||||
dodoc examples/*
|
||||
fi
|
||||
fi
|
||||
|
||||
# move this to a better location
|
||||
dodir "/usr/share/${PF}"
|
||||
mv "${ED}/usr/CDFLeapSeconds.txt" "${ED}/usr/share/${PF}/" || die
|
||||
}
|
||||
85
sci-libs/cdf/files/cdf-3.9.1-respect-flags.patch
Normal file
85
sci-libs/cdf/files/cdf-3.9.1-respect-flags.patch
Normal file
@@ -0,0 +1,85 @@
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1049,7 +1049,7 @@ install.tools: create.bin copy.tools
|
||||
install.help_: create.help copy.help
|
||||
|
||||
install.lib: create.lib copy.lib.a
|
||||
- @if [ -f $(LIBsrcDIR)/libcdf.so ] ; then \
|
||||
+ @if [ -f $(LIBsrcDIR)/libcdf.$(SHAREDEXT) ] ; then \
|
||||
$(MAKE) $(EXTRAMAKE) MAKE=$(MAKE) "INSTALLDIR=$(INSTALLDIR)" install.lib.so ; \
|
||||
else \
|
||||
$(NULL) ; \
|
||||
@@ -1198,10 +1198,10 @@ copy.include:
|
||||
cp $(INCsrcDIR)/cdftools.h $(INSTALLDIR)/include
|
||||
|
||||
copy.lib.so:
|
||||
- @echo cp $(LIBsrcDIR)/libcdf.so $(INSTALLDIR)/lib
|
||||
- cp $(LIBsrcDIR)/libcdf.so $(INSTALLDIR)/lib/libcdf.$(VERSION).so
|
||||
- rm -f $(INSTALLDIR)/lib/libcdf.so
|
||||
- cd $(INSTALLDIR)/lib && ln -s libcdf.$(VERSION).so libcdf.so
|
||||
+ @echo cp $(LIBsrcDIR)/libcdf.$(SHAREDEXT) $(INSTALLDIR)/lib
|
||||
+ cp $(LIBsrcDIR)/libcdf.$(SHAREDEXT) $(INSTALLDIR)/lib/libcdf.$(VERSION).so
|
||||
+ rm -f $(INSTALLDIR)/lib/libcdf.$(SHAREDEXT)
|
||||
+ cd $(INSTALLDIR)/lib && ln -s libcdf.$(VERSION).so libcdf.$(SHAREDEXT)
|
||||
|
||||
copy.lib.sl:
|
||||
@echo cp $(LIBsrcDIR)/libcdf.sl $(INSTALLDIR)/lib
|
||||
--- a/src/lib/Makefile
|
||||
+++ b/src/lib/Makefile
|
||||
@@ -62,9 +62,9 @@ AR=ar
|
||||
RANLIBcmd=ranlib
|
||||
MACos=Darwin
|
||||
|
||||
-CFLAGS=$(COPTIONS) $(PIC) -I$(INCLUDEcdf) -I$(ZlibDIR)
|
||||
+CFLAGS+=$(COPTIONS) $(PIC) -I$(INCLUDEcdf) -I$(ZlibDIR)
|
||||
CFLAGS2=-DZ_PREFIX
|
||||
-LDFLAGS=$(LDOPTIONS)
|
||||
+LDFLAGS+=$(LDOPTIONS)
|
||||
ARFLAGS=$(AROPTIONS)
|
||||
ZLIB=zlib
|
||||
|
||||
@@ -108,17 +108,18 @@ ranlib.yes:
|
||||
|
||||
shared.yes: libcdf.$(SHAREDEXT)
|
||||
|
||||
+libcdf.$(SHAREDEXT) \
|
||||
libcdf.so \
|
||||
libcdf.dylib \
|
||||
libcdf.dll \
|
||||
libcdf.sl: $(OBJs)
|
||||
@if [ -f $@ ] ; then rm $@ ; else $(NULL) ; fi
|
||||
- @echo $(LD) $(LDFLAGS) -o $@ $(OBJs) $(SYSLIBS)
|
||||
- $(LD) $(LDFLAGS) -o $@ $(OBJs) $(SYSLIBS)
|
||||
+ @echo $(LD) $(CFLAGS) $(LDFLAGS) -Wl,-soname,libcdf.$(SHAREDEXT) -o $@ $(OBJs) $(SYSLIBS)
|
||||
+ $(LD) $(CFLAGS) $(LDFLAGS) -Wl,-soname,libcdf.$(SHAREDEXT) -o $@ $(OBJs) $(SYSLIBS)
|
||||
|
||||
libcdf.o: $(OBJs)
|
||||
- @echo $(CC) $(LDFLAGS) -o $@ $(OBJs) $(SYSLIBS)
|
||||
- $(CC) $(LDFLAGS) -o $@ $(OBJs) $(SYSLIBS)
|
||||
+ @echo $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJs) $(SYSLIBS)
|
||||
+ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(OBJs) $(SYSLIBS)
|
||||
|
||||
.c.o:
|
||||
@if [ "$<" = "cdfgzip.c" ] || [ "$<" = "cdfgzip64.c" ] ; then \
|
||||
--- a/src/tools/Makefile
|
||||
+++ b/src/tools/Makefile
|
||||
@@ -33,7 +33,7 @@
|
||||
SHELL=/bin/sh
|
||||
|
||||
CURSES=yes
|
||||
-CCx=gcc
|
||||
+CCx=$(CC)
|
||||
LDx=
|
||||
COPTIONS=-I/usr/include/ncurses -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -O2
|
||||
COPTIONSld=
|
||||
@@ -45,8 +45,8 @@ MAKE=make
|
||||
INCLUDEcdf= ../include
|
||||
|
||||
CC=$(CCx)
|
||||
-CFLAGS=$(COPTIONS) -I$(INCLUDEcdf)
|
||||
-CFLAGSld=$(COPTIONSld)
|
||||
+CFLAGS+=$(COPTIONS) -I$(INCLUDEcdf)
|
||||
+CFLAGSld+=$(COPTIONSld)
|
||||
ifeq ($(LDx),)
|
||||
LDx = $(CCx)
|
||||
endif
|
||||
Reference in New Issue
Block a user