diff --git a/cmake/BuildPDAF.cmake b/cmake/BuildPDAF.cmake index 50dc58a..5db30cd 100644 --- a/cmake/BuildPDAF.cmake +++ b/cmake/BuildPDAF.cmake @@ -241,6 +241,25 @@ endif() # Join list list(JOIN PDAF_CPP_DEFS " " PDAF_CPP_DEFS) +# Set PDAF_MODULEOPT for Makefile header +# ---------------------------------- +# Modules flag dependent on compiler +if (CMAKE_CXX_COMPILER_ID STREQUAL "Intel" + OR CMAKE_CXX_COMPILER_ID STREQUAL "IntelLLVM") + + list(APPEND PDAF_MODULEOPT "-module") + +elseif (CMAKE_CXX_COMPILER_ID STREQUAL "GNU") + + list(APPEND PDAF_MODULEOPT "-J") + +else() + message(FATAL_ERROR "Unsupported CMAKE_CXX_COMPILER_ID: ${CMAKE_CXX_COMPILER_ID}") +endif() + +# Join list +list(JOIN PDAF_MODULEOPT " " PDAF_MODULEOPT) + # Set env vars required by PDAF Makefiles # --------------------------------------- list(APPEND PDAF_ENV_VARS PDAF_ARCH=${PDAF_ARCH}) @@ -252,6 +271,7 @@ list(APPEND PDAF_ENV_VARS TSMPPDAFCOPT=${PDAF_COPT}) list(APPEND PDAF_ENV_VARS TSMPPDAFDOUBLEPRECISION=${PDAF_DOUBLEPRECISION}) list(APPEND PDAF_ENV_VARS TSMPPDAFMPI_INC=${PDAF_MPI_INC}) list(APPEND PDAF_ENV_VARS TSMPPDAFCPP_DEFS=${PDAF_CPP_DEFS}) +list(APPEND PDAF_ENV_VARS TSMPPDAFMODULEOPT=${PDAF_MODULEOPT}) list(JOIN PDAF_ENV_VARS " " PDAF_ENV_VARS_STR) # message(STATUS "${PDAF_ENV_VARS_STR}") @@ -262,10 +282,10 @@ list(JOIN PDAF_ENV_VARS " " PDAF_ENV_VARS_STR) # make pdaf ExternalProject_Add(PDAF PREFIX PDAF - SOURCE_DIR ${PDAF_SRC}/src + SOURCE_DIR ${PDAF_SRC} BUILD_IN_SOURCE TRUE CONFIGURE_COMMAND "" - BUILD_COMMAND make ${PDAF_ENV_VARS} clean ../lib/libpdaf-d.a + BUILD_COMMAND make ${PDAF_ENV_VARS} clean directories libpdaf INSTALL_COMMAND "" DEPENDS ${PDAF_DEPENDENCIES} ) diff --git a/cmake/BuildPDAFFRAMEWORK.cmake b/cmake/BuildPDAFFRAMEWORK.cmake index 8b530b4..81652f8 100644 --- a/cmake/BuildPDAFFRAMEWORK.cmake +++ b/cmake/BuildPDAFFRAMEWORK.cmake @@ -19,6 +19,7 @@ list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFCOPT=${PDAF_COPT}) list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFDOUBLEPRECISION=${PDAF_DOUBLEPRECISION}) list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFMPI_INC=${PDAF_MPI_INC}) list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFCPP_DEFS=${PDAF_CPP_DEFS}) +list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFMODULEOPT=${PDAF_MODULEOPT}) list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFIMPORTFLAGS=${PDAF_INCLUDES}) list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFCPPDEFS=${PDAF_DEFS}) list(APPEND PDAFFRAMEWORK_ENV_VARS TSMPPDAFLIBS=${PDAF_LIBS}) diff --git a/cmake/BuildPDAFMODEL.cmake b/cmake/BuildPDAFMODEL.cmake index 211d029..f812265 100644 --- a/cmake/BuildPDAFMODEL.cmake +++ b/cmake/BuildPDAFMODEL.cmake @@ -164,6 +164,7 @@ list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFCOPT=${PDAF_COPT}) list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFDOUBLEPRECISION=${PDAF_DOUBLEPRECISION}) list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFMPI_INC=${PDAF_MPI_INC}) list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFCPP_DEFS=${PDAF_CPP_DEFS}) +list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFMODULEOPT=${PDAF_MODULEOPT}) list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFIMPORTFLAGS=${PDAF_INCLUDES}) list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFCPPDEFS=${PDAF_DEFS}) list(APPEND PDAFMODEL_ENV_VARS TSMPPDAFLIBS=${PDAF_LIBS}) diff --git a/models/pdaf b/models/pdaf index 346e8cf..a9fdb46 160000 --- a/models/pdaf +++ b/models/pdaf @@ -1 +1 @@ -Subproject commit 346e8cfd0a7e7987a6cafe06dfab80cfc34d43a2 +Subproject commit a9fdb46b422f7c8989af05943d997985fa581e91