Skip to content

Commit e5d5ef7

Browse files
committed
CMake: integrate chiabls subtree CMake targets
1 parent 50318c6 commit e5d5ef7

File tree

4 files changed

+25
-10
lines changed

4 files changed

+25
-10
lines changed

CMakeLists.txt

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 3.10)
1+
cmake_minimum_required(VERSION 3.14)
22

33
# Search for and use ccache if available to speed up build times
44
find_program(CCACHE_PROGRAM ccache)
@@ -148,6 +148,9 @@ set(LEVELDB_BUILD_BENCHMARKS OFF CACHE BOOL "Build LevelDB's benchmarks" FORCE)
148148
set(LEVELDB_INSTALL OFF CACHE BOOL "Install LevelDB's header and library" FORCE)
149149
add_subdirectory(${CMAKE_SOURCE_DIR}/src/leveldb)
150150

151+
add_subdirectory(${CMAKE_SOURCE_DIR}/src/chiabls)
152+
FetchContent_GetProperties(relic)
153+
151154
file(GLOB HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/src/*.h)
152155
file(GLOB CRYPTO_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/src/crypto/*.h)
153156
file(GLOB PRIMITIVE_HEADERS ${CMAKE_CURRENT_SOURCE_DIR}/src/primitives/*.h)
@@ -238,6 +241,9 @@ target_include_directories(SERVER_A PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src
238241
${CMAKE_CURRENT_SOURCE_DIR}/src/leveldb/include
239242
${CMAKE_CURRENT_SOURCE_DIR}/src/leveldb/helpers/memenv
240243
${CMAKE_CURRENT_SOURCE_DIR}/src/rust/include
244+
${CMAKE_CURRENT_SOURCE_DIR}/src/chiabls/src
245+
${relic_SOURCE_DIR}/include
246+
${relic_BINARY_DIR}/include
241247
${ZMQ_INCLUDE_DIR} ${LIBEVENT_INCLUDE_DIR} ${BerkeleyDB_INCLUDE_DIRS}
242248
)
243249

@@ -400,6 +406,9 @@ target_include_directories(COMMON_A PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src
400406
${CMAKE_CURRENT_SOURCE_DIR}/src/secp256k1/include
401407
${CMAKE_CURRENT_SOURCE_DIR}/src/leveldb/include
402408
${CMAKE_CURRENT_SOURCE_DIR}/src/univalue/include
409+
${CMAKE_CURRENT_SOURCE_DIR}/src/chiabls/src
410+
${relic_SOURCE_DIR}/include
411+
${relic_BINARY_DIR}/include
403412
${BerkeleyDB_INCLUDE_DIRS}
404413
)
405414

@@ -478,14 +487,15 @@ if($ENV{target} MATCHES "Windows")
478487
list(APPEND pivx-cli_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/pivx-cli-res.rc)
479488
endif()
480489
add_executable(pivx-cli ${pivx-cli_SOURCES})
481-
add_dependencies(pivx-cli libunivalue libzcashrust)
490+
add_dependencies(pivx-cli libunivalue libzcashrust bls)
482491
target_link_libraries(pivx-cli
483492
CLI_A
484493
univalue
485494
UTIL_A
486495
BITCOIN_CRYPTO_A
487496
SAPLING_A
488497
rustzcash
498+
bls
489499
${Boost_LIBRARIES} ${LIBEVENT_LIB} ${sodium_LIBRARY_RELEASE} -ldl pthread
490500
)
491501
if($ENV{target} MATCHES "Windows")
@@ -500,14 +510,15 @@ if($ENV{target} MATCHES "Windows")
500510
list(APPEND pivx-tx_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/pivx-tx-res.rc)
501511
endif()
502512
add_executable(pivx-tx ${pivx-tx_SOURCES})
503-
add_dependencies(pivx-tx libunivalue libsecp256k1 libzcashrust)
513+
add_dependencies(pivx-tx libunivalue libsecp256k1 libzcashrust bls)
504514
target_link_libraries(pivx-tx
505515
univalue
506516
COMMON_A
507517
ZEROCOIN_A
508518
UTIL_A
509519
BITCOIN_CRYPTO_A
510520
secp256k1
521+
bls
511522
SAPLING_A
512523
rustzcash
513524
${Boost_LIBRARIES} ${LIBEVENT_LIB} ${sodium_LIBRARY_RELEASE} ${GMP_LIBRARY} -ldl pthread
@@ -524,7 +535,7 @@ if($ENV{target} MATCHES "Windows")
524535
list(APPEND pivxd_SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/src/pivxd-res.rc)
525536
endif()
526537
add_executable(pivxd ${pivxd_SOURCES} ${BitcoinHeaders})
527-
add_dependencies(pivxd libunivalue libsecp256k1 libzcashrust leveldb crc32c)
538+
add_dependencies(pivxd libunivalue libsecp256k1 libzcashrust leveldb crc32c bls)
528539
target_include_directories(pivxd PUBLIC ${CMAKE_CURRENT_SOURCE_DIR}/src
529540
${CMAKE_CURRENT_SOURCE_DIR}/src/leveldb
530541
${CMAKE_CURRENT_SOURCE_DIR}/src/leveldb/include
@@ -544,6 +555,7 @@ target_link_libraries(pivxd
544555
leveldb
545556
crc32c
546557
secp256k1
558+
bls
547559
rustzcash
548560
${BerkeleyDB_LIBRARIES} ${Boost_LIBRARIES} ${LIBEVENT_LIB} ${GMP_LIBRARY} pthread
549561
)

contrib/cmake/FindSodium.cmake

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -254,7 +254,9 @@ if(sodium_USE_STATIC_LIBS)
254254
else()
255255
set(_LIB_TYPE SHARED)
256256
endif()
257-
add_library(sodium ${_LIB_TYPE} IMPORTED)
257+
if(NOT TARGET sodium)
258+
add_library(sodium ${_LIB_TYPE} IMPORTED)
259+
endif()
258260

259261
set_target_properties(sodium PROPERTIES
260262
INTERFACE_INCLUDE_DIRECTORIES "${sodium_INCLUDE_DIR}"

src/qt/CMakeLists.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
1+
CMAKE_MINIMUM_REQUIRED(VERSION 3.14)
22

33
set(QT_MINIMUM_VERSION 5.5.1)
44
set(CMAKE_INCLUDE_CURRENT_DIR ON)
@@ -196,13 +196,13 @@ QT5_ADD_RESOURCES(QRC_RESOURCE pivx.qrc)
196196
QT5_ADD_RESOURCES(QRC_LOCALE_RESOURCE pivx_locale.qrc)
197197

198198
add_executable(pivx-qt pivx.cpp ${QM} ${QRC_RESOURCE} ${QRC_LOCALE_RESOURCE})
199-
add_dependencies(pivx-qt translations_target libunivalue libsecp256k1 libzcashrust leveldb crc32c)
199+
add_dependencies(pivx-qt translations_target libunivalue libsecp256k1 libzcashrust leveldb crc32c bls)
200200
target_include_directories(pivx-qt PUBLIC ${ENDIAN_INCLUDES} ${GMP_INCLUDE_DIR})
201201
target_link_libraries(pivx-qt
202202
qt_stuff
203203
univalue
204204
SERVER_A WALLET_A COMMON_A ZEROCOIN_A UTIL_A SAPLING_A BITCOIN_CRYPTO_A CLI_A
205-
leveldb crc32c secp256k1 rustzcash
205+
leveldb crc32c secp256k1 rustzcash bls
206206
${BerkeleyDB_LIBRARIES} ${Boost_LIBRARIES} ${LIBEVENT_LIB}
207207
${sodium_LIBRARY_RELEASE} ${GMP_LIBRARY}
208208
-ldl pthread

src/test/CMakeLists.txt

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
CMAKE_MINIMUM_REQUIRED(VERSION 3.10)
1+
CMAKE_MINIMUM_REQUIRED(VERSION 3.14)
22
set(CMAKE_INCLUDE_CURRENT_DIR ON)
33

44
set(Boost_USE_STATIC_LIBS ON)
@@ -148,7 +148,7 @@ set(BITCOIN_TESTS
148148

149149
set(test_test_pivx_SOURCES ${BITCOIN_TEST_SUITE} ${BITCOIN_TESTS} ${JSON_TEST_FILES})
150150
add_executable(test_pivx ${test_test_pivx_SOURCES} ${BitcoinHeaders})
151-
add_dependencies(test_pivx genHeaders libunivalue libsecp256k1 libzcashrust leveldb crc32c)
151+
add_dependencies(test_pivx genHeaders libunivalue libsecp256k1 libzcashrust leveldb crc32c bls)
152152
target_include_directories(test_pivx PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}
153153
${CMAKE_SOURCE_DIR}/src/leveldb
154154
${CMAKE_SOURCE_DIR}/src/leveldb/include
@@ -169,6 +169,7 @@ target_link_libraries(test_pivx PRIVATE
169169
crc32c
170170
secp256k1
171171
rustzcash
172+
bls
172173
${BerkeleyDB_LIBRARIES} ${Boost_LIBRARIES} ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY} ${LIBEVENT_LIB} ${GMP_LIBRARY} pthread
173174
)
174175
if(ZMQ_FOUND)

0 commit comments

Comments
 (0)