Changeset View
Changeset View
Standalone View
Standalone View
src/CMakeLists.txt
Show All 16 Lines | |||||
option(BUILD_LIBBITCOINCONSENSUS "Build the bitcoinconsenus shared library" ON) | option(BUILD_LIBBITCOINCONSENSUS "Build the bitcoinconsenus shared library" ON) | ||||
option(ENABLE_BIP70 "Enable BIP70 (payment protocol) support in GUI" ON) | option(ENABLE_BIP70 "Enable BIP70 (payment protocol) support in GUI" ON) | ||||
option(ENABLE_HARDENING "Harden the executables" ON) | option(ENABLE_HARDENING "Harden the executables" ON) | ||||
option(ENABLE_REDUCE_EXPORTS "Reduce the amount of exported symbols" OFF) | option(ENABLE_REDUCE_EXPORTS "Reduce the amount of exported symbols" OFF) | ||||
option(ENABLE_STATIC_LIBSTDCXX "Statically link libstdc++" OFF) | option(ENABLE_STATIC_LIBSTDCXX "Statically link libstdc++" OFF) | ||||
option(ENABLE_GLIBC_BACK_COMPAT "Enable Glibc compatibility features" OFF) | option(ENABLE_GLIBC_BACK_COMPAT "Enable Glibc compatibility features" OFF) | ||||
option(ENABLE_QRCODE "Enable QR code display" ON) | option(ENABLE_QRCODE "Enable QR code display" ON) | ||||
option(ENABLE_UPNP "Enable UPnP support" ON) | option(ENABLE_UPNP "Enable UPnP support" ON) | ||||
option(ENABLE_WERROR "Promote some compiler warnings to errors" OFF) | |||||
option(START_WITH_UPNP "Make UPnP the default to map ports" OFF) | option(START_WITH_UPNP "Make UPnP the default to map ports" OFF) | ||||
option(ENABLE_CLANG_TIDY "Enable clang-tidy checks for Bitcoin ABC" OFF) | option(ENABLE_CLANG_TIDY "Enable clang-tidy checks for Bitcoin ABC" OFF) | ||||
option(ENABLE_PROFILING "Select the profiling tool to use" OFF) | option(ENABLE_PROFILING "Select the profiling tool to use" OFF) | ||||
option(USE_LD_GOLD "Try to use gold as a linker if available" ON) | option(USE_LD_GOLD "Try to use gold as a linker if available" ON) | ||||
option(USE_JEMALLOC_EXPERIMENTAL "Use jemalloc as an allocation library (experimental)" OFF) | option(USE_JEMALLOC_EXPERIMENTAL "Use jemalloc as an allocation library (experimental)" OFF) | ||||
if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") | if(${CMAKE_SYSTEM_NAME} MATCHES "Linux") | ||||
set(DEFAULT_ENABLE_DBUS_NOTIFICATIONS ON) | set(DEFAULT_ENABLE_DBUS_NOTIFICATIONS ON) | ||||
▲ Show 20 Lines • Show All 169 Lines • ▼ Show 20 Lines | |||||
option(EXTRA_WARNINGS "Enable extra warnings" OFF) | option(EXTRA_WARNINGS "Enable extra warnings" OFF) | ||||
if(EXTRA_WARNINGS) | if(EXTRA_WARNINGS) | ||||
add_cxx_compiler_flags(-Wsuggest-override) | add_cxx_compiler_flags(-Wsuggest-override) | ||||
else() | else() | ||||
add_compiler_flags(-Wno-unused-parameter) | add_compiler_flags(-Wno-unused-parameter) | ||||
add_compiler_flags(-Wno-implicit-fallthrough) | add_compiler_flags(-Wno-implicit-fallthrough) | ||||
endif() | endif() | ||||
if(ENABLE_WERROR) | |||||
add_compiler_flags( | |||||
-Werror=return-type | |||||
-Werror=switch | |||||
-Werror=thread-safety-analysis | |||||
-Werror=vla | |||||
) | |||||
endif() | |||||
# libtool style configure | # libtool style configure | ||||
add_subdirectory(config) | add_subdirectory(config) | ||||
# Enable LFS (Large File Support) on targets that don't have it natively. | # Enable LFS (Large File Support) on targets that don't have it natively. | ||||
# This should be defined before the libraries are included as leveldb need the | # This should be defined before the libraries are included as leveldb need the | ||||
# definition to be set. | # definition to be set. | ||||
if(NOT HAVE_LARGE_FILE_SUPPORT) | if(NOT HAVE_LARGE_FILE_SUPPORT) | ||||
add_compile_definitions(_FILE_OFFSET_BITS=64) | add_compile_definitions(_FILE_OFFSET_BITS=64) | ||||
▲ Show 20 Lines • Show All 437 Lines • Show Last 20 Lines |