-
Notifications
You must be signed in to change notification settings - Fork 73
/
IPCOptions.cmake.sample
67 lines (53 loc) · 3.66 KB
/
IPCOptions.cmake.sample
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
# In order to persistently set default options for your project, copy this file
# and remove the '.sample' suffix. Then uncomment the relevant options for your
# project. Note that this file is included before `project(IPC)` is defined,
# so we can use it to define the C and C++ compilers, but some variables such as
# PROJECT_SOURCE_DIR will not be defined yet. You can use CMAKE_SOURCE_DIR instead.
################################################################################
# CMake Options
################################################################################
# Specify a custom install prefix path
# set(CMAKE_INSTALL_PREFIX ${CMAKE_SOURCE_DIR}/install CACHE STRING "Install directory used by install().")
# Generates a `compile_commands.json` that can be used for autocompletion
# set(CMAKE_EXPORT_COMPILE_COMMANDS ON CACHE BOOL "Enable/Disable output of compile commands during generation.")
# Use ccache to speed up compilation of repeated builds
# find_program(CCACHE_PROGRAM ccache)
# if(CCACHE_PROGRAM)
# message(STATUS "Enabling Ccache support")
# set(CMAKE_C_COMPILER_LAUNCHER ${CCACHE_PROGRAM} CACHE STRING "")
# set(CMAKE_CXX_COMPILER_LAUNCHER ${CCACHE_PROGRAM} CACHE STRING "")
# endif()
# Use a specific C/C++ compiler, e.g. llvm-clang on macOS (so we can use clangd)
# set(CMAKE_C_COMPILER "/usr/local/opt/llvm/bin/clang" CACHE STRING "C compiler")
# set(CMAKE_CXX_COMPILER "/usr/local/opt/llvm/bin/clang++" CACHE STRING "C++ compiler")
# Set deployment platform for macOS
# set(CMAKE_OSX_DEPLOYMENT_TARGET 10.12 CACHE STRING "macOS deployment target")
# Always add colored output (e.g. when using Ninja)
# list(APPEND CMAKE_CXX_FLAGS -fdiagnostics-color=always) # GCC
# list(APPEND CMAKE_CXX_FLAGS -fcolor-diagnostics) # Clang
################################################################################
# IPC Options
################################################################################
# Project options
# option(IPC_WITH_OPENGL "Use libgil viewer for preview and output" ON)
# option(IPC_WITH_AMGCL "Enable AMGCL linear system solver (select with IPC_LINSYSSOLVER=\"AMGCL\")" ON)
# option(IPC_WITH_CHOLMOD "Enable CHOLMOD linear system solver (select with IPC_LINSYSSOLVER=\"CHOLMOD\")" ON)
# set(IPC_LINSYSSOLVER "CHOLMOD" CACHE STRING "Linear system solver to use (options: CHOLMOD, AMGCL, EIGEN)")
## SQP and QP options
# option(IPC_WITH_GUROBI "Enable Gurobi QP solver for SQP method" OFF)
# option(IPC_WITH_OSQP_MKL "Use MKL Pardiso linear solver in OSQP if available" ON)
# option(IPC_EXIT_UPON_QP_FAIL "Exit if the QP/SQP intersects or blows-up" OFF)
## CCD options
# option(IPC_WITH_EXACT_CCD "Use exact CCD as a verification" OFF)
# option(IPC_WITH_FPRP "Use exact floating-point CCD as a verification" OFF)
## Top level options
# option(IPC_WITH_TESTS "Build unit tests using Catch2" ${IPC_TOPLEVEL_PROJECT})
################################################################################
# CCD Options
################################################################################
# option(CCD_WRAPPER_WITH_FPRF "Enable floating-point root finder method" ON)
# option(CCD_WRAPPER_WITH_MSRF "Enable minimum separation root-finding method" OFF)
# option(CCD_WRAPPER_WITH_RRP "Enable rational root parity method" OFF)
# option(CCD_WRAPPER_WITH_TIGHT_CCD "Enable TightCCD method" OFF)
# option(CCD_WRAPPER_WITH_INTERVAL "Enable interval-based methods" OFF)
# option(CCD_WRAPPER_WITH_TIGHT_INCLUSION "Enable Tight Inclusion method" ON)