1# Copyright (c) 2017-2019, Lawrence Livermore National Security, LLC and
2# other BLT Project Developers. See the top-level COPYRIGHT file for details
3#
4# SPDX-License-Identifier: (BSD-3-Clause)
5
6#------------------------------------
7# Git
8#------------------------------------
9if (ENABLE_GIT)
10    find_package(Git)
11    if (Git_FOUND)
12        message(STATUS "Git Support is ON")
13        set(GIT_FOUND TRUE)
14        message(STATUS "Git Executable: " ${GIT_EXECUTABLE} )
15        message(STATUS "Git Version: " ${GIT_VERSION_STRING} )
16    else()
17        message(STATUS "Git Support is OFF")
18    endif()
19else()
20    message(STATUS "Git Support is OFF")
21endif()
22
23
24#------------------------------------
25# MPI
26#------------------------------------
27message(STATUS "MPI Support is ${ENABLE_MPI}")
28if (ENABLE_MPI)
29    include(${BLT_ROOT_DIR}/cmake/thirdparty/SetupMPI.cmake)
30endif()
31
32
33#------------------------------------
34# OpenMP
35#------------------------------------
36message(STATUS "OpenMP Support is ${ENABLE_OPENMP}")
37if (ENABLE_OPENMP)
38    include(${BLT_ROOT_DIR}/cmake/thirdparty/SetupOpenMP.cmake)
39endif()
40
41
42#------------------------------------
43# CUDA
44#------------------------------------
45message(STATUS "CUDA Support is ${ENABLE_CUDA}")
46if (ENABLE_CUDA)
47  include(${BLT_ROOT_DIR}/cmake/thirdparty/SetupCUDA.cmake)
48endif()
49
50
51#------------------------------------
52# HIP
53#------------------------------------
54message(STATUS "HIP Support is ${ENABLE_HIP}")
55if (ENABLE_HIP)
56  include(${BLT_ROOT_DIR}/cmake/thirdparty/SetupHIP.cmake)
57endif()
58
59#------------------------------------
60# HCC
61#------------------------------------
62message(STATUS "HCC Support is ${ENABLE_HCC}")
63if (ENABLE_HCC)
64  include(${BLT_ROOT_DIR}/cmake/thirdparty/SetupHCC.cmake)
65endif()
66
67
68#------------------------------------
69# Documentation Packages
70#------------------------------------
71if (ENABLE_DOXYGEN)
72    find_package(Doxygen)
73endif()
74
75blt_find_executable(NAME        Sphinx
76                    EXECUTABLES sphinx-build sphinx-build2)
77
78
79#------------------------------------
80# Valgrind
81#------------------------------------
82blt_find_executable(NAME        Valgrind
83                    EXECUTABLES valgrind)
84
85
86#------------------------------------
87# linting
88#------------------------------------
89blt_find_executable(NAME        AStyle
90                    EXECUTABLES astyle)
91
92blt_find_executable(NAME        ClangFormat
93                    EXECUTABLES clang-format)
94
95blt_find_executable(NAME        Uncrustify
96                    EXECUTABLES uncrustify)
97
98
99#------------------------------------
100# Static analysis via Cppcheck
101#------------------------------------
102blt_find_executable(NAME        Cppcheck
103                    EXECUTABLES cppcheck)
104
105
106#------------------------------------
107# Static analysis via clang-query
108#------------------------------------
109if(CMAKE_GENERATOR STREQUAL "Unix Makefiles" OR CMAKE_GENERATOR STREQUAL "Ninja")
110    blt_find_executable(NAME        ClangQuery
111                        EXECUTABLES clang-query)
112endif()
113