1
0
mirror of https://github.com/libssh2/libssh2.git synced 2025-12-24 19:37:49 +03:00

cmake: tidy up string append and list prepend syntax

- `set(VAR "${VAR}<value>")` ->
  `string(APPEND VAR "<value>")`
  Available since CMake 3.4:
  https://cmake.org/cmake/help/latest/command/string.html#append

- `set(VAR "${VAR2}-or-<value>;${VAR}")` ->
  `set(VAR "${VAR2}-or-<value>" ${VAR})`

- prefer dash-style MSVC option.
  Follow-up to 854cfa8292 #1524

Closes #1533
This commit is contained in:
Viktor Szakats
2025-02-01 12:23:52 +01:00
parent b89858b83d
commit d033c1eaf6
4 changed files with 35 additions and 35 deletions

View File

@@ -70,49 +70,49 @@ endif()
set(_target_flags "")
if(APPLE)
set(_target_flags "${_target_flags} APPLE")
string(APPEND _target_flags " APPLE")
endif()
if(UNIX)
set(_target_flags "${_target_flags} UNIX")
string(APPEND _target_flags " UNIX")
endif()
if(BSD)
set(_target_flags "${_target_flags} BSD")
string(APPEND _target_flags " BSD")
endif()
if(ANDROID)
set(_target_flags "${_target_flags} ANDROID-${ANDROID_PLATFORM_LEVEL}")
string(APPEND _target_flags " ANDROID-${ANDROID_PLATFORM_LEVEL}")
endif()
if(WIN32)
set(_target_flags "${_target_flags} WIN32")
string(APPEND _target_flags " WIN32")
endif()
if(WINDOWS_STORE)
set(_target_flags "${_target_flags} UWP")
string(APPEND _target_flags " UWP")
endif()
if(CYGWIN)
set(_target_flags "${_target_flags} CYGWIN")
string(APPEND _target_flags " CYGWIN")
endif()
if(MSYS)
set(_target_flags "${_target_flags} MSYS")
string(APPEND _target_flags " MSYS")
endif()
if(DOS)
set(_target_flags "${_target_flags} DOS")
string(APPEND _target_flags " DOS")
endif()
if(AMIGA)
set(_target_flags "${_target_flags} AMIGA")
string(APPEND _target_flags " AMIGA")
endif()
if(CMAKE_COMPILER_IS_GNUCC)
set(_target_flags "${_target_flags} GCC")
string(APPEND _target_flags " GCC")
endif()
if(MINGW)
set(_target_flags "${_target_flags} MINGW")
string(APPEND _target_flags " MINGW")
endif()
if(MSVC)
set(_target_flags "${_target_flags} MSVC-${MSVC_VERSION}")
string(APPEND _target_flags " MSVC-${MSVC_VERSION}")
endif()
if(VCPKG_TOOLCHAIN)
set(_target_flags "${_target_flags} VCPKG")
string(APPEND _target_flags " VCPKG")
endif()
if(CMAKE_CROSSCOMPILING)
set(_target_flags "${_target_flags} CROSS")
string(APPEND _target_flags " CROSS")
endif()
message(STATUS "CMake platform flags:${_target_flags}")
@@ -425,7 +425,7 @@ if(CRYPTO_BACKEND STREQUAL "wolfSSL" OR NOT CRYPTO_BACKEND)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE ${WOLFSSL_PC_REQUIRES})
link_directories(${WOLFSSL_LIBRARY_DIRS})
if(WOLFSSL_CFLAGS)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WOLFSSL_CFLAGS}")
string(APPEND CMAKE_C_FLAGS " ${WOLFSSL_CFLAGS}")
endif()
if(WIN32)
@@ -454,7 +454,7 @@ if(CRYPTO_BACKEND STREQUAL "Libgcrypt" OR NOT CRYPTO_BACKEND)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE ${LIBGCRYPT_PC_REQUIRES})
link_directories(${LIBGCRYPT_LIBRARY_DIRS})
if(LIBGCRYPT_CFLAGS)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${LIBGCRYPT_CFLAGS}")
string(APPEND CMAKE_C_FLAGS " ${LIBGCRYPT_CFLAGS}")
endif()
endif()
endif()
@@ -472,7 +472,7 @@ if(CRYPTO_BACKEND STREQUAL "mbedTLS" OR NOT CRYPTO_BACKEND)
list(APPEND LIBSSH2_PC_REQUIRES_PRIVATE ${MBEDTLS_PC_REQUIRES})
link_directories(${MBEDTLS_LIBRARY_DIRS})
if(MBEDTLS_CFLAGS)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${MBEDTLS_CFLAGS}")
string(APPEND CMAKE_C_FLAGS " ${MBEDTLS_CFLAGS}")
endif()
endif()
endif()
@@ -491,9 +491,9 @@ if(CRYPTO_BACKEND STREQUAL "WinCNG" OR NOT CRYPTO_BACKEND)
if(ENABLE_ECDSA_WINCNG)
add_definitions("-DLIBSSH2_ECDSA_WINCNG")
if(MSVC)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} /SUBSYSTEM:WINDOWS,10")
string(APPEND CMAKE_SHARED_LINKER_FLAGS " -SUBSYSTEM:WINDOWS,10")
elseif(MINGW)
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,--subsystem,windows:10")
string(APPEND CMAKE_SHARED_LINKER_FLAGS " -Wl,--subsystem,windows:10")
endif()
endif()
elseif(_specific_crypto_requirement STREQUAL "REQUIRED")

