From 34e9fc612c174c41c3c9a10497d6f6f447374824 Mon Sep 17 00:00:00 2001 From: Jim Edwards Date: Tue, 22 Aug 2023 01:44:06 -0600 Subject: parallelio: add v2.6.1 (#39479) --- .../repos/builtin/packages/parallelio/package.py | 7 +++++ .../builtin/packages/parallelio/pio_260.patch | 20 ++++++++++++ .../builtin/packages/parallelio/serial261.patch | 36 ++++++++++++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 var/spack/repos/builtin/packages/parallelio/pio_260.patch create mode 100644 var/spack/repos/builtin/packages/parallelio/serial261.patch diff --git a/var/spack/repos/builtin/packages/parallelio/package.py b/var/spack/repos/builtin/packages/parallelio/package.py index f6bb375c13..459c55b0e6 100644 --- a/var/spack/repos/builtin/packages/parallelio/package.py +++ b/var/spack/repos/builtin/packages/parallelio/package.py @@ -17,6 +17,7 @@ class Parallelio(CMakePackage): maintainers("jedwards4b") + version("2.6.1", sha256="83d3108d2b9db8219aa6b6ee333cfc12b2a588bcfc781587df5f8b24a716a6eb") version("2.6.0", sha256="e56a980c71c7f57f396a88beae08f1670d4adf59be6411cd573fe85868ef98c0") version("2.5.10", sha256="fac694827c81434a7766976711ba7179940e361e8ed0c189c7b397fd44d401de") version("2.5.9", sha256="e5dbc153d8637111de3a51a9655660bf15367d55842de78240dcfc024380553d") @@ -36,6 +37,12 @@ class Parallelio(CMakePackage): ) variant("mpi", default=True, description="Use mpi to build, otherwise use mpi-serial") + # This patch addresses building pio2.6.1 with serial netcdf, again the issue is netcdf filters + patch("serial261.patch", when="@2.6.1") + + # This patch addresses an issue when compiling pio2.6.0 with a serial netcdf library. + # netcdf4 filters are only available with the parallel build of netcdf. + patch("pio_260.patch", when="@2.6.0") patch("remove_redefinition_of_mpi_offset.patch", when="@:2.5.6") depends_on("cmake@3.7:", type="build") diff --git a/var/spack/repos/builtin/packages/parallelio/pio_260.patch b/var/spack/repos/builtin/packages/parallelio/pio_260.patch new file mode 100644 index 0000000000..1ada18b306 --- /dev/null +++ b/var/spack/repos/builtin/packages/parallelio/pio_260.patch @@ -0,0 +1,20 @@ +diff --git a/src/clib/pio_internal.h b/src/clib/pio_internal.h +index c360ae4e..79cc48eb 100644 +--- a/src/clib/pio_internal.h ++++ b/src/clib/pio_internal.h +@@ -17,11 +17,13 @@ + #include + #include + #include +-#ifdef _NETCDF4 +-#include ++#ifdef PIO_HAS_PAR_FILTERS + #include + #include + #endif ++#ifdef _NETCDF4 ++#include ++#endif + #ifdef _PNETCDF + #include + #endif diff --git a/var/spack/repos/builtin/packages/parallelio/serial261.patch b/var/spack/repos/builtin/packages/parallelio/serial261.patch new file mode 100644 index 0000000000..a69db1f791 --- /dev/null +++ b/var/spack/repos/builtin/packages/parallelio/serial261.patch @@ -0,0 +1,36 @@ +diff --git a/src/clib/pio.h b/src/clib/pio.h +index 0aea5a5f..767de18f 100644 +--- a/src/clib/pio.h ++++ b/src/clib/pio.h +@@ -1267,9 +1267,8 @@ extern "C" { + const long long *op); + int PIOc_put_vard_ulonglong(int ncid, int varid, int decompid, const PIO_Offset recnum, + const unsigned long long *op); +-/* use this variable in the NETCDF library (introduced in v4.9.0) to determine if the following +- functions are available */ +-#ifdef NC_HAS_MULTIFILTERS ++ ++#ifdef PIO_HAS_PAR_FILTERS + int PIOc_def_var_filter(int ncid, int varid,unsigned int id, size_t nparams, unsigned int *params); + int PIOc_inq_var_filter_ids(int ncid, int varid, size_t *nfiltersp, unsigned int *ids); + int PIOc_inq_var_filter_info(int ncid, int varid, unsigned int id, size_t *nparamsp, unsigned int *params ); +diff --git a/src/ncint/ncintdispatch.c b/src/ncint/ncintdispatch.c +index a77396bd..3dce9d2c 100644 +--- a/src/ncint/ncintdispatch.c ++++ b/src/ncint/ncintdispatch.c +@@ -127,6 +127,7 @@ NC_Dispatch NCINT_dispatcher = { + NC_NOTNC4_def_var_filter, + NC_NOTNC4_set_var_chunk_cache, + NC_NOTNC4_get_var_chunk_cache, ++#ifdef PIO_HAS_PAR_FILTERS + #if NC_DISPATCH_VERSION == 2 + PIO_NCINT_filter_actions, + #endif +@@ -141,6 +142,7 @@ NC_Dispatch NCINT_dispatcher = { + #if NC_DISPATCH_VERSION >= 5 + PIOc_inq_filter_avail, + #endif ++#endif + }; + + /** -- cgit v1.2.3-70-g09d2