f5b4fc05f8
The osc monitoring component needed to include other OSC components header in order to be able tu access communicator through the component specific ompi_osc_*_module_t structures. This commit remove the dependency, and resolve the issue #4523. Extend the common monitoring API. * Now it's possible to translate from local rank to world rank from both the communicator and the group. * Remove useless hashtable as we directly use the w_group contained in window structure. Add automatic generation at config time. The templates are expanded at configure time. It creates a new header file that generates all the variables/functions needed. Adding this during the autogen automagicaly generates for each of the available modules the proper functions. Only keep a generated argv-style array. Following Jeff's advice, the configure.m4 file generate a simple array of module variables to be iterated over to find the proper module. Signed-off-by: Clement Foyer <clement.foyer@inria.fr>
42 строки
1.2 KiB
Makefile
42 строки
1.2 KiB
Makefile
#
|
|
# Copyright (c) 2016-2018 Inria. All rights reserved.
|
|
# Copyright (c) 2017 IBM Corporation. All rights reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
monitoring_sources = \
|
|
osc_monitoring.h \
|
|
osc_monitoring_comm.h \
|
|
osc_monitoring_component.c \
|
|
osc_monitoring_accumulate.h \
|
|
osc_monitoring_passive_target.h \
|
|
osc_monitoring_active_target.h \
|
|
osc_monitoring_dynamic.h \
|
|
osc_monitoring_module.h \
|
|
osc_monitoring_template.h
|
|
|
|
if MCA_BUILD_ompi_osc_monitoring_DSO
|
|
component_noinst =
|
|
component_install = mca_osc_monitoring.la
|
|
else
|
|
component_noinst = libmca_osc_monitoring.la
|
|
component_install =
|
|
endif
|
|
|
|
mcacomponentdir = $(ompilibdir)
|
|
mcacomponent_LTLIBRARIES = $(component_install)
|
|
mca_osc_monitoring_la_SOURCES = $(monitoring_sources)
|
|
mca_osc_monitoring_la_LDFLAGS = -module -avoid-version
|
|
mca_osc_monitoring_la_LIBADD = $(top_builddir)/ompi/lib@OMPI_LIBMPI_NAME@.la \
|
|
$(OMPI_TOP_BUILDDIR)/ompi/mca/common/monitoring/libmca_common_monitoring.la
|
|
|
|
noinst_LTLIBRARIES = $(component_noinst)
|
|
libmca_osc_monitoring_la_SOURCES = $(monitoring_sources)
|
|
libmca_osc_monitoring_la_LDFLAGS = -module -avoid-version
|
|
|
|
DISTCLEANFILES = osc_monitoring_template_gen.h
|