www.libssh2.org | Daily snapshots | Mailing list archive | Docs | Examples | github

Archive Index This month's Index

Subject: Re: Removing non-CMake windows support (was Re: problems building under Windows)

Re: Removing non-CMake windows support (was Re: problems building under Windows)

From: Alexander Lamaison <swish_at_lammy.co.uk>
Date: Fri, 1 Jan 2016 15:10:17 +0000

On 31 Dec 2015 14:51, "George Garner (online)"
<ggarner_online_at_gmgsystemsinc.com> wrote:
>
> The existing VS project files don't work out of the box. Only the debug build appear to have been tested. There is no 64-bit build. That having been said they were a convenient starting point and with 15 minutes of work I was able to get both 32 and 64-bit projects to build with the WinCNG, zlib and secure zero memory support. I did have to edit the source files in places, for example to enclose some include files with a carrot ('<') rather than double quotes ('"'), and to change the "#ifdef WIN32" to "#if defined (WIN32) || defined (WIN64)." However, on whole, the current VS project files were helpful as a starting point.

Did you try the CMake route? How did this compare?

> My main concern is the number of warnings. Many of the warnings appear to be benign warnings about the truncation of 64-bit to 32-bit data types. The warnings that concern me the most involve the signed/unsigned mismatches and what I consider the gratuitous use of signed data types. I would look at the code around each of these warnings and verify whether there is an arithmetic operation that could produce a negative number and no check for integer underflow.
>
> I have gone through the code and made a substantial number of edits, but then I will have to do it all over again with the next release. Silencing the warnings with appropriate edits to your code would show that you care.

The warnings are a known issue and exist because the integer types
used in the API are not 64-bit friendly. However, changing the ABI is
not something we can do lightly, it causes too much disruption on
Unix.

There is a task on my to-do list to add a preprocessor option to
explicitly move to a new ABI, which could be used on windows and in
statically linked builds.

Alex

_______________________________________________
libssh2-devel http://cool.haxx.se/cgi-bin/mailman/listinfo/libssh2-devel
Received on 2016-01-01

the libssh2 team