diff --git a/pkgs/development/libraries/mpich/default.nix b/pkgs/development/libraries/mpich/default.nix index d2cbee14c3a..9227cd70543 100644 --- a/pkgs/development/libraries/mpich/default.nix +++ b/pkgs/development/libraries/mpich/default.nix @@ -1,5 +1,5 @@ { stdenv, lib, fetchurl, perl, gfortran -, openssh, hwloc, autoconf, automake, libtool +, openssh, hwloc # either libfabric or ucx work for ch4backend on linux. On darwin, neither of # these libraries currently build so this argument is ignored on Darwin. , ch4backend @@ -11,29 +11,13 @@ assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric"); stdenv.mkDerivation rec { pname = "mpich"; - version = "3.4.1"; + version = "3.4.2"; src = fetchurl { url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz"; - sha256 = "09wpfw9lsrc84vcmfw94razd4xv4znx4mmg7rqmljvgg0jc96dl8"; + sha256 = "1gw7qpb27mhsj7ip0hhljshgpwvz2hmyhizhlp6793afp2lbw6aw"; }; - patches = [ - # Reverts an upstream change that causes json-c test to fail - ./jsonc-test.patch - ]; - - # Required for the json-c patch - nativeBuildInputs = [ autoconf automake libtool ]; - - # Update configure after patch - postPatch = '' - cd modules/json-c - ./autogen.sh - cd ../.. - ''; - - configureFlags = [ "--enable-shared" "--enable-sharedlib" diff --git a/pkgs/development/libraries/mpich/jsonc-test.patch b/pkgs/development/libraries/mpich/jsonc-test.patch deleted file mode 100644 index 2f8d87b409b..00000000000 --- a/pkgs/development/libraries/mpich/jsonc-test.patch +++ /dev/null @@ -1,62 +0,0 @@ ---- b/modules/json-c/configure.ac -+++ a/modules/json-c/configure.ac -@@ -75,7 +75,7 @@ - AC_FUNC_VPRINTF - AC_FUNC_MEMCMP - AC_CHECK_FUNCS([realloc]) -+AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf vasprintf open strncasecmp setlocale) --AC_CHECK_FUNCS(strcasecmp strdup strerror snprintf vsnprintf open strncasecmp setlocale) - AC_CHECK_DECLS([INFINITY], [], [], [[#include ]]) - AC_CHECK_DECLS([nan], [], [], [[#include ]]) - AC_CHECK_DECLS([isnan], [], [], [[#include ]]) ---- b/modules/json-c/json_pointer.c -+++ a/modules/json-c/json_pointer.c -@@ -208,7 +208,7 @@ - } - - va_start(args, path_fmt); -+ rc = vasprintf(&path_copy, path_fmt, args); -- rc = json_vasprintf(&path_copy, path_fmt, args); - va_end(args); - - if (rc < 0) -@@ -287,7 +287,7 @@ - - /* pass a working copy to the recursive call */ - va_start(args, path_fmt); -+ rc = vasprintf(&path_copy, path_fmt, args); -- rc = json_vasprintf(&path_copy, path_fmt, args); - va_end(args); - - if (rc < 0) ---- b/modules/json-c/printbuf.c -+++ a/modules/json-c/printbuf.c -@@ -129,7 +129,7 @@ - would have been written - this code handles both cases. */ - if(size == -1 || size > 127) { - va_start(ap, msg); -+ if((size = vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; } -- if((size = json_vasprintf(&t, msg, ap)) < 0) { va_end(ap); return -1; } - va_end(ap); - printbuf_memappend(p, t, size); - free(t); ---- b/modules/json-c/vasprintf_compat.h -+++ a/modules/json-c/vasprintf_compat.h -@@ -8,8 +8,9 @@ - - #include "snprintf_compat.h" - -+#if !defined(HAVE_VASPRINTF) - /* CAW: compliant version of vasprintf */ -+static int vasprintf(char **buf, const char *fmt, va_list ap) --static int json_vasprintf(char **buf, const char *fmt, va_list ap) - { - #ifndef WIN32 - static char _T_emptybuffer = '\0'; -@@ -40,5 +41,6 @@ - - return chars; - } -+#endif /* !HAVE_VASPRINTF */ - - #endif /* __vasprintf_compat_h */