Hello,
In my understanding, the ratio between the mere consumers of git on Windows vs.
people who compile git for Windows is 100,000 : 1. If there is a breaking
change in the workflow of the latter set, who use Visual Studio to build git
from source, I assume that is doable given a good reason, hence this post.
With VS 2015, C99 support is "finally" added with some C11 features as well.
See this blog:
http://blogs.msdn.com/b/vcblog/archive/2015/06/19/c-11-14-17-features-in-vs-2015-rtm.aspx.
One of the edition of new VS is Community edition, which is like professional
edition but is free (also much superior than Express edition) and meant for
open source projects. VS2015 also has the ability to target compiler for
Wind-XP.
If all the instances of fallback code guarded by "#ifdef _MSC_VER" and "#if
defined(_MSC_VER) && _MSC_VER < xxx" etc. are removed from git's source code in
favor of VS2015, it will help the code maintainability in future and standard C
code will thrive. The very few enthusiasts who were building Windows code can
download the said free edition of VS2015 and build the project the same way as
they were building before (I.e. using CLI .
Update to docs will look like: "To build on Windows, you need to use MinGW or
VS2015 (community, express desktop, professional or enterprise editions)". I
think this is choice for those few, who were building from source. Also, Clang
and LLVM are also now available on Windows. So many options if someone is
looking hard. What I am trying to say is dropping some century old version of
VS support for a lazy user should not be an excuse for a deal-breaker anymore.
World is moving at much faster pace to care about lazy. :)
In addition to Jenkins, there is also a free-for-OSS and easy-to-configure CI
service called AppVeyor, which let you build using VS2015 and MInGW machineries
(http://www.appveyor.com/updates/2015/07/21) and saves the artifacts for
download or upload to somewhere. If git repo is configured with AppVeyor, it
will automate the process of building releases for Windows, and there will be
no version disparity like present (the current released version of git on Mac
is v2.4.3 while that on misfortunate Windows is v1.9.5).
In future if CMake (http://www.cmake.org/) is used in this repo to automate and
unify all build systems, that is also available on AppVeyor, Jenkins, Travis
etc.
Thank you for the patience and I hope someone will consider and approve these
changes at some near point in future.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html