View File

@@ -10,11 +10,11 @@ option(PICKY_COMPILER "Enable picky compiler options" ON)
if(ENABLE_WERROR)
if(MSVC)
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -WX")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -WX")
string(APPEND CMAKE_C_FLAGS " -WX")
string(APPEND CMAKE_CXX_FLAGS " -WX")
else() # llvm/clang and gcc style options
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Werror")
string(APPEND CMAKE_C_FLAGS " -Werror")
string(APPEND CMAKE_CXX_FLAGS " -Werror")
endif()
if(((CMAKE_COMPILER_IS_GNUCC AND
@@ -30,12 +30,12 @@ if(MSVC)
if(CMAKE_C_FLAGS MATCHES "[/-]W[0-4]")
string(REGEX REPLACE "[/-]W[0-4]" "-W4" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}")
else()
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -W4")
string(APPEND CMAKE_C_FLAGS " -W4")
endif()
if(CMAKE_CXX_FLAGS MATCHES "[/-]W[0-4]")
string(REGEX REPLACE "[/-]W[0-4]" "-W4" CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}")
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -W4")
string(APPEND CMAKE_CXX_FLAGS " -W4")
endif()
endif()
@@ -255,7 +255,7 @@ endif()
if(_picky)
string(REPLACE ";" " " _picky "${_picky}")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${_picky}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${_picky}")
string(APPEND CMAKE_C_FLAGS " ${_picky}")
string(APPEND CMAKE_CXX_FLAGS " ${_picky}")
message(STATUS "Picky compiler options: ${_picky}")
endif()

View File

@@ -73,8 +73,8 @@ include_directories(SYSTEM ${CRYPTO_BACKEND_INCLUDE_DIR})
list(APPEND LIBSSH2_LIBS ${LIBSSH2_LIBS_SOCKET})
if(MSVC)
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_C_FLAGS_DEBUG} -Zi -Od")
set(CMAKE_SHARED_LINKER_FLAGS_DEBUG "${CMAKE_SHARED_LINKER_FLAGS_DEBUG} -DEBUG")
string(APPEND CMAKE_C_FLAGS_DEBUG " -Zi -Od")
string(APPEND CMAKE_SHARED_LINKER_FLAGS_DEBUG " -DEBUG")
endif()
## Sources
@@ -210,15 +210,15 @@ set(_ldflags "")
set(_sys_libdirs "")
foreach(_libdir IN LISTS CMAKE_SYSTEM_PREFIX_PATH)
if(_libdir MATCHES "/$")
set(_libdir "${_libdir}lib")
string(APPEND _libdir "lib")
else()
set(_libdir "${_libdir}/lib")
string(APPEND _libdir "/lib")
endif()
if(IS_DIRECTORY "${_libdir}")
list(APPEND _sys_libdirs "${_libdir}")
endif()
if(DEFINED CMAKE_LIBRARY_ARCHITECTURE)
set(_libdir "${_libdir}/${CMAKE_LIBRARY_ARCHITECTURE}")
string(APPEND _libdir "/${CMAKE_LIBRARY_ARCHITECTURE}")
if(IS_DIRECTORY "${_libdir}")
list(APPEND _sys_libdirs "${_libdir}")
endif()

View File

@@ -54,7 +54,7 @@ if(CMAKE_COMPILER_IS_GNUCC)
if(GCOV_PATH)
set(_gcov_cflags "-g" "--coverage")
if(NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS 8.0)
set(_gcov_cflags "${_gcov_cflags} -fprofile-abs-path")
string(APPEND _gcov_cflags " -fprofile-abs-path")
endif()
endif()
endif()
@@ -135,7 +135,7 @@ if(RUN_SSHD_TESTS AND SSHD_EXECUTABLE)
set(_sshd_test_targets "")
foreach(_test IN LISTS SSHD_TESTS)
if(TARGET ${_test})
set(_sshd_test_targets "${_sshd_test_targets} $<TARGET_FILE:${_test}>")
string(APPEND _sshd_test_targets " $<TARGET_FILE:${_test}>")
endif()
endforeach()