diff options
author | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2021-05-29 17:42:42 +0200 |
---|---|---|
committer | Andrew Ammerlaan <andrewammerlaan@gentoo.org> | 2021-05-29 17:52:02 +0200 |
commit | a33ab5b83c948af447f85eeb1cd0ac21d517b66d (patch) | |
tree | 56d055eb040203cd9d1e28efb8ae92673bb73cf7 /sci-libs | |
parent | dev-perl/Error: Stabilize 0.170.290 arm64, #792660 (diff) | |
download | gentoo-a33ab5b83c948af447f85eeb1cd0ac21d517b66d.tar.gz gentoo-a33ab5b83c948af447f85eeb1cd0ac21d517b66d.tar.bz2 gentoo-a33ab5b83c948af447f85eeb1cd0ac21d517b66d.zip |
sci-libs/cdf: add version 3.8.0
- bumped java version
- no longer installs into /usr/CDFLeapSeconds.txt
- no longer calls CC directly
- restricted bindist
Closes: https://bugs.gentoo.org/786708
Closes: https://bugs.gentoo.org/773076
Closes: https://bugs.gentoo.org/633438
Closes: https://bugs.gentoo.org/544588
Closes: https://bugs.gentoo.org/544588
Closes: https://bugs.gentoo.org/731932
Closes: https://bugs.gentoo.org/695390
Package-Manager: Portage-3.0.19, Repoman-3.0.3
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
Diffstat (limited to 'sci-libs')
-rw-r--r-- | sci-libs/cdf/Manifest | 9 | ||||
-rw-r--r-- | sci-libs/cdf/cdf-3.5.0.2.ebuild | 1 | ||||
-rw-r--r-- | sci-libs/cdf/cdf-3.8.0.ebuild | 133 | ||||
-rw-r--r-- | sci-libs/cdf/files/cdf-3.8.0-respect-flags.patch | 96 |
4 files changed, 239 insertions, 0 deletions
diff --git a/sci-libs/cdf/Manifest b/sci-libs/cdf/Manifest index 96f0d78594eb..9e3f6128d7dc 100644 --- a/sci-libs/cdf/Manifest +++ b/sci-libs/cdf/Manifest @@ -6,3 +6,12 @@ DIST cdf350ug.pdf 1396156 BLAKE2B 39f3e3b0441ef103c9131b3c5523c5a387eb785d545c68 DIST cdf35_0-dist-cdf.tar.gz 1137065 BLAKE2B df3235338e63686dd0446663b8738618c45c4e86c858b4f41d3326ebf14d391ecce43309cf5d6a3db4a9f9e53820bf8a73acb77549a0432594859b24acb7eb84 SHA512 f26bd1e298494563cb30c52751bd175124814dca2fe2c05ae056d6c2ad905fb5ddc7da35888c6a07d69914f52481cb4e9fcab9684c9a8a0ca4b80ca449ad3406 DIST cdf35_0-dist-java.tar.gz 724055 BLAKE2B 563542821106b040bb0eaefa303cbda46ace5a127cda1936c55e5eaf3b395eb67073a622e84d1bfc33cb65faa4b51710008cfbae86fd680e5cca2c80dbc5162b SHA512 2e69447e9c36ced39a6bfcd1f2a5dfa7c36c04e9a5acac12952c1b415c5191471efbf2cc432b5b31eb37c8ee31bda3e27bce0fa266c5549fb1b0ab86c4dd6c4f DIST cdf35ifd.pdf 560458 BLAKE2B c44722d30c4217b492fe140833ae9c58721040b629cf414fe8d9d7d44433b3f62241d621d4b6d634f54e4f0ecb4c026b66a1e752a1d868b0861eed54d4a95bee SHA512 018a524f7fc8dc5b8b3512ed8bdea42bae141eb65d24b4fbbdac6ecebaeac5c458caf3a476fc4b7c0313b17441cbe7dce32d1002f9344d056cd46853ee3cd438 +DIST cdf380crm.pdf 2671048 BLAKE2B 2605d6465c744b57f11d08605aa888ead724b7553a0efd8830dae759eb54c6d0df807cca1c6611fd40b4c5eb9327fbfcd66f0f7cf82b69bf7619385928ebc6dd SHA512 fc1eef589ff0f3cd989d8743cc1d6cfeb5946cf9ae8e4a328ba746b33fe0f6a286cf7b7b7e7cab5e0231bef566c03d7b68afe6c0879e5fb32fc1e6c980f7e081 +DIST cdf380csrm.pdf 2409166 BLAKE2B 7e97e61865531b788553ca9747513ec32bc5e1a743e10e5bad5f62980a883d00cfeede975b83826ad72327071062080cd1db611fd40c4e5b3d22caf7d4dd3d0f SHA512 d669f032722e270d3f16f8d9a8920d4536430bd83a509591cf82b447770d16a9c6d9aba17e096f78445c4f0b7f4ab85082cf2480bc9384b46677a2325be0f163 +DIST cdf380frm.pdf 2570409 BLAKE2B c8fb1444c7e02297af0c3bffbf58c048077e0d69c4aca8cb3e48331f496dba1551289d2e2b95f9f2d9fabe8048bd56f73a72bab58a52772cae22f184a6b39745 SHA512 de90e4893b976ab9e77f1e9512b2f310b043b8dc921ca43cf1d37e767bf5cbae5d06f91388ff5f4fb1258db5a1149712fa9a5dbc1c2d18f78705021fc31087bb +DIST cdf380prm.pdf 1521804 BLAKE2B 4afa792f3b5f2bda7e896e10ccb6b2b073e127fca9ece229bb3dbe3b8e8920ef5b8cce5a45a15fa648525c8241fbcc678c8eea0a32a3dabad4cd3b9e959e0913 SHA512 413ce06f36d151cc5380884111376fb54108fcf692ac56ed4d96204f56d4d434ca695d42114e1e89626288802cb4d5d48097664e8e0411a041950aff8199fea0 +DIST cdf380ug.pdf 1716882 BLAKE2B e36f0a9624756d6d5bf71fcc0958d33d060b7f32dd7bbb93fcf6a58a33a5154017fd0ba8a598fe652919785398d306e84fe7a89b5c4aa0d305ee0bc2fbf20b8f SHA512 f2e865b55d293a17a5d85c36e04d14050b7f17adc97dfc284d95db36ae1b94678e31b107cbab32ad690630bbde0f3f0caf558ecdb4e1d0e60cd5f53b30faa0fc +DIST cdf380vbrm.pdf 2260048 BLAKE2B 30abdf365763df753569289a74013033e0dc56c3ce0a787bcdb9d179d334f4cb79f2b5c6d98427ab9a6451b44e333f48932c152674ce7c9229291b3b714e0f70 SHA512 8552d1f1a83a0f327bc20e8dc03f8728aad132e5765084839ee02900d19c93f9c7f67a1e3f4429cc01d51d75ab00b666d18a247522da2b4fda529cf6333889b5 +DIST cdf38_0-dist-cdf.tar.gz 1251571 BLAKE2B d51463fcf196e0c35617b93725104b34a9047ee7ef22d5d5b7ed9ed5816903e435f130b8ebb0d75e0f05c4908b71de3a4c9bab910a9472b3111be22f659e1bc8 SHA512 cc13358ddd5dfa90731ec6d9da0985697ff9e297be0bc03d8132761d479f5ff062c822085d3141a2fa4320ccd7d1b59064fc236f143a00f24b22c6edf0f618ce +DIST cdf38_0-dist-java.tar.gz 1007414 BLAKE2B 64fb991d937e9242d42a9b6524facff35acefe4fb2279b92942faf6a9403fae98c3a6b8e9881a916e8669ead5bca4a404dbc250d3a95be26cbe761b6dfa48227 SHA512 12b4d98561f4c07ef4837daa0fc90e1d1cb78622b3837d3cdc30643eae3e9f1ffe50dfa22e8be56615aa4cf4b983df6bde2d1c9fbe2115142d9fdfa653bee2be +DIST cdf38ifd.pdf 881707 BLAKE2B b80e15e631eb5025317d324893c16838b3a44218cf2c592692eff4d0b778494f2555cf79d2d35b54d66606a82c3835ad896fe809ef363f85ab8261879bf55167 SHA512 2dd3ff5867f5faba3502f877057e9d3110e7be03219dcf5aa657c6685e4a63f847b3d3fbea8d201ae5601a78773c636799cc1ab53e77e12d0ffd5c543322340c diff --git a/sci-libs/cdf/cdf-3.5.0.2.ebuild b/sci-libs/cdf/cdf-3.5.0.2.ebuild index 1bdd8d2b12b9..2942136cd5fb 100644 --- a/sci-libs/cdf/cdf-3.5.0.2.ebuild +++ b/sci-libs/cdf/cdf-3.5.0.2.ebuild @@ -27,6 +27,7 @@ LICENSE="CDF" SLOT="0" KEYWORDS="amd64 ppc x86 ~amd64-linux ~x86-linux" IUSE="doc examples java ncurses static-libs" +RESTRICT="bindist" RDEPEND=" java? ( >=virtual/jre-1.5:= ) diff --git a/sci-libs/cdf/cdf-3.8.0.ebuild b/sci-libs/cdf/cdf-3.8.0.ebuild new file mode 100644 index 000000000000..4350f3e58cc9 --- /dev/null +++ b/sci-libs/cdf/cdf-3.8.0.ebuild @@ -0,0 +1,133 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +inherit java-pkg-opt-2 multilib 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 + )" + +LICENSE="CDF" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86 ~amd64-linux ~x86-linux" +IUSE="doc examples java ncurses static-libs" +RESTRICT="bindist" + +RDEPEND=" + java? ( >=virtual/jre-1.8:= ) + ncurses? ( sys-libs/ncurses:0= ) +" +DEPEND=" + ${RDEPEND} + ncurses? ( virtual/pkgconfig ) +" + +S="${WORKDIR}/${MY_P}-dist" + +# respect cflags, ldflags, soname +PATCHES=( + "${FILESDIR}"/${P}-respect-flags.patch +) + +src_prepare() { + default + + # use proper lib dir + sed -i \ + -e "s:\$(INSTALLDIR)/lib:\$(INSTALLDIR)/$(get_libdir):g" \ + Makefile || die "sed failed" +} + +src_compile() { + PV_SO=${PV:0:1} + emake \ + OS=linux \ + CC=$(tc-getCC) \ + ENV=gnu \ + SHARED=yes \ + SHAREDEXT_linux=so.${PV_SO} \ + CURSESLIB_linux_gnu="$(usex ncurses "$($(tc-getPKG_CONFIG) --libs ncurses)" "")" \ + 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 /usr/share/doc/${PF}/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 /usr/share/doc/${PF}/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 +} diff --git a/sci-libs/cdf/files/cdf-3.8.0-respect-flags.patch b/sci-libs/cdf/files/cdf-3.8.0-respect-flags.patch new file mode 100644 index 000000000000..8ffd226a1ed1 --- /dev/null +++ b/sci-libs/cdf/files/cdf-3.8.0-respect-flags.patch @@ -0,0 +1,96 @@ +diff --git a/Makefile b/Makefile +index 9857fa9..6dc0953 100644 +--- a/Makefile ++++ b/Makefile +@@ -896,7 +896,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) MAKE=$(MAKE) "INSTALLDIR=$(INSTALLDIR)" install.lib.so ; \ + else \ + $(NULL) ; \ +@@ -1010,10 +1010,10 @@ copy.include: + cp $(INCsrcDIR)/cdfconfig.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 +diff --git a/src/lib/Makefile b/src/lib/Makefile +index 2017c46..b666ce3 100644 +--- 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 + +@@ -120,13 +120,13 @@ ranlib.yes: + + shared.yes: libcdf.$(SHAREDEXT) + +-libcdf.so \ ++libcdf.$(SHAREDEXT) \ + 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) + # @if [ $(MACVERSION) -gt 0 ]; then \ + # rm -f $(MACLIB)/$@; \ + # cp $@ $(MACLIB)/libcdf.$(VERSION).dylib; \ +@@ -134,8 +134,8 @@ libcdf.sl: $(OBJs) + # fi + + 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 \ +diff --git a/src/tools/Makefile b/src/tools/Makefile +index bac4ca0..ef44264 100644 +--- a/src/tools/Makefile ++++ b/src/tools/Makefile +@@ -33,7 +33,7 @@ + SHELL=/bin/sh + + CURSES=yes +-CCx=gcc ++CCx=$(CC) + COPTIONS=-I/usr/include/ncurses -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_LARGEFILE_SOURCE -O2 + COPTIONSld= + SYSLIBS=-lgcc +@@ -43,8 +43,8 @@ MAKE=make + INCLUDEcdf= ../include + + CC=$(CCx) +-CFLAGS=$(COPTIONS) -I$(INCLUDEcdf) +-CFLAGSld=$(COPTIONSld) ++CFLAGS+=$(COPTIONS) -I$(INCLUDEcdf) ++CFLAGSld=$(COPTIONSld) $(LDFLAGS) + + WHICHOS=$(shell uname -a | cut -f1 -d" ") + ifeq ("$(WHICHOS)","Darwin") |