|
1 | | - |
2 | 1 | list(APPEND SourceFiles |
3 | 2 | types/basicTypes/bTypesFunctions.cpp |
4 | 3 | types/basicTypes/Logical.cpp |
@@ -119,44 +118,38 @@ set(link_libs) |
119 | 118 | set(link_libs Kokkos::kokkos tbb) |
120 | 119 |
|
121 | 120 |
|
122 | | - |
| 121 | +# for MPI parallelization |
123 | 122 | if(pFlow_Build_MPI) |
124 | 123 |
|
125 | | - set(Zoltan_Install_DIR) |
126 | | - if(DEFINED ENV{Zoltan_DIR}) |
127 | | - set(Zoltan_Install_DIR $ENV{Zoltan_DIR}) |
128 | | - else() |
129 | | - set(Zoltan_Install_DIR $ENV{HOME}/PhasicFlow/Zoltan) |
130 | | - endif() |
131 | | - message(STATUS "Zoltan install directory is ${Zoltan_Install_DIR}") |
132 | | - |
133 | | - set(ZOLTAN_PREFIX "${Zoltan_Install_DIR}" CACHE STRING "Zoltan install directory") |
134 | | - |
135 | | - find_path(ZOLTAN_INCLUDE_DIR zoltan.h PATHS "${ZOLTAN_PREFIX}/include") |
136 | | - |
137 | | - message(STATUS "Zoltan include path: ${ZOLTAN_INCLUDE_DIR}") |
138 | | - |
139 | | - find_library(ZOLTAN_LIBRARY zoltan PATHS "${ZOLTAN_PREFIX}/lib") |
140 | | - message(STATUS "Zoltan lib path: ${ZOLTAN_LIBRARY}") |
| 124 | + # Include the Zoltan installation check macro |
| 125 | + include(${CMAKE_SOURCE_DIR}/cmake/zoltanInstallCheck.cmake) |
| 126 | + |
| 127 | + # set the Zoltan Directory and check/build if needed |
| 128 | + set(Zoltan_Install_DIR ${CMAKE_SOURCE_DIR}/thirdParty/Zoltan) |
| 129 | + |
| 130 | + # Call the macro to find or build Zoltan |
| 131 | + zoltan_find_or_build(${Zoltan_Install_DIR}) |
141 | 132 |
|
142 | 133 | list(APPEND SourceFiles |
143 | | - MPIParallelization/domain/partitioning/partitioning.cpp |
144 | | - MPIParallelization/domain/partitioning/rcb1DPartitioning.cpp |
145 | | - MPIParallelization/domain/MPISimulationDomain.cpp |
146 | | - MPIParallelization/dataIOMPI/dataIOMPIs.cpp |
147 | | - MPIParallelization/MPI/procCommunication.cpp |
148 | | - MPIParallelization/MPI/scatteredMasterDistributeChar.cpp |
149 | | - MPIParallelization/pointStructure/boundaries/boundaryProcessor.cpp |
150 | | - MPIParallelization/pointField/processorBoundaryFields.cpp |
| 134 | + MPIParallelization/domain/partitioning/partitioning.cpp |
| 135 | + MPIParallelization/domain/partitioning/rcb1DPartitioning.cpp |
| 136 | + MPIParallelization/domain/MPISimulationDomain.cpp |
| 137 | + MPIParallelization/dataIOMPI/dataIOMPIs.cpp |
| 138 | + MPIParallelization/MPI/procCommunication.cpp |
| 139 | + MPIParallelization/MPI/scatteredMasterDistributeChar.cpp |
| 140 | + MPIParallelization/pointStructure/boundaries/boundaryProcessor.cpp |
| 141 | + MPIParallelization/pointField/processorBoundaryFields.cpp |
151 | 142 | ) |
152 | 143 |
|
153 | 144 | list(APPEND link_libs MPI::MPI_CXX ${ZOLTAN_LIBRARY} -lm ) |
154 | 145 | pFlow_add_library_install(phasicFlow SourceFiles link_libs) |
155 | 146 | target_include_directories(phasicFlow PUBLIC ./globals ${ZOLTAN_INCLUDE_DIR}) |
156 | 147 |
|
157 | 148 | else() |
158 | | - pFlow_add_library_install(phasicFlow SourceFiles link_libs) |
| 149 | + |
| 150 | +pFlow_add_library_install(phasicFlow SourceFiles link_libs) |
159 | 151 | target_include_directories(phasicFlow PUBLIC ./globals) |
| 152 | + |
160 | 153 | endif() |
161 | 154 |
|
162 | 155 |
|
0 commit comments