mirror of
https://github.com/libssh2/libssh2.git
synced 2025-08-05 20:55:47 +03:00
build: add support for clang-cl, add CI job
- ci/appveyor: add clang-cl job. - ci/appvayor: optimize setting an env. - build: fix clang-cl builds. - build: fix `-Wcast-function-type` compiler warnings for OpenSSL 3. - build: use `stdint.h` with MSVC when supported. - src: use `PRId64` for MSVC where supported. - src: avoid recursive macro definition for `recv()` and `send()`. - session: silence `-Wcast-function-type` for `libssh2_session_callback_set2()`. Sadly this function is still not fully warning-clean, and it seems we'd need separate setter-getters for each callback to avoid all warnings. Closes #1484
This commit is contained in:
@@ -123,7 +123,7 @@ extern "C" {
|
||||
# include <sys/uio.h>
|
||||
#endif
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#if defined(_MSC_VER) && (_MSC_VER < 1600)
|
||||
typedef unsigned char uint8_t;
|
||||
typedef unsigned short int uint16_t;
|
||||
typedef unsigned int uint32_t;
|
||||
@@ -132,16 +132,17 @@ typedef __int64 int64_t;
|
||||
typedef unsigned __int64 uint64_t;
|
||||
typedef unsigned __int64 libssh2_uint64_t;
|
||||
typedef __int64 libssh2_int64_t;
|
||||
#if (!defined(HAVE_SSIZE_T) && !defined(ssize_t))
|
||||
typedef SSIZE_T ssize_t;
|
||||
#define HAVE_SSIZE_T
|
||||
#endif
|
||||
#else
|
||||
#include <stdint.h>
|
||||
typedef unsigned long long libssh2_uint64_t;
|
||||
typedef long long libssh2_int64_t;
|
||||
#endif
|
||||
|
||||
#if defined(_MSC_VER) && !defined(HAVE_SSIZE_T) && !defined(ssize_t)
|
||||
typedef SSIZE_T ssize_t;
|
||||
#define HAVE_SSIZE_T
|
||||
#endif
|
||||
|
||||
#ifdef _WIN32
|
||||
typedef SOCKET libssh2_socket_t;
|
||||
#define LIBSSH2_INVALID_SOCKET INVALID_SOCKET
|
||||
|
Reference in New Issue
Block a user