
This commit DELETES the removed MPI1 functions and datatypes from both the mpi.h header and from the library (they were deleted from the MPI standard in MPI-3.0). WARNING: This changes the MPI API in a non-backwards compatible way. This also removes the configure option that was added in Open MPI v4.0.x, requiring users to change their apps if they are using any of these almost 20 year old APIs. This commit removes the following MPI1 removed functions and datatypes: MPI_Address MPI_Errhandler_create MPI_Errhandler_get MPI_Errhandler_set MPI_Type_extent MPI_Type_hindexed MPI_Type_hvector MPI_Type_struct MPI_Type_UB MPI_Type_LB Signed-off-by: Geoffrey Paulsen <gpaulsen@us.ibm.com>
118 строки
4.0 KiB
Makefile
118 строки
4.0 KiB
Makefile
# -*- makefile -*-
|
|
#
|
|
# Copyright (c) 2006-2015 Cisco Systems, Inc. All rights reserved.
|
|
# Copyright (c) 2015-2018 Research Organization for Information Science
|
|
# and Technology (RIST). All rights reserved.
|
|
# Copyright (c) 2016 IBM Corporation. All rights reserved.
|
|
#
|
|
# Copyright (c) 2018 FUJITSU LIMITED. All rights reserved.
|
|
# $COPYRIGHT$
|
|
#
|
|
# Additional copyrights may follow
|
|
#
|
|
# $HEADER$
|
|
#
|
|
|
|
include $(top_srcdir)/Makefile.ompi-rules
|
|
|
|
# This Makefile is only relevant if we're building the ignore-TKR "use
|
|
# mpi" MPI bindings.
|
|
if OMPI_BUILD_FORTRAN_USEMPI_IGNORE_TKR_BINDINGS
|
|
|
|
AM_CPPFLAGS = -DOMPI_PROFILE_LAYER=0 -DOMPI_COMPILING_FORTRAN_WRAPPERS=1
|
|
|
|
AM_FCFLAGS = -I$(top_builddir)/ompi/include -I$(top_srcdir)/ompi/include \
|
|
-I$(top_builddir) -I$(top_srcdir) $(FCFLAGS_f90)
|
|
|
|
lib_LTLIBRARIES = lib@OMPI_LIBMPI_NAME@_usempi_ignore_tkr.la
|
|
|
|
mpi-ignore-tkr-interfaces.h: mpi-ignore-tkr-interfaces.h.in
|
|
mpi-ignore-tkr-file-interfaces.h: mpi-ignore-tkr-file-interfaces.h.in
|
|
|
|
mpi-ignore-tkr.lo: $(top_srcdir)/ompi/mpi/fortran/base/attr-fn-int-callback-interfaces.h
|
|
mpi-ignore-tkr.lo: $(top_srcdir)/ompi/mpi/fortran/base/conversion-fn-null-int-interface.h
|
|
mpi-ignore-tkr.lo: mpi-ignore-tkr-interfaces.h
|
|
mpi-ignore-tkr.lo: mpi-ignore-tkr-file-interfaces.h
|
|
mpi-ignore-tkr.lo: mpi-ignore-tkr-sizeof.h
|
|
mpi-ignore-tkr.lo: mpi-ignore-tkr-sizeof.f90
|
|
mpi-ignore-tkr.lo: mpi-ignore-tkr.F90
|
|
|
|
lib@OMPI_LIBMPI_NAME@_usempi_ignore_tkr_la_SOURCES = \
|
|
mpi-ignore-tkr.F90
|
|
nodist_lib@OMPI_LIBMPI_NAME@_usempi_ignore_tkr_la_SOURCES = \
|
|
mpi-ignore-tkr-interfaces.h \
|
|
mpi-ignore-tkr-file-interfaces.h
|
|
|
|
if BUILD_FORTRAN_SIZEOF
|
|
# These files are generated; do not distribute them
|
|
nodist_lib@OMPI_LIBMPI_NAME@_usempi_ignore_tkr_la_SOURCES += \
|
|
mpi-ignore-tkr-sizeof.h \
|
|
mpi-ignore-tkr-sizeof.f90
|
|
endif
|
|
|
|
# Note that we invoke some OPAL functions directly in
|
|
# libmpi_usempi_ignore_tkr.la, so we need to link in the OPAL library
|
|
# directly (pulling it in indirectly via libmpi.la does not work on
|
|
# all platforms).
|
|
lib@OMPI_LIBMPI_NAME@_usempi_ignore_tkr_la_LIBADD = \
|
|
$(OMPI_TOP_BUILDDIR)/opal/lib@OPAL_LIB_PREFIX@open-pal.la
|
|
lib@OMPI_LIBMPI_NAME@_usempi_ignore_tkr_la_LDFLAGS = \
|
|
-version-info $(libmpi_usempi_ignore_tkr_so_version) \
|
|
$(OMPI_FORTRAN_EXTRA_SHARED_LIBRARY_FLAGS)
|
|
|
|
#
|
|
# mpi-ignore-tkr-sizeof.* are generated based on some results from
|
|
# configure tests.
|
|
#
|
|
|
|
sizeof_pl=$(top_srcdir)/ompi/mpi/fortran/base/gen-mpi-sizeof.pl
|
|
|
|
mpi-ignore-tkr-sizeof.h: $(top_builddir)/config.status
|
|
mpi-ignore-tkr-sizeof.h: $(sizeof_pl)
|
|
mpi-ignore-tkr-sizeof.h:
|
|
$(OMPI_V_GEN) $(sizeof_pl) \
|
|
--header=$@ --ierror=mandatory \
|
|
--maxrank=$(OMPI_FORTRAN_MAX_ARRAY_RANK) \
|
|
--generate=$(OMPI_FORTRAN_BUILD_SIZEOF) \
|
|
--real2=$(OMPI_HAVE_FORTRAN_REAL2) \
|
|
--real16=$(OMPI_HAVE_FORTRAN_REAL16) \
|
|
--complex4=$(OMPI_HAVE_FORTRAN_COMPLEX4) \
|
|
--complex32=$(OMPI_HAVE_FORTRAN_COMPLEX32)
|
|
|
|
mpi-ignore-tkr-sizeof.f90: $(top_builddir)/config.status
|
|
mpi-ignore-tkr-sizeof.f90: $(sizeof_pl)
|
|
mpi-ignore-tkr-sizeof.f90:
|
|
$(OMPI_V_GEN) $(sizeof_pl) \
|
|
--impl=$@ --ierror=mandatory --mpi --pmpi \
|
|
--maxrank=$(OMPI_FORTRAN_MAX_ARRAY_RANK) \
|
|
--generate=$(OMPI_FORTRAN_BUILD_SIZEOF) \
|
|
--real2=$(OMPI_HAVE_FORTRAN_REAL2) \
|
|
--real16=$(OMPI_HAVE_FORTRAN_REAL16) \
|
|
--complex4=$(OMPI_HAVE_FORTRAN_COMPLEX4) \
|
|
--complex32=$(OMPI_HAVE_FORTRAN_COMPLEX32)
|
|
|
|
#
|
|
# Clean up generated and module files
|
|
#
|
|
|
|
CLEANFILES += mpi-ignore-tkr-sizeof.h mpi-ignore-tkr-sizeof.f90
|
|
MOSTLYCLEANFILES = *.mod
|
|
CLEANFILES += *.i90
|
|
|
|
# Install the generated .mod files. Unfortunately, each F90 compiler
|
|
# may generate different filenames, so we have to use a glob. :-(
|
|
|
|
install-exec-hook:
|
|
@ for file in `ls *.mod`; do \
|
|
echo $(INSTALL) $$file $(DESTDIR)$(libdir); \
|
|
$(INSTALL) $$file $(DESTDIR)$(libdir); \
|
|
done
|
|
|
|
uninstall-local:
|
|
@ for file in `ls *.mod`; do \
|
|
echo rm -f $(DESTDIR)$(libdir)/$$file; \
|
|
rm -f $(DESTDIR)$(libdir)/$$file; \
|
|
done
|
|
|
|
endif
|