git/list[1] front-page[2] threads[3] people[4] search[5] about
 

FeatureRequest: Build improvements for Windows

From
DPDangling Pointer <danglingpointer@outlook.com>
Date
Jul 26, 2015, 06:23 UTC
Message-ID
<BAY169-W30CD27F2F7606F4DF52944A78F0@phx.gbl>
In-Reply-To
<BAY169-W8210AC5C69796A61AD2236A78F0@phx.gbl>
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.
  		 	   		  
Next: Jacob Keller
Message 1 of 6 in “FeatureRequest: Build improvements for Windows”
  1. Dangling PointerJul 26, 2015
  2. Jacob KellerJul 26, 2015
  3. FW: FeatureRequest: Build improvements for WindowsDangling Pointer, Jul 26, 2015
  4. Philip OakleyJul 26, 2015
  5. Dangling PointerJul 26, 2015
  6. Philip OakleyJul 26, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.