diff --git a/ompi/runtime/ompi_mpi_finalize.c b/ompi/runtime/ompi_mpi_finalize.c index 343104268f..154ab5407e 100644 --- a/ompi/runtime/ompi_mpi_finalize.c +++ b/ompi/runtime/ompi_mpi_finalize.c @@ -119,6 +119,7 @@ int ompi_mpi_finalize(void) */ (void)mca_pml_base_bsend_detach(NULL, NULL); +#if !ORTE_DISABLE_FULL_SUPPORT /* If desired, send a notify message */ if (ompi_notify_init_finalize) { orte_notifier.log(ORTE_NOTIFIER_NOTICE, @@ -127,6 +128,7 @@ int ompi_mpi_finalize(void) orte_process_info.nodename, orte_process_info.pid); } +#endif /* Per MPI-2:4.8, we have to free MPI_COMM_SELF before doing anything else in MPI_FINALIZE (to include setting up such that @@ -411,7 +413,8 @@ int ompi_mpi_finalize(void) if (NULL != ompi_mpi_show_mca_params_file) { free(ompi_mpi_show_mca_params_file); } - + +#if !ORTE_DISABLE_FULL_SUPPORT /* If desired, send a notify message */ if (ompi_notify_init_finalize) { orte_notifier.log(ORTE_NOTIFIER_NOTICE, @@ -420,6 +423,7 @@ int ompi_mpi_finalize(void) orte_process_info.nodename, orte_process_info.pid); } +#endif /* Leave the RTE */ diff --git a/ompi/runtime/ompi_mpi_init.c b/ompi/runtime/ompi_mpi_init.c index cb6f31b491..08b2adab49 100644 --- a/ompi/runtime/ompi_mpi_init.c +++ b/ompi/runtime/ompi_mpi_init.c @@ -407,6 +407,7 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided) goto error; } +#if !ORTE_DISABLE_FULL_SUPPORT /* If desired, send a notify message */ if (ompi_notify_init_finalize) { orte_notifier.log(ORTE_NOTIFIER_NOTICE, @@ -415,6 +416,7 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided) orte_process_info.nodename, orte_process_info.pid); } +#endif /* if it hasn't already been done, setup process affinity. * First check to see if a slot list was @@ -967,6 +969,7 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided) (ompistop.tv_usec - ompistart.tv_usec))); } +#if !ORTE_DISABLE_FULL_SUPPORT /* If desired, send a notifier message that we've finished MPI_INIT */ if (ompi_notify_init_finalize) { orte_notifier.log(ORTE_NOTIFIER_NOTICE, @@ -975,6 +978,7 @@ int ompi_mpi_init(int argc, char **argv, int requested, int *provided) orte_process_info.nodename, orte_process_info.pid); } +#endif return MPI_SUCCESS; } diff --git a/orte/mca/errmgr/base/errmgr_base_fns.c b/orte/mca/errmgr/base/errmgr_base_fns.c index 3058d7e1e9..888903f39b 100644 --- a/orte/mca/errmgr/base/errmgr_base_fns.c +++ b/orte/mca/errmgr/base/errmgr_base_fns.c @@ -207,6 +207,7 @@ void orte_errmgr_base_abort(int error_code, char *fmt, ...) } va_end(arglist); +#if !ORTE_DISABLE_FULL_SUPPORT /* if I am a daemon or the HNP... */ if (ORTE_PROC_IS_HNP || ORTE_PROC_IS_DAEMON) { /* whack my local procs */ @@ -217,7 +218,10 @@ void orte_errmgr_base_abort(int error_code, char *fmt, ...) /* cleanup my session directory */ orte_session_dir_finalize(ORTE_PROC_MY_NAME); } - +#else + orte_session_dir_finalize(ORTE_PROC_MY_NAME); +#endif + /* if a critical connection failed, exit without dropping a core */ if (ORTE_ERR_CONNECTION_FAILED == OPAL_SOS_GET_ERROR_CODE(error_code)) { orte_ess.abort(error_code, false); diff --git a/orte/mca/ess/portals4_shmem/Makefile.am b/orte/mca/ess/portals4_shmem/Makefile.am index 6ffcbeb130..04e64071b3 100644 --- a/orte/mca/ess/portals4_shmem/Makefile.am +++ b/orte/mca/ess/portals4_shmem/Makefile.am @@ -40,8 +40,10 @@ endif mcacomponentdir = $(pkglibdir) mcacomponent_LTLIBRARIES = $(component_install) mca_ess_portals4_shmem_la_SOURCES = $(sources) -mca_ess_portals4_shmem_la_LDFLAGS = -module -avoid-version +mca_ess_portals4_shmem_la_LIBADD = $(ess_portals4_shmem_LIBS) +mca_ess_portals4_shmem_la_LDFLAGS = -module -avoid-version $(ess_portals4_shmem_LDFLAGS) noinst_LTLIBRARIES = $(component_noinst) libmca_ess_portals4_shmem_la_SOURCES =$(sources) -libmca_ess_portals4_shmem_la_LDFLAGS = -module -avoid-version +libmca_ess_portals4_shmem_la_LIBADD = $(ess_portals4_shmem_LIBS) +libmca_ess_portals4_shmem_la_LDFLAGS = -module -avoid-version $(ess_portals4_shmem_LDFLAGS) diff --git a/orte/mca/ess/portals4_shmem/ess_portals4_shmem.h b/orte/mca/ess/portals4_shmem/ess_portals4_shmem.h index b627babc0d..c64d9a5107 100644 --- a/orte/mca/ess/portals4_shmem/ess_portals4_shmem.h +++ b/orte/mca/ess/portals4_shmem/ess_portals4_shmem.h @@ -29,6 +29,7 @@ int orte_ess_portals4_shmem_component_open(void); int orte_ess_portals4_shmem_component_close(void); int orte_ess_portals4_shmem_component_query(mca_base_module_t **module, int *priority); +ORTE_MODULE_DECLSPEC extern orte_ess_base_component_t mca_ess_portals4_shmem_component; END_C_DECLS diff --git a/orte/mca/ess/portals4_shmem/ess_portals4_shmem_component.c b/orte/mca/ess/portals4_shmem/ess_portals4_shmem_component.c index d8c0942d8d..9df16b56c2 100644 --- a/orte/mca/ess/portals4_shmem/ess_portals4_shmem_component.c +++ b/orte/mca/ess/portals4_shmem/ess_portals4_shmem_component.c @@ -20,6 +20,9 @@ #include "orte_config.h" #include "orte/constants.h" +#include +#include + #include "orte/mca/ess/ess.h" #include "orte/mca/ess/portals4_shmem/ess_portals4_shmem.h" @@ -56,6 +59,8 @@ orte_ess_base_component_t mca_ess_portals4_shmem_component = { int orte_ess_portals4_shmem_component_open(void) { + if (PTL_OK != PtlInit()) return ORTE_ERROR; + return ORTE_SUCCESS; } @@ -77,6 +82,7 @@ int orte_ess_portals4_shmem_component_query(mca_base_module_t **module, int *pri int orte_ess_portals4_shmem_component_close(void) { + PtlFini(); return ORTE_SUCCESS; } diff --git a/orte/mca/grpcomm/base/grpcomm_base_open.c b/orte/mca/grpcomm/base/grpcomm_base_open.c index d51ab4a374..92990f6548 100644 --- a/orte/mca/grpcomm/base/grpcomm_base_open.c +++ b/orte/mca/grpcomm/base/grpcomm_base_open.c @@ -56,7 +56,11 @@ int orte_grpcomm_base_open(void) orte_grpcomm_base.profile_fd = -1; /* define the default daemon collective fn */ +#if ORTE_DISABLE_FULL_SUPPORT + orte_grpcomm_base.daemon_coll = NULL; +#else orte_grpcomm_base.daemon_coll = orte_grpcomm_base_daemon_collective; +#endif /* Open up all available components */ diff --git a/orte/mca/grpcomm/portals4_shmem/Makefile.am b/orte/mca/grpcomm/portals4_shmem/Makefile.am index 903163379c..749278a2bd 100644 --- a/orte/mca/grpcomm/portals4_shmem/Makefile.am +++ b/orte/mca/grpcomm/portals4_shmem/Makefile.am @@ -40,8 +40,12 @@ endif mcacomponentdir = $(pkglibdir) mcacomponent_LTLIBRARIES = $(component_install) mca_grpcomm_portals4_shmem_la_SOURCES = $(sources) -mca_grpcomm_portals4_shmem_la_LDFLAGS = -module -avoid-version +mca_grpcomm_portals4_shmem_la_LIBADD = $(grpcomm_portals4_shmem_LIBS) +mca_grpcomm_portals4_shmem_la_LDFLAGS = -module -avoid-version $(grpcomm_portals4_shmem_LDFLAGS) + noinst_LTLIBRARIES = $(component_noinst) libmca_grpcomm_portals4_shmem_la_SOURCES =$(sources) -libmca_grpcomm_portals4_shmem_la_LDFLAGS = -module -avoid-version +libmca_grpcomm_portals4_shmem_la_LIBADD = $(grpcomm_portals4_shmem_LIBS) +libmca_grpcomm_portals4_shmem_la_LDFLAGS = -module -avoid-version $(grpcomm_portals4_shmem_LDFLAGS) +