mpich: 3.4.1 -> 3.4.2
(cherry picked from commit 0853275727138c6bb9ade80aa8d2e0f298044f47)
This commit is contained in:
parent
e7f90ce89c
commit
58ba40336c
|
@ -1,5 +1,5 @@
|
||||||
{ stdenv, lib, fetchurl, perl, gfortran
|
{ 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
|
# either libfabric or ucx work for ch4backend on linux. On darwin, neither of
|
||||||
# these libraries currently build so this argument is ignored on Darwin.
|
# these libraries currently build so this argument is ignored on Darwin.
|
||||||
, ch4backend
|
, ch4backend
|
||||||
|
@ -11,29 +11,13 @@ assert (ch4backend.pname == "ucx" || ch4backend.pname == "libfabric");
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
stdenv.mkDerivation rec {
|
||||||
pname = "mpich";
|
pname = "mpich";
|
||||||
version = "3.4.1";
|
version = "3.4.2";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
url = "https://www.mpich.org/static/downloads/${version}/mpich-${version}.tar.gz";
|
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 = [
|
configureFlags = [
|
||||||
"--enable-shared"
|
"--enable-shared"
|
||||||
"--enable-sharedlib"
|
"--enable-sharedlib"
|
||||||
|
|
|
@ -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 <math.h>]])
|
|
||||||
AC_CHECK_DECLS([nan], [], [], [[#include <math.h>]])
|
|
||||||
AC_CHECK_DECLS([isnan], [], [], [[#include <math.h>]])
|
|
||||||
--- 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 */
|
|
Loading…
Reference in New Issue