# # Copyright (c) 2004-2009 The Trustees of Indiana University and Indiana # University Research and Technology # Corporation. All rights reserved. # Copyright (c) 2004-2005 The University of Tennessee and The University # of Tennessee Research Foundation. All rights # reserved. # Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, # University of Stuttgart. All rights reserved. # Copyright (c) 2004-2005 The Regents of the University of California. # All rights reserved. # Copyright (c) 2006-2015 Cisco Systems, Inc. All rights reserved. # Copyright (c) 2009-2011 Oak Ridge National Labs. All rights reserved. # Copyright (c) 2014-2021 Research Organization for Information Science # and Technology (RIST). All rights reserved. # Copyright (c) 2018 FUJITSU LIMITED. All rights reserved. # Copyright (c) 2022 IBM Corporation. All rights reserved. # $COPYRIGHT$ # # Additional copyrights may follow # # $HEADER$ # include $(top_srcdir)/Makefile.ompi-rules # Note - headers and nodist_headers will go in ${includedir}/openmpi, # not ${includedir}/ headers = ompi_config.h nodist_headers = # Install these in $(includedir) include_HEADERS = # Always install these in $(pkgincludedir) pkginclude_HEADERS = if OMPI_BUILD_FORTRAN_MPIFH_BINDINGS include_HEADERS += \ mpif-constants.h \ mpif-externals.h \ mpif-handles.h \ mpif-io-constants.h \ mpif-io-handles.h \ mpif-sentinels.h endif # These files are always installed in $(includedir), but shouldn't be # shipped since they are generated by configure from their .in # counterparts (which AM automatically ships). nodist_include_HEADERS = \ mpi.h \ mpi-ext.h \ mpif.h \ mpif-ext.h \ mpif-sizeof.h \ mpif-c-constants-decl.h \ mpi_portable_platform.h if OMPI_BUILD_FORTRAN_MPIFH_BINDINGS nodist_include_HEADERS += \ mpif-config.h endif include ompi/Makefile.am # This is complicated, but mpif-values.pl generates several # mpif-*.h files in this directory (during autogen.pl). # Hence, if any of those files change, it's safer to just force the # user to re-autogen. #mpif.h: mpif-constants.h mpif-handles.h mpif-io-constants.h mpif-io-handles.h # @ echo "ERROR: an mpi-*.h header file has changed" # @ echo "ERROR: you must re-run autogen.pl (sorry!)" # @ exit 1 EXTRA_DIST = $(headers) mpif-values.pl # # mpif-sizeof.h is generated based on some results from configure tests. # sizeof_pl=$(top_srcdir)/ompi/mpi/fortran/base/gen-mpi-sizeof.pl mpif-sizeof.h: $(top_builddir)/config.status mpif-sizeof.h: $(sizeof_pl) mpif-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) \ --iso_real16=$(OMPI_FORTRAN_HAVE_ISO_FORTRAN_ENV_REAL16) \ --real16=$(OMPI_HAVE_FORTRAN_REAL16) \ --complex4=$(OMPI_HAVE_FORTRAN_COMPLEX4) \ --complex32=$(OMPI_HAVE_FORTRAN_COMPLEX32) \ --mpi_version=$(MPI_VERSION) \ --request_deprecate=$(OMPI_FORTRAN_HAVE_ATTR_DEPRECATED) # # mpif-c-constants-decl.h, among other files, is generated based on some # results from configure tests. # mpif_mangling_pl=$(top_srcdir)/ompi/mpi/fortran/base/gen-mpi-mangling.pl mpif-c-constants-decl.h: $(top_builddir)/config.status mpif-c-constants-decl.h: $(mpif_mangling_pl) mpif-c-constants-decl.h: $(OMPI_V_GEN) $(mpif_mangling_pl) \ --caps $(OMPI_FORTRAN_CAPS) \ --plain $(OMPI_FORTRAN_PLAIN) \ --single $(OMPI_FORTRAN_SINGLE_UNDERSCORE) \ --double $(OMPI_FORTRAN_DOUBLE_UNDERSCORE) if WANT_INSTALL_HEADERS ompidir = $(ompiincludedir) nobase_dist_ompi_HEADERS = $(headers) nobase_nodist_ompi_HEADERS = $(nodist_headers) endif # # Clean up the generated file # CLEANFILES = mpif-sizeof.f90 # Remove the auto-generated files (they are generated by configure) # Since there is no mpi-ext.h.in, autogen does not know to cleanup this file. distclean-local: rm -f mpi-ext.h mpif-ext.h mpi_portable_platform.h \ mpif-sizeof.h \ mpif-c-constants-decl.h mpif-c-constants.h mpif-f08-types.h mpi_portable_platform.h: $(top_srcdir)/opal/include/opal/opal_portable_platform_real.h -@rm -f mpi_portable_platform.h $(OMPI_V_LN_S) $(LN_S) $(top_srcdir)/opal/include/opal/opal_portable_platform_real.h mpi_portable_platform.h