1 # Copyright (C) 2005, 2006 The Trustees of Indiana University.
2 # Copyright (C) 2005 Douglas Gregor <doug.gregor -at- gmail.com>
3 # Copyright (c) 2018 Stefan Seefeld
5 # Use, modification and distribution is subject to the Boost Software
6 # License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
7 # http://www.boost.org/LICENSE_1_0.txt)
9 # Authors: Douglas Gregor
19 # The `version-suffix` rule really belongs into python.jam, and
20 # should be moved there. `split-version` is only duplicated here
21 # as a prerequisite. (See https://github.com/boostorg/build/pull/290)
31 : source-location ../src
37 cartesian_communicator.cpp
44 graph_communicator.cpp
47 mpi_datatype_cache.cpp
48 mpi_datatype_oarchive.cpp
52 packed_skeleton_iarchive.cpp
53 packed_skeleton_oarchive.cpp
57 text_skeleton_oarchive.cpp
60 <library>../../serialization/build//boost_serialization
61 <library>/mpi//mpi [ mpi.extra-requirements ]
62 <define>BOOST_MPI_SOURCE=1
63 <link>shared:<define>BOOST_MPI_DYN_LINK=1
64 <local-visibility>global
67 : # Usage requirements
68 <library>../../serialization/build//boost_serialization
69 <library>/mpi//mpi [ mpi.extra-requirements ]
72 if [ python.configured ]
79 <library>/mpi//mpi [ mpi.extra-requirements ]
80 <library>/boost/python//boost_python
81 <link>shared:<define>BOOST_MPI_DYN_LINK=1
82 <link>shared:<define>BOOST_MPI_PYTHON_DYN_LINK=1
83 <link>shared:<define>BOOST_PYTHON_DYN_LINK=1
84 <define>BOOST_MPI_PYTHON_SOURCE=1
85 <python-debugging>on:<define>BOOST_DEBUG_PYTHON
86 -<tag>@$(BOOST_JAMROOT_MODULE)%$(BOOST_JAMROOT_MODULE).tag
88 <conditional>@python.require-py
89 <local-visibility>global
93 : # Usage requirements
94 <library>/mpi//mpi [ mpi.extra-requirements ]
99 python/collectives.cpp
100 python/py_communicator.cpp
102 python/documentation.cpp
103 python/py_environment.cpp
104 python/py_nonblocking.cpp
105 python/py_exception.cpp
107 python/py_request.cpp
108 python/skeleton_and_content.cpp
112 <library>/boost/python//boost_python
113 <library>boost_mpi_python
115 <library>/mpi//mpi [ mpi.extra-requirements ]
116 <link>shared:<define>BOOST_MPI_DYN_LINK=1
117 <link>shared:<define>BOOST_MPI_PYTHON_DYN_LINK=1
118 <link>shared:<define>BOOST_PYTHON_DYN_LINK=1
119 <link>shared <runtime-link>shared
120 <python-debugging>on:<define>BOOST_DEBUG_PYTHON
123 mpi_python_libs = boost_mpi_python mpi ;
126 else if ! ( --without-mpi in [ modules.peek : ARGV ] )
129 : "warning: skipping optional Message Passing Interface (MPI) library."
130 : "note: to enable MPI support, add \"using mpi ;\" to user-config.jam."
131 : "note: to suppress this message, pass \"--without-mpi\" to bjam."
132 : "note: otherwise, you can safely ignore this message."
140 boost-install boost_mpi $(mpi_python_libs) ;