@@ -241,6 +241,25 @@ endif()
241241# Join list
242242list (JOIN PDAF_CPP_DEFS " " PDAF_CPP_DEFS)
243243
244+ # Set PDAF_MODULEOPT for Makefile header
245+ # ----------------------------------
246+ # Modules flag dependent on compiler
247+ if (CMAKE_CXX_COMPILER_ID STREQUAL "Intel"
248+ OR CMAKE_CXX_COMPILER_ID STREQUAL "IntelLLVM" )
249+
250+ list (APPEND PDAF_MODULEOPT "-module" )
251+
252+ elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU" )
253+
254+ list (APPEND PDAF_MODULEOPT "-J" )
255+
256+ else ()
257+ message (FATAL_ERROR "Unsupported CMAKE_CXX_COMPILER_ID: ${CMAKE_CXX_COMPILER_ID} " )
258+ endif ()
259+
260+ # Join list
261+ list (JOIN PDAF_MODULEOPT " " PDAF_MODULEOPT)
262+
244263# Set env vars required by PDAF Makefiles
245264# ---------------------------------------
246265list (APPEND PDAF_ENV_VARS PDAF_ARCH=${PDAF_ARCH} )
@@ -252,6 +271,7 @@ list(APPEND PDAF_ENV_VARS TSMPPDAFCOPT=${PDAF_COPT})
252271list (APPEND PDAF_ENV_VARS TSMPPDAFDOUBLEPRECISION=${PDAF_DOUBLEPRECISION} )
253272list (APPEND PDAF_ENV_VARS TSMPPDAFMPI_INC=${PDAF_MPI_INC} )
254273list (APPEND PDAF_ENV_VARS TSMPPDAFCPP_DEFS=${PDAF_CPP_DEFS} )
274+ list (APPEND PDAF_ENV_VARS TSMPPDAFMODULEOPT=${PDAF_MODULEOPT} )
255275
256276list (JOIN PDAF_ENV_VARS " " PDAF_ENV_VARS_STR)
257277# message(STATUS "${PDAF_ENV_VARS_STR}")
@@ -262,10 +282,10 @@ list(JOIN PDAF_ENV_VARS " " PDAF_ENV_VARS_STR)
262282# make pdaf
263283ExternalProject_Add (PDAF
264284 PREFIX PDAF
265- SOURCE_DIR ${PDAF_SRC} /src
285+ SOURCE_DIR ${PDAF_SRC}
266286 BUILD_IN_SOURCE TRUE
267287 CONFIGURE_COMMAND ""
268- BUILD_COMMAND make ${PDAF_ENV_VARS} clean ../lib/ libpdaf-d.a
288+ BUILD_COMMAND make ${PDAF_ENV_VARS} clean directories libpdaf
269289 INSTALL_COMMAND ""
270290 DEPENDS ${PDAF_DEPENDENCIES}
271291)
0 commit comments