mirror of
https://github.com/libssh2/libssh2.git
synced 2025-04-24 23:26:59 +03:00
- show platform flags (via curl). - add `LIBSSH2_USE_PKGCONFIG` option to control whether to use `pkg-config` to find dependencies. - set `.pc` names withing the Find modules. - add `mbedcrypto` to `libssh2.pc` only when detected via `pkg-config`. Workaround for older mbedtls versions and non-CMake mbedTLS builds (as of mbedTLS 3.6.2) that don't emit an `mbedcrypto.pc` file. - set header paths relative to the project root (tidy-up). - use `-isystem` for crypto backend and zlib header paths. To match autotools. - sync header path order with autotools. - rename local variables to underscore-lowercase. - minor tidy-ups. Cherry-picked from #1484 Closes #1525
62 lines
2.4 KiB
CMake
62 lines
2.4 KiB
CMake
# Copyright (C) Alexander Lamaison <alexander.lamaison@gmail.com>
|
|
# Copyright (C) Viktor Szakats
|
|
#
|
|
# Redistribution and use in source and binary forms,
|
|
# with or without modification, are permitted provided
|
|
# that the following conditions are met:
|
|
#
|
|
# Redistributions of source code must retain the above
|
|
# copyright notice, this list of conditions and the
|
|
# following disclaimer.
|
|
#
|
|
# Redistributions in binary form must reproduce the above
|
|
# copyright notice, this list of conditions and the following
|
|
# disclaimer in the documentation and/or other materials
|
|
# provided with the distribution.
|
|
#
|
|
# Neither the name of the copyright holder nor the names
|
|
# of any other contributors may be used to endorse or
|
|
# promote products derived from this software without
|
|
# specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
|
# CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
|
# INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
|
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
|
|
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
|
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE
|
|
# USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY
|
|
# OF SUCH DAMAGE.
|
|
#
|
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
|
|
include(CopyRuntimeDependencies)
|
|
|
|
list(APPEND LIBSSH2_LIBS ${LIBSSH2_LIBS_SOCKET})
|
|
|
|
transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
|
|
# Get 'noinst_PROGRAMS' variable
|
|
include("${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
|
|
|
|
foreach(_example IN LISTS noinst_PROGRAMS)
|
|
add_executable(${_example} "${_example}.c")
|
|
list(APPEND _example_targets ${_example})
|
|
# to find generated header
|
|
target_include_directories(${_example} PRIVATE
|
|
"${PROJECT_BINARY_DIR}/src"
|
|
"${PROJECT_SOURCE_DIR}/src")
|
|
target_link_libraries(${_example} ${LIB_SELECTED} ${LIBSSH2_LIBS})
|
|
set_target_properties(${_example} PROPERTIES UNITY_BUILD OFF)
|
|
endforeach()
|
|
|
|
add_target_to_copy_dependencies(
|
|
TARGET copy_example_dependencies
|
|
DEPENDENCIES ${RUNTIME_DEPENDENCIES}
|
|
BEFORE_TARGETS ${_example_targets})
|