CMakeLists.txt 2.88 KB
Newer Older
Hamilton, Steven P's avatar
Hamilton, Steven P committed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
##---------------------------------------------------------------------------##
## Profugus/CMakeLists.txt
##---------------------------------------------------------------------------##
## Copyright (C) 2011 Oak Ridge National Laboratory, UT-Battelle, LLC.
##---------------------------------------------------------------------------##

##---------------------------------------------------------------------------##
# A) Define your project name and set up major project options
##---------------------------------------------------------------------------##

INCLUDE(${CMAKE_SOURCE_DIR}/ProjectName.cmake)

# CMake requires that you declare the CMake project in the top-level file and
# not in an include file :-(
PROJECT(${PROJECT_NAME} NONE)

# Add support for extra repositories; everything handled by native above
SET(${PROJECT_NAME}_SUPPORT_EXTRA_REPOS FALSE)

# Disable Tribits generating HTML dependencies webpage and xml files
SET(${PROJECT_NAME}_DEPS_XML_OUTPUT_FILE OFF CACHE BOOL "" )

# Disable Tribits export system to save time configuring
SET(${PROJECT_NAME}_ENABLE_INSTALL_CMAKE_CONFIG_FILES OFF CACHE BOOL "")

# Disable Tribits export makefiles system to save time configuring
SET(${PROJECT_NAME}_ENABLE_EXPORT_MAKEFILES OFF CACHE BOOL "")

##---------------------------------------------------------------------------##
# B) Pull in the TriBITS system and execute
##---------------------------------------------------------------------------##

# Just use the TriBITS system in Trilinos
SET(${PROJECT_NAME}_TRIBITS_DIR
  "${CMAKE_CURRENT_SOURCE_DIR}/TriBITS/tribits" CACHE PATH "" )
MESSAGE("${PROJECT_NAME}_TRIBITS_DIR = '${${PROJECT_NAME}_TRIBITS_DIR}'")
INCLUDE(${${PROJECT_NAME}_TRIBITS_DIR}/TriBITS.cmake)

# CMake requires this be in the top file and not in an include file :-(
CMAKE_MINIMUM_REQUIRED(VERSION ${TRIBITS_CMAKE_MINIMUM_REQUIRED})

# Default to building shared libraries if user hasn't specified.
#
# Note that if you define BUILD_SHARED_LIBS using a configure option file
# with -D PROFUGUS_PROJECT_CONFIGURE_FILE:PATH=config.cmake,
# then you'll have to use the FORCE keyword in that file because it gets read
# during TRIBITS_PROJECT().
#
#   SET(BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE)
#
# (Alternatively, use 'cmake -C config.cmake' to read in BUILD_SHARED_LIBS
# *before* this point.)
IF(NOT DEFINED BUILD_SHARED_LIBS)
  SET(BUILD_SHARED_LIBS_DEFAULT ON)
  IF(DEFINED BUILD_SHARED)
    SET(BUILD_SHARED_LIBS_DEFAULT ${BUILD_SHARED})
  ENDIF()
  SET(BUILD_SHARED_LIBS ${BUILD_SHARED_LIBS_DEFAULT}
    CACHE BOOL
    "Build shared libraries.")
  UNSET(BUILD_SHARED_LIBS_DEFAULT)
ENDIF()

# Do all of the processing for this Tribits project
TRIBITS_PROJECT()

# Add the final documentation
#add_subdirectory(doc)

##---------------------------------------------------------------------------##
## end of CMakeLists.txt
##---------------------------------------------------------------------------##