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

Re: [PATCH v2 0/5] Fix compile errors with MSys2

From
Johannes Sixt <j6t@kdbg.org>
Date
Jan 14, 2016, 21:57 UTC
Message-ID
<569819CA.3040804@kdbg.org>
In-Reply-To
<cover.1452790142.git.johannes.schindelin@gmx.de>
Am 14.01.2016 um 17:51 schrieb Johannes Schindelin:
Show 44 quoted lines
> Git for Windows 2.x is based on MSys2, and its first official version
> was released already almost half a year ago, yet it is still impossible
> even to compile Git from the official, platform-independent Git source
> code.
>
> This patch series merely fixes the compile errors, and will be followed
> by other patch series that fix the compile warnings and test failures.
> The idea is to move all Windows-specific patches of Git for Windows'
> fork to upstream Git proper.
>
> Relative to v1, I only removed the guards about the "#undef
> ReadWriteBarrier".
>
> Johannes Schindelin (5):
>    config.mak.uname: support MSys2
>    config.mak.uname: supporting 64-bit MSys2
>    nedmalloc: allow compiling with MSys2's compiler
>    compat/mingw: support MSys2-based MinGW build
>    compat/winansi: support compiling with MSys2
>
>   compat/mingw.h              | 24 +++++++++++++++++++++++-
>   compat/nedmalloc/malloc.c.h |  4 ++++
>   compat/winansi.c            |  2 ++
>   config.mak.uname            | 31 ++++++++++++++++++++++++++++---
>   4 files changed, 57 insertions(+), 4 deletions(-)
>
> Interdiff vs v1:
>
>   diff --git a/compat/nedmalloc/malloc.c.h b/compat/nedmalloc/malloc.c.h
>   index 18634e3..bf70037 100644
>   --- a/compat/nedmalloc/malloc.c.h
>   +++ b/compat/nedmalloc/malloc.c.h
>   @@ -1385,9 +1385,7 @@ LONG __cdecl _InterlockedExchange(LONG volatile *Target, LONG Value);
>
>      /*** Atomic operations ***/
>      #if (__GNUC__ * 10000 + __GNUC_MINOR__ * 100 + __GNUC_PATCHLEVEL__) > 40100
>   -    #ifdef __MINGW64_VERSION_MAJOR
>   -      #undef _ReadWriteBarrier
>   -    #endif
>   +    #undef _ReadWriteBarrier
>        #define _ReadWriteBarrier() __sync_synchronize()
>      #else
>        static __inline__ __attribute__((always_inline)) long __sync_lock_test_and_set(volatile long * const Target, const long Value)
>

It is very considerate of you to keep compatibility with the old MSYS build environment, which I'm still using. (The new Git for Windows build environment is already on my disk, but I haven't found time to get familiar with it.) So, it doesn't mean a whole lot, unfortunatley, when I report that I've tested v1, and that it passes the test suite, because I've exercised almost none of the new code.

-- Hannes
Previous: Junio C Hamano
Message 23 of 23 in “Fix compile errors with MSys2”
  1. 0/5 Fix compile errors with MSys2Johannes Schindelin, Jan 13, 2016
  2. 1/5 config.mak.uname: support MSys2Johannes Schindelin, Jan 13, 2016
  3. Jeff KingJan 13, 2016
  4. Johannes SchindelinJan 13, 2016
  5. Dennis KaarsemakerJan 13, 2016
  6. 2/5 config.mak.uname: supporting 64-bit MSys2Johannes Schindelin, Jan 13, 2016
  7. SZEDER GáborJan 21, 2016
  8. Johannes SchindelinJan 21, 2016
  9. 3/5 nedmalloc: allow compiling with MSys2's compilerJohannes Schindelin, Jan 13, 2016
  10. Junio C HamanoJan 13, 2016
  11. 4/5 compat/mingw: support MSys2-based MinGW buildJohannes Schindelin, Jan 13, 2016
  12. 5/5 compat/winansi: support compiling with MSys2Johannes Schindelin, Jan 13, 2016
  13. Junio C HamanoJan 13, 2016
  14. Johannes SchindelinJan 14, 2016
  15. 0/5 Fix compile errors with MSys2Johannes Schindelin, Jan 14, 2016
  16. 1/5 config.mak.uname: support MSys2Johannes Schindelin, Jan 14, 2016
  17. Johannes SixtJan 14, 2016
  18. 2/5 config.mak.uname: supporting 64-bit MSys2Johannes Schindelin, Jan 14, 2016
  19. 3/5 nedmalloc: allow compiling with MSys2's compilerJohannes Schindelin, Jan 14, 2016
  20. 4/5 compat/mingw: support MSys2-based MinGW buildJohannes Schindelin, Jan 14, 2016
  21. 5/5 compat/winansi: support compiling with MSys2Johannes Schindelin, Jan 14, 2016
  22. Junio C HamanoJan 14, 2016
  23. Johannes SixtJan 14, 2016

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.