|
| 1 | +# Copyright (c) 2023-present The Bitcoin Core developers |
| 2 | +# Distributed under the MIT software license, see the accompanying |
| 3 | +# file COPYING or https://opensource.org/license/mit/. |
| 4 | + |
| 5 | +# This file is expected to be highly volatile and may still change substantially. |
| 6 | + |
| 7 | +# If CMAKE_SYSTEM_NAME is set within a toolchain file, CMake will also |
| 8 | +# set CMAKE_CROSSCOMPILING to TRUE, even if CMAKE_SYSTEM_NAME matches |
| 9 | +# CMAKE_HOST_SYSTEM_NAME. To avoid potential misconfiguration of CMake, |
| 10 | +# it is best not to touch CMAKE_SYSTEM_NAME unless cross-compiling is |
| 11 | +# intended. |
| 12 | +if(@depends_crosscompiling@) |
| 13 | + set(CMAKE_SYSTEM_NAME @host_system_name@) |
| 14 | + set(CMAKE_SYSTEM_VERSION @host_system_version@) |
| 15 | + set(CMAKE_SYSTEM_PROCESSOR @host_arch@) |
| 16 | +endif() |
| 17 | + |
| 18 | +if(NOT DEFINED CMAKE_C_FLAGS_INIT) |
| 19 | + set(CMAKE_C_FLAGS_INIT "@CFLAGS@") |
| 20 | +endif() |
| 21 | +if(NOT DEFINED CMAKE_C_FLAGS_RELWITHDEBINFO_INIT) |
| 22 | + set(CMAKE_C_FLAGS_RELWITHDEBINFO_INIT "@CFLAGS_RELEASE@") |
| 23 | +endif() |
| 24 | +if(NOT DEFINED CMAKE_C_FLAGS_DEBUG_INIT) |
| 25 | + set(CMAKE_C_FLAGS_DEBUG_INIT "@CFLAGS_DEBUG@") |
| 26 | +endif() |
| 27 | + |
| 28 | +if(NOT DEFINED CMAKE_C_COMPILER) |
| 29 | + set(CMAKE_C_COMPILER @CC@) |
| 30 | +endif() |
| 31 | + |
| 32 | +if(NOT DEFINED CMAKE_CXX_FLAGS_INIT) |
| 33 | + set(CMAKE_CXX_FLAGS_INIT "@CXXFLAGS@") |
| 34 | + set(CMAKE_OBJCXX_FLAGS_INIT "@CXXFLAGS@") |
| 35 | +endif() |
| 36 | +if(NOT DEFINED CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT) |
| 37 | + set(CMAKE_CXX_FLAGS_RELWITHDEBINFO_INIT "@CXXFLAGS_RELEASE@") |
| 38 | + set(CMAKE_OBJCXX_FLAGS_RELWITHDEBINFO_INIT "@CXXFLAGS_RELEASE@") |
| 39 | +endif() |
| 40 | +if(NOT DEFINED CMAKE_CXX_FLAGS_DEBUG_INIT) |
| 41 | + set(CMAKE_CXX_FLAGS_DEBUG_INIT "@CXXFLAGS_DEBUG@") |
| 42 | + set(CMAKE_OBJCXX_FLAGS_DEBUG_INIT "@CXXFLAGS_DEBUG@") |
| 43 | +endif() |
| 44 | + |
| 45 | +if(NOT DEFINED CMAKE_CXX_COMPILER) |
| 46 | + set(CMAKE_CXX_COMPILER @CXX@) |
| 47 | + set(CMAKE_OBJCXX_COMPILER ${CMAKE_CXX_COMPILER}) |
| 48 | +endif() |
| 49 | + |
| 50 | +# The DEPENDS_COMPILE_DEFINITIONS* variables are to be treated as lists. |
| 51 | +set(DEPENDS_COMPILE_DEFINITIONS @CPPFLAGS@) |
| 52 | +set(DEPENDS_COMPILE_DEFINITIONS_RELWITHDEBINFO @CPPFLAGS_RELEASE@) |
| 53 | +set(DEPENDS_COMPILE_DEFINITIONS_DEBUG @CPPFLAGS_DEBUG@) |
| 54 | + |
| 55 | +if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_INIT) |
| 56 | + set(CMAKE_EXE_LINKER_FLAGS_INIT "@LDFLAGS@") |
| 57 | +endif() |
| 58 | +if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT) |
| 59 | + set(CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO_INIT "@LDFLAGS_RELEASE@") |
| 60 | +endif() |
| 61 | +if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT) |
| 62 | + set(CMAKE_EXE_LINKER_FLAGS_DEBUG_INIT "@LDFLAGS_DEBUG@") |
| 63 | +endif() |
| 64 | + |
| 65 | +set(CMAKE_AR "@AR@") |
| 66 | +set(CMAKE_RANLIB "@RANLIB@") |
| 67 | +set(CMAKE_STRIP "@STRIP@") |
| 68 | +set(CMAKE_OBJCOPY "@OBJCOPY@") |
| 69 | +set(CMAKE_OBJDUMP "@OBJDUMP@") |
| 70 | + |
| 71 | +# Using our own built dependencies should not be |
| 72 | +# affected by a potentially random environment. |
| 73 | +set(CMAKE_FIND_USE_CMAKE_ENVIRONMENT_PATH OFF) |
| 74 | + |
| 75 | +set(CMAKE_FIND_ROOT_PATH "@depends_prefix@") |
| 76 | +set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) |
| 77 | +set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) |
| 78 | +set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) |
| 79 | +set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) |
| 80 | +set(QT_TRANSLATIONS_DIR "@depends_prefix@/translations") |
| 81 | + |
| 82 | +if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT CMAKE_HOST_APPLE) |
| 83 | + # The find_package(Qt ...) function internally uses find_library() |
| 84 | + # calls for all dependencies to ensure their availability. |
| 85 | + # In turn, the find_library() inspects the well-known locations |
| 86 | + # on the file system; therefore, a hint is required. |
| 87 | + set(CMAKE_FRAMEWORK_PATH "@OSX_SDK@/System/Library/Frameworks") |
| 88 | +endif() |
| 89 | + |
| 90 | + |
| 91 | +# Customize pkg-config behaviour. |
| 92 | +cmake_path(APPEND CMAKE_FIND_ROOT_PATH "lib" "pkgconfig" OUTPUT_VARIABLE pkg_config_path) |
| 93 | +set(ENV{PKG_CONFIG_PATH} ${pkg_config_path}) |
| 94 | +set(ENV{PKG_CONFIG_LIBDIR} ${pkg_config_path}) |
| 95 | +unset(pkg_config_path) |
| 96 | +set(PKG_CONFIG_ARGN --static) |
| 97 | + |
| 98 | + |
| 99 | +# Set configuration options for the main build system. |
| 100 | +set(qt_packages @qt_packages@) |
| 101 | +if("${qt_packages}" STREQUAL "") |
| 102 | + set(BUILD_GUI OFF CACHE BOOL "") |
| 103 | +else() |
| 104 | + set(BUILD_GUI ON CACHE BOOL "") |
| 105 | +endif() |
| 106 | + |
| 107 | +set(qrencode_packages @qrencode_packages@) |
| 108 | +if("${qrencode_packages}" STREQUAL "") |
| 109 | + set(WITH_QRENCODE OFF CACHE BOOL "") |
| 110 | +else() |
| 111 | + set(WITH_QRENCODE ON CACHE BOOL "") |
| 112 | +endif() |
| 113 | + |
| 114 | +set(zmq_packages @zmq_packages@) |
| 115 | +if("${zmq_packages}" STREQUAL "") |
| 116 | + set(WITH_ZMQ OFF CACHE BOOL "") |
| 117 | +else() |
| 118 | + set(WITH_ZMQ ON CACHE BOOL "") |
| 119 | +endif() |
| 120 | + |
| 121 | +set(wallet_packages @wallet_packages@) |
| 122 | +if("${wallet_packages}" STREQUAL "") |
| 123 | + set(ENABLE_WALLET OFF CACHE BOOL "") |
| 124 | +else() |
| 125 | + set(ENABLE_WALLET ON CACHE BOOL "") |
| 126 | +endif() |
| 127 | + |
| 128 | +set(bdb_packages @bdb_packages@) |
| 129 | +if("${wallet_packages}" STREQUAL "" OR "${bdb_packages}" STREQUAL "") |
| 130 | + set(WITH_BDB OFF CACHE BOOL "") |
| 131 | +else() |
| 132 | + set(WITH_BDB ON CACHE BOOL "") |
| 133 | +endif() |
| 134 | + |
| 135 | +set(sqlite_packages @sqlite_packages@) |
| 136 | +if("${wallet_packages}" STREQUAL "" OR "${sqlite_packages}" STREQUAL "") |
| 137 | + set(WITH_SQLITE OFF CACHE BOOL "") |
| 138 | +else() |
| 139 | + set(WITH_SQLITE ON CACHE BOOL "") |
| 140 | +endif() |
| 141 | + |
| 142 | +set(upnp_packages @upnp_packages@) |
| 143 | +if("${upnp_packages}" STREQUAL "") |
| 144 | + set(WITH_MINIUPNPC OFF CACHE BOOL "") |
| 145 | +else() |
| 146 | + set(WITH_MINIUPNPC ON CACHE BOOL "") |
| 147 | +endif() |
| 148 | + |
| 149 | +set(natpmp_packages @natpmp_packages@) |
| 150 | +if("${natpmp_packages}" STREQUAL "") |
| 151 | + set(WITH_NATPMP OFF CACHE BOOL "") |
| 152 | +else() |
| 153 | + set(WITH_NATPMP ON CACHE BOOL "") |
| 154 | +endif() |
| 155 | + |
| 156 | +set(usdt_packages @usdt_packages@) |
| 157 | +if("${usdt_packages}" STREQUAL "") |
| 158 | + set(WITH_USDT OFF CACHE BOOL "") |
| 159 | +else() |
| 160 | + set(WITH_USDT ON CACHE BOOL "") |
| 161 | +endif() |
| 162 | + |
| 163 | +if("@no_harden@") |
| 164 | + set(ENABLE_HARDENING OFF CACHE BOOL "") |
| 165 | +else() |
| 166 | + set(ENABLE_HARDENING ON CACHE BOOL "") |
| 167 | +endif() |
| 168 | + |
| 169 | +if("@multiprocess@" STREQUAL "1") |
| 170 | + set(WITH_MULTIPROCESS ON CACHE BOOL "") |
| 171 | + set(LibmultiprocessNative_DIR "${CMAKE_FIND_ROOT_PATH}/native/lib/cmake/Libmultiprocess" CACHE PATH "") |
| 172 | +else() |
| 173 | + set(WITH_MULTIPROCESS OFF CACHE BOOL "") |
| 174 | +endif() |
0 commit comments