Hi Yang,
When using Visual Studio CMakeLists.txt files should most likely be following more closely appropiate definitions from include/curl/curlbuild.h.dist and lib/config-win32.h and try to generate/match what already exists in those files.
The idea behind CMake is to provide cross-platform, generic build chain. Thus, it is more natural to use generic solutions where possible, rather than select specific configurations for specific build environments.
In this case the problem wouldn't exist for cmake buids it it were using Visual studio definitions from include/curl/curlbuild.h.dist given that these work for all versions of VS since VS6 up to nowadays. and not the ones from CMakeLists.txt which are not supported on all VS versions...
These definitions are not generic. They are specific to VS, while "ULL" suffix is supported on many platforms (I checked different flavours of Linux, FreeBSD 7.0, and OpenSolaris with SunStudio compiler). These definitions offer no advantage whatsoever over more standard ones. So why create a special section for VS builds on Windows, if we can use more generic approach?
------------------------------------------------------------------- List admin: http://cool.haxx.se/list/listinfo/curl-library Etiquette: http://curl.haxx.se/mail/etiquette.html
