Skip to content

Commit 2f721a3

Browse files
author
Ralph Castain
authored
Merge pull request #3585 from rhc54/topic/pmix20
Update to pmix v2.0beta
2 parents 47ebfaa + e1e2647 commit 2f721a3

File tree

123 files changed

+14081
-480
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

123 files changed

+14081
-480
lines changed

opal/mca/pmix/pmix2x/pmix/VERSION

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ greek=
3030
# command, or with the date (if "git describe" fails) in the form of
3131
# "date<date>".
3232

33-
repo_rev=git198a2b0
33+
repo_rev=git217c369
3434

3535
# If tarball_version is not empty, it is used as the version string in
3636
# the tarball filename, regardless of all other versions listed in
@@ -44,7 +44,7 @@ tarball_version=
4444

4545
# The date when this release was created
4646

47-
date="Apr 12, 2017"
47+
date="May 25, 2017"
4848

4949
# The shared library version of each of PMIx's public libraries.
5050
# These versions are maintained in accordance with the "Library

opal/mca/pmix/pmix2x/pmix/autogen.pl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
# Copyright (c) 2010 Oracle and/or its affiliates. All rights reserved.
55
# Copyright (c) 2013 Mellanox Technologies, Inc.
66
# All rights reserved.
7-
# Copyright (c) 2013-2016 Intel, Inc. All rights reserved.
7+
# Copyright (c) 2013-2017 Intel, Inc. All rights reserved.
88
# Copyright (c) 2015 Research Organization for Information Science
99
# and Technology (RIST). All rights reserved.
1010
# Copyright (c) 2015 IBM Corporation. All rights reserved.
@@ -55,9 +55,9 @@
5555
my $exclude_list;
5656

5757
# Minimum versions
58-
my $pmix_automake_version = "1.12.2";
58+
my $pmix_automake_version = "1.15.0";
5959
my $pmix_autoconf_version = "2.69";
60-
my $pmix_libtool_version = "2.4.2";
60+
my $pmix_libtool_version = "2.4.6";
6161

6262
# Search paths
6363
my $pmix_autoconf_search = "autoconf";

opal/mca/pmix/pmix2x/pmix/config/pmix.m4

