File: Makefile.am

package info (click to toggle)
openmpi 5.0.7-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 202,312 kB
  • sloc: ansic: 612,441; makefile: 42,495; sh: 11,230; javascript: 9,244; f90: 7,052; java: 6,404; perl: 5,154; python: 1,856; lex: 740; fortran: 61; cpp: 20; tcl: 12
file content (90 lines) | stat: -rw-r--r-- 3,119 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#
# Copyright (c) 2011-2012 Cisco Systems, Inc.  All rights reserved.
# Copyright (c) 2017-2018 Research Organization for Information Science
#                         and Technology (RIST). All rights reserved.
# Copyright (c) 2018      FUJITSU LIMITED.  All rights reserved.
# Copyright (c) 2018-2022 The University of Tennessee and The University
#                         of Tennessee Research Foundation.  All rights
#                         reserved.
# Copyright (c) 2022      IBM Corporation.  All rights reserved.
# $COPYRIGHT$
#
# Additional copyrights may follow
#
# $HEADER$
#

# Note that Automake's Fortran-buidling rules uses CPPFLAGS and
# AM_CPPFLAGS.  This can cause weirdness (e.g.,
# https://github.com/open-mpi/ompi/issues/7253 and
# https://github.com/open-mpi/ompi/issues/9716).  Let's just zero
# those out and rely on AM_FCFLAGS.
CPPFLAGS =
AM_CPPFLAGS =

# This file builds the use_mpi_f08-based bindings for MPI extensions.  It
# is optional in MPI extensions.

# We must set these #defines and include paths so that the inner OMPI
# MPI prototype header files do the Right Thing.
AM_FCFLAGS = $(OMPI_FC_MODULE_FLAG)$(top_builddir)/ompi/mpi/fortran/use-mpi \
             $(OMPI_FC_MODULE_FLAG)$(top_builddir)/ompi/mpi/fortran/use-mpi-f08/mod \
             -I$(top_builddir) -I$(top_srcdir) $(FCFLAGS_f90)

# Note that the mpi_f08-based bindings are optional -- they can only
# be built if OMPI is also building the Fortran-based bindings.  So we
# initially set some Makefile macros to empty, and then conditionally
# add to them later.
noinst_LTLIBRARIES =

# Use the Automake conditional to know if we're building the mpif.h
# bindings.
if OMPI_BUILD_FORTRAN_USEMPIF08_BINDINGS

# If we are, build the convenience libtool library that will be
# slurped up into libmpi_usempif08.la.
noinst_LTLIBRARIES += libmpiext_ftmpi_usempif08.la

# Note that no header files are installed; instead,
# mpiext_ftmpi_usempif08.h is automatically slurped up into the
# mpi_f08_ext module.  It must be listed so that it is included in
# dist tarballs.
noinst_HEADERS = mpiext_ftmpi_usempif08.h


# Sources for the convenience libtool library.
mpi_api_files = \
    comm_revoke_f08.F90 \
    comm_is_revoked_f08.F90 \
    comm_failure_ack_f08.F90 \
    comm_failure_get_acked_f08.F90 \
    comm_get_failed_f08.F90 \
    comm_ack_failed_f08.F90 \
    comm_agree_f08.F90 \
    comm_iagree_f08.F90 \
    comm_shrink_f08.F90

pmpi_api_files = \
    profile/pcomm_revoke_f08.F90 \
    profile/pcomm_is_revoked_f08.F90 \
    profile/pcomm_failure_ack_f08.F90 \
    profile/pcomm_failure_get_acked_f08.F90 \
    profile/pcomm_get_failed_f08.F90 \
    profile/pcomm_ack_failed_f08.F90 \
    profile/pcomm_agree_f08.F90 \
    profile/pcomm_iagree_f08.F90 \
    profile/pcomm_shrink_f08.F90

mpi_api_lo_files = $(mpi_api_files:.F90=.lo)
pmpi_api_lo_files = $(pmpi_api_files:.F90=.lo)

# Sources for the convenience libtool library.
libmpiext_ftmpi_usempif08_la_SOURCES = \
        $(mpi_api_files) \
        $(pmpi_api_files)

# Remove the intermediate module file
distclean-local:
	rm -f mpiext_ftmpi_f08.mod

endif