mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-07-12 19:52:34 +02:00
Merge bitcoin/bitcoin#30903: cmake: Add FindZeroMQ
module
915640e191
depends: zeromq: don't install .pc files and remove patches for them (Cory Fields)6b8a74463b
cmake: Add `FindZeroMQ` module (Hennadii Stepanov) Pull request description: This PR introduces the `FindZeroMQ` module, which first attempts to find the `libzmq` library using CMake's `find_package()` and falls back to `pkg_check_modules()` if unsuccessful. Addresses https://github.com/bitcoin/bitcoin/issues/30876 for the ZeroMQ package. ACKs for top commit: fanquake: ACK915640e191
Tree-SHA512: 2f17bae21be5d3f280a13425d22f5d1b2e23837a8aaf5ec89c433767509de030a42d598b261e102bdb5b860d8ede98013c124c3d25e081e956d4ee3a81b2584f
This commit is contained in:
41
cmake/module/FindZeroMQ.cmake
Normal file
41
cmake/module/FindZeroMQ.cmake
Normal file
@ -0,0 +1,41 @@
|
||||
# Copyright (c) 2024-present The Bitcoin Core developers
|
||||
# Distributed under the MIT software license, see the accompanying
|
||||
# file COPYING or https://opensource.org/license/mit/.
|
||||
|
||||
#[=======================================================================[
|
||||
FindZeroMQ
|
||||
----------
|
||||
|
||||
Finds the ZeroMQ headers and library.
|
||||
|
||||
This is a wrapper around find_package()/pkg_check_modules() commands that:
|
||||
- facilitates searching in various build environments
|
||||
- prints a standard log message
|
||||
|
||||
#]=======================================================================]
|
||||
|
||||
include(FindPackageHandleStandardArgs)
|
||||
find_package(ZeroMQ ${ZeroMQ_FIND_VERSION} NO_MODULE QUIET)
|
||||
if(ZeroMQ_FOUND)
|
||||
find_package_handle_standard_args(ZeroMQ
|
||||
REQUIRED_VARS ZeroMQ_DIR
|
||||
VERSION_VAR ZeroMQ_VERSION
|
||||
)
|
||||
if(TARGET libzmq)
|
||||
add_library(zeromq ALIAS libzmq)
|
||||
elseif(TARGET libzmq-static)
|
||||
add_library(zeromq ALIAS libzmq-static)
|
||||
endif()
|
||||
mark_as_advanced(ZeroMQ_DIR)
|
||||
else()
|
||||
find_package(PkgConfig REQUIRED)
|
||||
pkg_check_modules(libzmq QUIET
|
||||
IMPORTED_TARGET
|
||||
libzmq>=${ZeroMQ_FIND_VERSION}
|
||||
)
|
||||
find_package_handle_standard_args(ZeroMQ
|
||||
REQUIRED_VARS libzmq_LIBRARY_DIRS
|
||||
VERSION_VAR libzmq_VERSION
|
||||
)
|
||||
add_library(zeromq ALIAS PkgConfig::libzmq)
|
||||
endif()
|
Reference in New Issue
Block a user