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.
 
 
 
 
 
 

133 lines
2.9 KiB

#
# A) Define the package
#
TRIBITS_PACKAGE(Zoltan)
#
# B) Set up package-specific options
#
TRIBITS_ADD_OPTION_AND_DEFINE( ${PACKAGE_NAME}_ENABLE_UINT_IDS
UNSIGNED_INT_GLOBAL_IDS
"typedef unsigned int ZOLTAN_ID_TYPE"
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE( ${PACKAGE_NAME}_ENABLE_ULONG_IDS
UNSIGNED_LONG_GLOBAL_IDS
"typedef unsigned long ZOLTAN_ID_TYPE"
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE( ${PACKAGE_NAME}_ENABLE_ULLONG_IDS
UNSIGNED_LONG_LONG_GLOBAL_IDS
"typedef unsigned long long ZOLTAN_ID_TYPE"
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_HUND
HAVE_ZOLTAN_HUND
"Enable support for HUND in ${PACKAGE_NAME}."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_KNUTH_HASH
HAVE_ZOLTAN_KNUTH_HASH
"Enable support for Knuth's hash function in ${PACKAGE_NAME}."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_F90INTERFACE
BUILD_ZOLTAN_F90_INTERFACE
"Enable build of F90 interface to ${PACKAGE_NAME}."
OFF )
TRIBITS_ADD_OPTION_AND_DEFINE(${PACKAGE_NAME}_ENABLE_PURIFY
HAVE_PURIFY
"Enable work-arounds to purify bugs."
OFF )
OPTION(${PACKAGE_NAME}_ENABLE_CPPDRIVER
"Enable C++ driver for ${PACKAGE_NAME}."
${${PROJECT_NAME}_ENABLE_CXX} )
IF (${PROJECT_NAME}_ENABLE_CXX)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DMPICH_IGNORE_CXX_SEEK")
ENDIF()
IF(${PROJECT_NAME}_ENABLE_Fortran AND BUILD_ZOLTAN_F90_INTERFACE)
# Special Fortran compiler-specific flags
IF (${CMAKE_Fortran_COMPILER_ID} MATCHES "PGI")
SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -DPGI")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DPGI")
ENDIF()
IF (${CMAKE_Fortran_COMPILER_ID} MATCHES "LAHEY")
SET(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -DFUJITSU")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -DFUJITSU")
ENDIF()
SET(ZOLTAN_BUILD_ZFDRIVE YES)
ENDIF()
#
# C) Add the libraries, tests, and examples
#
IF (NOT TPL_ENABLE_MPI)
ADD_SUBDIRECTORY(siMPI)
SET(ZOLTAN_BUILD_ZFDRIVE NO)
ENDIF()
ADD_SUBDIRECTORY(src)
#TRIBITS_ADD_TEST_DIRECTORIES(src/driver)
IF(ZOLTAN_BUILD_ZFDRIVE)
# CMAKE version > 2.6.4 is needed; earlier versions use C++ compiler to link
# fdriver, while fdriver needs F90.
TRIBITS_ADD_TEST_DIRECTORIES(src/fdriver)
ENDIF()
#TRIBITS_ADD_TEST_DIRECTORIES(test)
#TRIBITS_ADD_EXAMPLE_DIRECTORIES(example)
TRIBITS_EXCLUDE_FILES(
test/ch_brack2_3
test/ch_bug
test/ch_degenerate
test/ch_degenerateAA
test/ch_drake
test/ch_grid20x19
test/ch_hammond
test/ch_hammond2
test/ch_hughes
test/ch_nograph
test/ch_onedbug
test/ch_random
test/ch_serial
test/ch_slac
test/hg_cage10
test/hg_diag500_4
test/hg_ewgt
test/hg_felix
test/hg_ibm03
test/hg_ml27
test/hg_nograph
test/hg_vwgt
test/nem_ti_20k
test/nem_ti_4k
test/misc_siefert
test/th
test/bin
doc/Zoltan_html/tu_html
src/ZoltanComponent
src/driver_old
src/fdriver_old
)
#
# D) Do standard postprocessing
#
TRIBITS_PACKAGE_POSTPROCESS()