From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- sci-libs/netcdf/Manifest | 10 ++ .../files/netcdf-4.3.2-HDF5-1.8.13+-compat.patch | 145 +++++++++++++++++++++ sci-libs/netcdf/metadata.xml | 24 ++++ sci-libs/netcdf/netcdf-4.3.2-r1.ebuild | 58 +++++++++ sci-libs/netcdf/netcdf-4.4.0-r1.ebuild | 50 +++++++ sci-libs/netcdf/netcdf-4.4.1.1.ebuild | 55 ++++++++ 6 files changed, 342 insertions(+) create mode 100644 sci-libs/netcdf/Manifest create mode 100644 sci-libs/netcdf/files/netcdf-4.3.2-HDF5-1.8.13+-compat.patch create mode 100644 sci-libs/netcdf/metadata.xml create mode 100644 sci-libs/netcdf/netcdf-4.3.2-r1.ebuild create mode 100644 sci-libs/netcdf/netcdf-4.4.0-r1.ebuild create mode 100644 sci-libs/netcdf/netcdf-4.4.1.1.ebuild (limited to 'sci-libs/netcdf') diff --git a/sci-libs/netcdf/Manifest b/sci-libs/netcdf/Manifest new file mode 100644 index 000000000000..6b2ff6fdd110 --- /dev/null +++ b/sci-libs/netcdf/Manifest @@ -0,0 +1,10 @@ +AUX netcdf-4.3.2-HDF5-1.8.13+-compat.patch 5258 SHA256 76cd3f42be4fda5b5c60f6e03a6646e8792d0cd1c52bad61ae8044e694abd60c SHA512 aa54ec936aff884b105217a8c87f5d7722b8b76a4bdd8b8804366c6509abba9962fdcdbfda2361662fec3732be1a1c2b7a2ae8abea1862d2ad7fd3b0f3828f59 WHIRLPOOL 4628a0545ed6347ae8a3459a30c9ad94c9ae283cb66017b628851b31ebb05f94d57c616677943a83f21d2848342f2e6f243846de6bf9ac7a6dcdc6a900e8279a +DIST netcdf-4.3.2.tar.gz 5013938 SHA256 57086b4383ce9232f05aad70761c2a6034b1a0c040260577d369b3bbfe6d248e SHA512 9cb9c761bf1e17a37601c37000fdc0bb654afcf111e5ac2fb7dcf037c6aa827e66beb29d5c661edc50ea3f84849f3dee387aab9e85ef81a9b6ca3f36e45debdd WHIRLPOOL 7fb0dd3324c3e8864729db1409a76feb84ef35298c0f79a4258f1cd30a70e90070d9a44275d064d8a4952c32671182f1bfe97d47f26cf921a625bbe7160f3249 +DIST netcdf-4.4.0.tar.gz 17487357 SHA256 09b78b152d3fd373bee4b5738dc05c7b2f5315fe34aa2d94ee9256661119112f SHA512 c5cae15e86d11e6434a489bdac39ea498bdca2008ae6732a16603b32d79a9227a168a0fa0174c6d55ced0c92d9b644f60db4d946f695731161572abd6b778fa1 WHIRLPOOL cdbf02533cd3ebaad563d28a853ec43f0297e4a4be2ced0aea2f44aa07768846a1dba98199c961d5674996f96f931a7b39df584836fd3451530e37a73277de2f +DIST netcdf-4.4.1.1.tar.gz 17670828 SHA256 7f040a0542ed3f6d27f3002b074e509614e18d6c515b2005d1537fec01b24909 SHA512 ee23f37d7b40e7b9a115d29bc038c7c654d50dedfcad62617b8dee3efa4668305e6a0656ba655770727ff46f4b6d742869c719267eca3392c94e2488eb902da7 WHIRLPOOL 9cb996847441a4f0a865890637f1a5f54ff3a914918f465edd31811c32218c78fdd27017c6bd50d5b09f95a76ccc0421c5e4801c75c8a6689b390aa9fe6b08a9 +EBUILD netcdf-4.3.2-r1.ebuild 1473 SHA256 f837d3f00cc098b8a1bedd3a60079405ab9eafa27ebebf4f3043b18103fb006c SHA512 4482ff6621ff023a3363e754ce75f3a3fad1f7ef962b809cf0d2bf8e76e6f0d9b54a083a6cf222cefccdb6dc9e75b0d2202959c3be3b15b58945b31ccbee0a91 WHIRLPOOL 32d05c8ac37c01fb33ae2d9a817c6c0c7203a24d2d8f762468deb56a87bb05ed18d626fdfb5746126abbe811c236d117d5efa382ed28e8fe5c8ef987c3c9fed5 +EBUILD netcdf-4.4.0-r1.ebuild 1310 SHA256 91e8f5cd410b31eb37e1c30cede97b19ded914b274cf70767f191304973321ab SHA512 6aef640d8f2f93d085184901be896acbfc5cc456ad78125e69aee1fe7e1a31ee256c69343ab9a7b1840fb58c5e79040ae45e171c1b005cff33ae5ba8dd4f9bc7 WHIRLPOOL 0b10c44427264fc1748b386a714747365297497dc4115aa99ab87fdb82de268d037598b94c20504f09b0c676fc33a4331756615c0d6a07432a0625dc63f158cb +EBUILD netcdf-4.4.1.1.ebuild 1386 SHA256 cccd3ee70094d71a8a3cbb387b366684a7b8749ed61b8feacb84fd449138a68a SHA512 7c55b546e818eadff28b6b2a3746b3e0009564ebe040a3c1b5991d75b6582b983e1fcc66fe669417aa878de9bb5090e40a1b7f5e1655a887a22a5a4f573e9d05 WHIRLPOOL 13b8f4ff19931f216332f7fd11117411914df1cd5d95c29a92f0e6a5d84691121c275aaf92dbeeb97094aa1a343fce8135519051afc4f174421234ec4e2549ff +MISC ChangeLog 3086 SHA256 18b1cf9fad8ca83f334976cebd0f985b6afb801c492b210055d61a6a06b1d178 SHA512 4845e4e1cd5b68d0a9b47f48e3e37b45a1b7b0087228b255fae9ce15cb16501157aa5aabb1d2c8d0fa73d171f649921f2101a901aaaa237d3bd1d9b1816cc878 WHIRLPOOL 88dfe6518aa38af0787f4ce69a78a1ee25d97bdc04e8e4ce8f1578497b8396c0a9f8c140bc296a26d0f13a0270ac30d635da8e0d322536b82238c2e8051efd8a +MISC ChangeLog-2015 21071 SHA256 d890937f8e706c3968ae75f6043f229b398a7827c29cd5081f1dd33e9939af23 SHA512 ce461af4c32b802822774f1523fa1268f6abdeca9f5a8fa5b5e406af0b0d2b8c0989c295a1c699ef50285f15d21b98f7f186410b888afe8627a5e4936ee0dcd9 WHIRLPOOL eef03eb137f08866ebe3a0c93a97be06eeca1a977c7f93428a3876840278abeb0d290e784a4a866ca29892b6e81d903b4f8fdafde85c2cf0ed0483c558c41737 +MISC metadata.xml 1064 SHA256 4dc8fcd8b4f7f8fbb6fe24b56d74be4070417bfe723a98fa00f4690f43d5d47f SHA512 2aaa7a6c4659ff3daf81bdb63541ce08359f43bb7007f38dea333d0a05fc920e6780b79a9b0f79fec59d4e05a005efd3642acaedcd3223a21d5aa919110545dd WHIRLPOOL 26cd72c62989a77fa34af636735ce55483d87c2b6d411e80d6cfa302c8acb9597e790a314e05c9f3ec59dc9a5d07dc0e8b8168d1904e308a938e2b59a5d2b946 diff --git a/sci-libs/netcdf/files/netcdf-4.3.2-HDF5-1.8.13+-compat.patch b/sci-libs/netcdf/files/netcdf-4.3.2-HDF5-1.8.13+-compat.patch new file mode 100644 index 000000000000..783a5b06e991 --- /dev/null +++ b/sci-libs/netcdf/files/netcdf-4.3.2-HDF5-1.8.13+-compat.patch @@ -0,0 +1,145 @@ +From 435d8a03ed28bb5ad63aff12cbc6ab91531b6bc8 Mon Sep 17 00:00:00 2001 +From: Quincey Koziol +Date: Wed, 7 May 2014 08:45:15 -0500 +Subject: [PATCH] Account for the HDF5 library not having the MPI-POSIX VFD + configured in. + +--- + RELEASE_NOTES.md | 2 ++ + libsrc4/nc4file.c | 40 ++++++++++++++++++++++++++++++++++++++++ + nc_test4/tst_nc4perf.c | 5 +++++ + nc_test4/tst_parallel3.c | 5 +++++ + 4 files changed, 52 insertions(+) + +diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md +index 27f228c..1a69d17 100644 +--- a/RELEASE_NOTES.md ++++ b/RELEASE_NOTES.md +@@ -9,6 +9,8 @@ This file contains a high-level description of this package's evolution. Release + + ### 4.3.3-rc1 Released TBD + ++* When the NC_MPIPOSIX flag is given for parallel I/O access and the HDF5 library does not have the MPI-POSIX VFD configured in, the NC_MPIPOSIX flag is transparently aliased to the NC_MPIIO flag within the netCDF-4 library. ++ + ## 4.3.2 Released 2014-04-23 + + * As part of an ongoing project, the Doxygen-generated netcdf documentation has been reorganized. The goal is to make the documentation easier to parse, and to eliminate redundant material. This project is ongoing. +diff --git a/libsrc4/nc4file.c b/libsrc4/nc4file.c +index ec3bb0c..5c957be 100644 +--- a/libsrc4/nc4file.c ++++ b/libsrc4/nc4file.c +@@ -308,12 +308,21 @@ nc4_create_file(const char *path, int cmode, MPI_Comm comm, MPI_Info info, + if (H5Pset_fapl_mpio(fapl_id, comm, info) < 0) + BAIL(NC_EPARINIT); + } ++#ifdef USE_PARALLEL_POSIX + else /* MPI/POSIX */ + { + LOG((4, "creating parallel file with MPI/posix")); + if (H5Pset_fapl_mpiposix(fapl_id, comm, 0) < 0) + BAIL(NC_EPARINIT); + } ++#else /* USE_PARALLEL_POSIX */ ++ /* Should not happen! Code in NC4_create/NC4_open should alias the ++ * NC_MPIPOSIX flag to NC_MPIIO, if the MPI-POSIX VFD is not ++ * available in HDF5. -QAK ++ */ ++ else /* MPI/POSIX */ ++ BAIL(NC_EPARINIT); ++#endif /* USE_PARALLEL_POSIX */ + + /* Keep copies of the MPI Comm & Info objects */ + if (MPI_SUCCESS != MPI_Comm_dup(comm, &nc4_info->comm)) +@@ -465,6 +474,17 @@ NC4_create(const char* path, int cmode, size_t initialsz, int basepe, + ) + return NC_EINVAL; + ++#ifndef USE_PARALLEL_POSIX ++/* If the HDF5 library has been compiled without the MPI-POSIX VFD, alias ++ * the NC_MPIPOSIX flag to NC_MPIIO. -QAK ++ */ ++ if(cmode & NC_MPIPOSIX) ++ { ++ cmode &= ~NC_MPIPOSIX; ++ cmode |= NC_MPIIO; ++ } ++#endif /* USE_PARALLEL_POSIX */ ++ + cmode |= NC_NETCDF4; + + /* Apply default create format. */ +@@ -2168,12 +2188,21 @@ nc4_open_file(const char *path, int mode, MPI_Comm comm, + if (H5Pset_fapl_mpio(fapl_id, comm, info) < 0) + BAIL(NC_EPARINIT); + } ++#ifdef USE_PARALLEL_POSIX + else /* MPI/POSIX */ + { + LOG((4, "opening parallel file with MPI/posix")); + if (H5Pset_fapl_mpiposix(fapl_id, comm, 0) < 0) + BAIL(NC_EPARINIT); + } ++#else /* USE_PARALLEL_POSIX */ ++ /* Should not happen! Code in NC4_create/NC4_open should alias the ++ * NC_MPIPOSIX flag to NC_MPIIO, if the MPI-POSIX VFD is not ++ * available in HDF5. -QAK ++ */ ++ else /* MPI/POSIX */ ++ BAIL(NC_EPARINIT); ++#endif /* USE_PARALLEL_POSIX */ + + /* Keep copies of the MPI Comm & Info objects */ + if (MPI_SUCCESS != MPI_Comm_dup(comm, &nc4_info->comm)) +@@ -2640,6 +2669,17 @@ NC4_open(const char *path, int mode, int basepe, size_t *chunksizehintp, + (mode & NC_MPIIO && mode & NC_MPIPOSIX)) + return NC_EINVAL; + ++#ifndef USE_PARALLEL_POSIX ++/* If the HDF5 library has been compiled without the MPI-POSIX VFD, alias ++ * the NC_MPIPOSIX flag to NC_MPIIO. -QAK ++ */ ++ if(mode & NC_MPIPOSIX) ++ { ++ mode &= ~NC_MPIPOSIX; ++ mode |= NC_MPIIO; ++ } ++#endif /* USE_PARALLEL_POSIX */ ++ + + /* Depending on the type of file, open it. */ + +diff --git a/nc_test4/tst_nc4perf.c b/nc_test4/tst_nc4perf.c +index 47af70e..3528b82 100644 +--- a/nc_test4/tst_nc4perf.c ++++ b/nc_test4/tst_nc4perf.c +@@ -244,6 +244,11 @@ int test_pio_4d(size_t cache_size, int facc_type, int access_flag, MPI_Comm comm + return 0; + } + ++/* Note: When the MPI-POSIX VFD is not compiled in to HDF5, the NC_MPIPOSIX ++ * flag will be aliased to the NC_MPIIO flag within the library, and ++ * therefore this test will exercise the aliasing, with the MPI-IO VFD, ++ * under that configuration. -QAK ++ */ + #define NUM_MODES 2 + #define NUM_FACC 2 + #define NUM_CHUNK_COMBOS_2D 3 +diff --git a/nc_test4/tst_parallel3.c b/nc_test4/tst_parallel3.c +index 27f9c98..9fa534f 100644 +--- a/nc_test4/tst_parallel3.c ++++ b/nc_test4/tst_parallel3.c +@@ -129,6 +129,11 @@ int main(int argc, char **argv) + if (mpi_rank == 0) + SUMMARIZE_ERR; + ++/* Note: When the MPI-POSIX VFD is not compiled in to HDF5, the NC_MPIPOSIX ++ * flag will be aliased to the NC_MPIIO flag within the library, and ++ * therefore this test will exercise the aliasing, with the MPI-IO VFD, ++ * under that configuration. -QAK ++ */ + if (mpi_rank == 0) + printf("*** Testing parallel IO for raw-data with MPIPOSIX-IO (driver)..."); + facc_type = NC_NETCDF4|NC_MPIPOSIX; +-- +2.0.3 + diff --git a/sci-libs/netcdf/metadata.xml b/sci-libs/netcdf/metadata.xml new file mode 100644 index 000000000000..f2b51139d22c --- /dev/null +++ b/sci-libs/netcdf/metadata.xml @@ -0,0 +1,24 @@ + + + + + sci@gentoo.org + Gentoo Science Project + + + NetCDF (network Common Data Form) is an interface for scientific + data access and a freely-distributed software library that provides an + implementation of the interface. The netCDF library also defines a + machine-independent format for representing scientific data. + Together, the interface, library, and format support the creation, + access, and sharing of scientific data. + + + Support for remote data access with the built-in OPeNDAP client + Add support for the Hierarchical Data Format v.4 sci-libs/hdf + Build the utilities nccopy, ncgen and ncdump + + + Unidata/netcdf-c + + diff --git a/sci-libs/netcdf/netcdf-4.3.2-r1.ebuild b/sci-libs/netcdf/netcdf-4.3.2-r1.ebuild new file mode 100644 index 000000000000..fd351c9fc860 --- /dev/null +++ b/sci-libs/netcdf/netcdf-4.3.2-r1.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit autotools-utils + +DESCRIPTION="Scientific library and interface for array oriented data access" +HOMEPAGE="http://www.unidata.ucar.edu/software/netcdf/" +SRC_URI="ftp://ftp.unidata.ucar.edu/pub/netcdf/${P}.tar.gz" + +LICENSE="UCAR-Unidata" +SLOT="0/7" +KEYWORDS="amd64 ~arm ia64 ppc ppc64 x86 ~amd64-linux ~x86-linux" +IUSE="+dap examples hdf +hdf5 mpi static-libs szip test tools" + +RDEPEND=" + dap? ( net-misc/curl:0= ) + hdf? ( sci-libs/hdf:0= sci-libs/hdf5:0= ) + hdf5? ( sci-libs/hdf5:0=[hl(+),mpi=,szip=,zlib] )" +DEPEND="${RDEPEND}" +# doc generation is missing many doxygen files in tar ball +# doc? ( app-doc/doxygen[dot] )" + +REQUIRED_USE="test? ( tools ) szip? ( hdf5 ) mpi? ( hdf5 )" + +PATCHES=( "${FILESDIR}/${P}-HDF5-1.8.13+-compat.patch" ) + +src_configure() { + # --docdir="${EPREFIX}"/usr/share/doc/${PF} + # $(use_enable doc doxygen) + local myeconfargs=( + --disable-examples + --disable-dap-remote-tests + $(use_enable dap) + $(use_enable hdf hdf4) + $(use_enable hdf5 netcdf-4) + $(use_enable tools utilities) + ) + if use mpi; then + export CC=mpicc + myeconfargs+=( --enable-parallel ) + use test && myeconfargs+=( --enable-parallel-tests ) + fi + autotools-utils_src_configure +} + +src_test() { + autotools-utils_src_test -j1 +} + +src_install() { + autotools-utils_src_install + if use examples; then + insinto /usr/share/doc/${PF} + doins -r examples + fi +} diff --git a/sci-libs/netcdf/netcdf-4.4.0-r1.ebuild b/sci-libs/netcdf/netcdf-4.4.0-r1.ebuild new file mode 100644 index 000000000000..5a8e696da397 --- /dev/null +++ b/sci-libs/netcdf/netcdf-4.4.0-r1.ebuild @@ -0,0 +1,50 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils + +DESCRIPTION="Scientific library and interface for array oriented data access" +HOMEPAGE="http://www.unidata.ucar.edu/software/netcdf/" +SRC_URI="https://github.com/Unidata/netcdf-c/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="UCAR-Unidata" +SLOT="0/11" +KEYWORDS="~amd64 ~arm ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+dap examples hdf +hdf5 mpi static-libs szip test tools" + +RDEPEND=" + dap? ( net-misc/curl:0= ) + hdf? ( sci-libs/hdf:0= sci-libs/hdf5:0= ) + hdf5? ( sci-libs/hdf5:0=[hl(+),mpi=,szip=,zlib] )" +DEPEND="${RDEPEND}" +# doc generation is missing many doxygen files in tar ball +# doc? ( app-doc/doxygen[dot] )" + +REQUIRED_USE="test? ( tools ) szip? ( hdf5 ) mpi? ( hdf5 )" + +S="${WORKDIR}/${PN}-c-${PV}" + +src_configure() { + local myconf + if use mpi; then + export CC=mpicc + myconf="--enable-parallel" + use test && myconf+=" --enable-parallel-tests" + fi + econf "${myconf}" \ + --disable-examples \ + --disable-dap-remote-tests \ + $(use_enable dap) \ + $(use_enable hdf hdf4) \ + $(use_enable hdf5 netcdf-4) \ + $(use_enable static-libs static) \ + $(use_enable tools utilities) +} + +src_install() { + default + use examples && dodoc -r examples + prune_libtool_files +} diff --git a/sci-libs/netcdf/netcdf-4.4.1.1.ebuild b/sci-libs/netcdf/netcdf-4.4.1.1.ebuild new file mode 100644 index 000000000000..b295062f6d98 --- /dev/null +++ b/sci-libs/netcdf/netcdf-4.4.1.1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit eutils + +DESCRIPTION="Scientific library and interface for array oriented data access" +HOMEPAGE="http://www.unidata.ucar.edu/software/netcdf/" +SRC_URI="https://github.com/Unidata/netcdf-c/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="UCAR-Unidata" +SLOT="0/11" +KEYWORDS="~amd64 ~arm ~ia64 ~ppc ~ppc64 ~x86 ~amd64-linux ~x86-linux" +IUSE="+dap examples hdf +hdf5 mpi static-libs szip test tools" + +RDEPEND=" + dap? ( net-misc/curl:0= ) + hdf? ( sci-libs/hdf:0= sci-libs/hdf5:0= ) + hdf5? ( sci-libs/hdf5:0=[hl(+),mpi=,szip=,zlib] )" +DEPEND="${RDEPEND}" +# doc generation is missing many doxygen files in tar ball +# doc? ( app-doc/doxygen[dot] )" + +REQUIRED_USE="test? ( tools ) szip? ( hdf5 ) mpi? ( hdf5 )" + +S="${WORKDIR}/${PN}-c-${PV}" + +src_configure() { + local myconf + if use mpi; then + export CC=mpicc + myconf="--enable-parallel" + use test && myconf+=" --enable-parallel-tests" + fi + econf "${myconf}" \ + --disable-examples \ + --disable-dap-remote-tests \ + $(use_enable dap) \ + $(use_enable hdf hdf4) \ + $(use_enable hdf5 netcdf-4) \ + $(use_enable static-libs static) \ + $(use_enable tools utilities) +} + +src_test() { + # fails parallel tests: bug #621486 + emake check -j1 +} + +src_install() { + default + use examples && dodoc -r examples + prune_libtool_files +} -- cgit v1.2.3