Lines changed: 42 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,8 @@ AC_DEFUN([PMIX_SETUP_CORE],[
179179
AC_CHECK_TYPES(uint32_t)
180180
AC_CHECK_TYPES(int64_t)
181181
AC_CHECK_TYPES(uint64_t)
182+
AC_CHECK_TYPES(__int128)
183+
AC_CHECK_TYPES(uint128_t)
182184
AC_CHECK_TYPES(long long)
183185

184186
AC_CHECK_TYPES(intptr_t)
@@ -302,6 +304,17 @@ AC_DEFUN([PMIX_SETUP_CORE],[
302304
PMIX_CHECK_ATTRIBUTES
303305
PMIX_CHECK_COMPILER_VERSION_ID
304306

307+
##################################
308+
# Assembler Configuration
309+
##################################
310+
311+
pmix_show_subtitle "Assembler"
312+
313+
AM_PROG_AS
314+
AC_PATH_PROG(PERL, perl, perl)
315+
PMIX_CONFIG_ASM
316+
317+
305318
##################################
306319
# Header files
307320
##################################
@@ -618,6 +631,28 @@ AC_DEFUN([PMIX_SETUP_CORE],[
618631
AC_C_BIGENDIAN
619632
PMIX_CHECK_BROKEN_QSORT
620633

634+
#
635+
# Check out what thread support we have
636+
#
637+
PMIX_CONFIG_THREADS
638+
639+
CFLAGS="$CFLAGS $THREAD_CFLAGS"
640+
CPPFLAGS="$CPPFLAGS $THREAD_CPPFLAGS"
641+
CXXFLAGS="$CXXFLAGS $THREAD_CXXFLAGS"
642+
CXXCPPFLAGS="$CXXCPPFLAGS $THREAD_CXXCPPFLAGS"
643+
LDFLAGS="$LDFLAGS $THREAD_LDFLAGS"
644+
LIBS="$LIBS $THREAD_LIBS"
645+
646+
#
647+
# What is the local equivalent of "ln -s"
648+
#
649+
650+
AC_PROG_LN_S
651+
652+
AC_PROG_GREP
653+
AC_PROG_EGREP
654+
655+
621656
##################################
622657
# Visibility
623658
##################################
@@ -708,6 +743,7 @@ AC_DEFUN([PMIX_SETUP_CORE],[
708743
pmix_config_prefix[Makefile]
709744
pmix_config_prefix[config/Makefile]
710745
pmix_config_prefix[include/Makefile]
746+
pmix_config_prefix[src/atomics/asm/Makefile]
711747
pmix_config_prefix[src/Makefile]
712748
pmix_config_prefix[src/util/keyval/Makefile]
713749
pmix_config_prefix[src/mca/base/Makefile]
@@ -983,15 +1019,15 @@ fi
9831019
# Install backward compatibility support for PMI-1 and PMI-2
9841020
#
9851021
AC_MSG_CHECKING([if want backward compatibility for PMI-1 and PMI-2])
986-
AC_ARG_ENABLE(pmix-backward-compatibility,
987-
AC_HELP_STRING([--enable-pmix-backward-compatibility],
1022+
AC_ARG_ENABLE(pmi-backward-compatibility,
1023+
AC_HELP_STRING([--enable-pmi-backward-compatibility],
9881024
[enable PMIx support for PMI-1 and PMI-2 (default: enabled)]))
989-
if test "$enable_pmix_backward_compatibility" = "no"; then
1025+
if test "$enable_pmi_backward_compatibility" = "no"; then
9901026
AC_MSG_RESULT([no])
991-
WANT_PMIX_BACKWARD=0
1027+
WANT_PMI_BACKWARD=0
9921028
else
9931029
AC_MSG_RESULT([yes])
994-
WANT_PMIX_BACKWARD=1
1030+
WANT_PMI_BACKWARD=1
9951031
fi
9961032

9971033
AM_CONDITIONAL([WANT_INSTALL_HEADERS], [test $WANT_INSTALL_HEADERS -eq 1])
@@ -1009,7 +1045,7 @@ AC_DEFUN([PMIX_DO_AM_CONDITIONALS],[
10091045
AM_CONDITIONAL([WANT_DSTORE], [test "x$enable_dstore" != "xno"])
10101046
AM_CONDITIONAL([WANT_PRIMARY_HEADERS], [test "x$pmix_install_primary_headers" = "xyes"])
10111047
AM_CONDITIONAL(WANT_INSTALL_HEADERS, test "$WANT_INSTALL_HEADERS" = 1)
1012-
AM_CONDITIONAL(WANT_PMIX_BACKWARD, test "$WANT_PMIX_BACKWARD" = 1)
1048+
AM_CONDITIONAL(WANT_PMI_BACKWARD, test "$WANT_PMI_BACKWARD" = 1)
10131049
])
10141050
pmix_did_am_conditionals=yes
10151051
])dnl
Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
dnl
2+
dnl Copyright (c) 2004-2006 The Trustees of Indiana University and Indiana
3+
dnl University Research and Technology
4+
dnl Corporation. All rights reserved.
5+
dnl Copyright (c) 2004-2005 The University of Tennessee and The University
6+
dnl of Tennessee Research Foundation. All rights
7+
dnl reserved.
8+
dnl Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
9+
dnl University of Stuttgart. All rights reserved.
10+
dnl Copyright (c) 2004-2005 The Regents of the University of California.
11+
dnl All rights reserved.
12+
dnl Copyright (c) 2008-2013 Cisco Systems, Inc. All rights reserved.
13+
dnl Copyright (c) 2017 Intel, Inc. All rights reserved.
14+
dnl $COPYRIGHT$
15+
dnl
16+
dnl Additional copyrights may follow
17+
dnl
18+
dnl $HEADER$
19+
dnl
20+
21+
AC_DEFUN([PMIX_CHECK_PTHREAD_PIDS],[
22+
#
23+
# Arguments: none
24+
#
25+
# Dependencies: None
26+
#
27+
# Sets:
28+
# PMIX_THREADS_HAVE_DIFFERENT_PIDS (variable)
29+
#
30+
# Test for Linux-like threads in the system. PMIX does not support
31+
# systems with different PIDs for threads in the same process, so error
32+
# out if we detect that case.
33+
#
34+
35+
AC_MSG_CHECKING([if threads have different pids (pthreads on linux)])
36+
37+
PMIX_VAR_SCOPE_PUSH([tpids_CFLAGS_save tpids_CPPFLAGS_save tpids_LDFLAGS_save tpids_LIBS_save tpids_MSG])
38+
tpids_CFLAGS_save="$CFLAGS"
39+
CFLAGS="$CFLAGS $THREAD_CFLAGS"
40+
tpids_CPPFLAGS_save="$CPPFLAGS"
41+
CPPFLAGS="$CPPFLAGS $THREAD_CPPFLAGS"
42+
tpids_LDFLAGS_save="$LDFLAGS"
43+
LDFLAGS="$LDFLAGS $THREAD_LDFLAGS"
44+
tpids_LIBS_save="$LIBS"
45+
LIBS="$LIBS $THREAD_LIBS"
46+
AC_RUN_IFELSE([AC_LANG_SOURCE([#include <pthread.h>
47+
#include <sys/types.h>
48+
#include <unistd.h>
49+
#include <stdlib.h>
50+
51+
void *checkpid(void *arg);
52+
int main() {
53+
pthread_t thr;
54+
int pid, *retval;
55+
pid = getpid();
56+
pthread_create(&thr, NULL, checkpid, &pid);
57+
pthread_join(thr, (void **) &retval);
58+
exit(*retval);
59+
}
60+
61+
static int ret;
62+
void *checkpid(void *arg) {
63+
int ppid = *((int *) arg);
64+
if (ppid == getpid())
65+
ret = 0;
66+
else
67+
ret = 1;
68+
pthread_exit((void *) &ret);
69+
}])],
70+
[tpids_MSG=no PMIX_THREADS_HAVE_DIFFERENT_PIDS=0],
71+
[tpids_MSG=yes PMIX_THREADS_HAVE_DIFFERENT_PIDS=1],
72+
[
73+
# If we're cross compiling, we can't do another AC_* function here beause
74+
# it we haven't displayed the result from the last one yet. So defer
75+
# another test until below.
76+
PMIX_THREADS_HAVE_DIFFERENT_PIDS=
77+
MSG="cross compiling (need another test)"])
78+
79+
CFLAGS="$tpids_CFLAGS_save"
80+
CPPFLAGS="$tpids_CPPFLAGS_save"
81+
LDFLAGS="$tpids_LDFLAGS_save"
82+
LIBS="$tpids_LIBS_save"
83+
84+
AC_MSG_RESULT([$tpids_MSG])
85+
86+
AS_IF([test "x$PMIX_THREADS_HAVE_DIFFERENT_PIDS" = "x"],
87+
[ # If we are cross-compiling, look for the symbol
88+
# __linuxthreads_create_event, which seems to only exist in the
89+
# Linux Threads-based pthreads implementation (i.e., the one
90+
# that has different PIDs for each thread). We *could* switch
91+
# on $host here and only test *linux* hosts, but this test is
92+
# pretty unique, so why bother? Note that AC_CHECK_FUNC works
93+
# properly in cross-compiling environments in recent-enough
94+
# versions of Autoconf (which is one of the reasons we mandate
95+
# recent versions in autogen!).
96+
AC_CHECK_FUNC([__linuxthreads_create_event],
97+
[PMIX_THREADS_HAVE_DIFFERENT_PIDS=1])])
98+
99+
AS_IF([test "$PMIX_THREADS_HAVE_DIFFERENT_PIDS" = "1"],
100+
[AC_MSG_WARN([This version of PMIx only supports environments where])
101+
AC_MSG_WARN([threads have the same PID])
102+
AC_MSG_ERROR([Cannot continue])
103+
])
104+
105+
#
106+
# if pthreads is not available, then the system does not have an insane threads
107+
# model
108+
#
109+
PMIX_VAR_SCOPE_POP])dnl

0 commit comments

Comments
 (0)