Cloned SEACAS for EXODUS library with extra build files for internal package management.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.6 KiB

2 years ago
# This will build one or two versions of epu.
# In a MPI-enabled build, it will build 'epu' which is a serial application and 'pepu' which is a parallel-enabled epu
# In a serial, non-MPI-enabled build, it will only build 'epu'.
# On some platforms, both applications may perform the same if run in serial; however, some platforms require
# parallel applications to be run on a compute-partition. We used to just build a parallel-enabled epu
# when MPI was enabled, but this caused issues for users on those platforms which would not allow a
# parallel application to be run on a non-compute partition, so now we build two versions...
TRIBITS_SUBPACKAGE(Epu)
TRIBITS_INCLUDE_DIRECTORIES(
"${CMAKE_CURRENT_SOURCE_DIR}"
)
SET(HEADERS "")
APPEND_GLOB(SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/EP_ExodusFile.C
${CMAKE_CURRENT_SOURCE_DIR}/EP_Internals.C
${CMAKE_CURRENT_SOURCE_DIR}/EP_ParallelDisks.C
${CMAKE_CURRENT_SOURCE_DIR}/EP_SystemInterface.C)
#disabling on PGI due to an odd compiler issue with the compiler generated assembly.
#this error only seems to manifest on pgi 11.1, however, the version of the compiler
#is not given for pgi compilers unfortunately so we can't be more specific
IF(NOT __LINUX_COMPILER_PGI)
TRIBITS_ADD_EXECUTABLE(
epu
NOEXEPREFIX
NOEXESUFFIX
SOURCES ${SOURCES} ${CMAKE_CURRENT_SOURCE_DIR}/epu.C
INSTALLABLE
)
IF (TPL_ENABLE_MPI)
TRIBITS_ADD_EXECUTABLE(
pepu
NOEXEPREFIX
NOEXESUFFIX
SOURCES ${SOURCES} ${CMAKE_CURRENT_SOURCE_DIR}/pepu.C
COMM mpi
INSTALLABLE
)
target_compile_definitions(pepu PUBLIC SEACAS_HAVE_MPI)
ENDIF()
ENDIF()
TRIBITS_SUBPACKAGE_POSTPROCESS()