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

Re: [PATCH] Use lowercase includes for some Windows headers

From
Junio C Hamano <gitster@pobox.com>
Date
Jul 14, 2023, 17:07 UTC
Message-ID
<xmqqv8empgl4.fsf@gitster.g>
In-Reply-To
<xmqqmt14a36k.fsf@gitster.g>
Junio C Hamano <gitster@pobox.com> writes:
Show 25 quoted lines
> Mike Hommey <mh@glandium.org> writes:
>
>> When cross-compiling with the mingw toolchain on a system with a case
>> sensitive filesystem, the mixed case (which is technically correct as
>> per the contents of MS Visual C++) doesn't work (the corresponding mingw
>> headers are all lowercase for some reason).
>>
>> Signed-off-by: Mike Hommey <mh@glandium.org>
>> ---
>>  compat/win32/trace2_win32_process_info.c | 4 ++--
>>  wrapper.c                                | 2 +-
>>  2 files changed, 3 insertions(+), 3 deletions(-)
>
> ...  The only possible breakage I can think of is if
> different versions of mingw toolchain have these header files in
> different cases---those who have been happily using header files
> like <tlHelp32.h> on their case sensitive filesystem now will find
> their build to fail.  Theoretically, those who _corrected_ their
> header files to mixed case themselves (as it is "technically correct
> as per the contents of MS Visual C++") will be broken the same way,
> but they should be capable of diagnosing and recovering from such a
> breakage, so I'm not worried about that.
>
> Appreciate input from those who builds with mingw toolchain, but in
> the meantime let me queue it on 'seen' so that we won't forget.

And a month has passed. Unless I hear objections, I'll merge this change to 'next' in a few days at most.

Thanks.
Show 34 quoted lines
>
> Thanks.
>
>
>
>
>
>> diff --git a/compat/win32/trace2_win32_process_info.c b/compat/win32/trace2_win32_process_info.c
>> index a4e33768f4..438af8f818 100644
>> --- a/compat/win32/trace2_win32_process_info.c
>> +++ b/compat/win32/trace2_win32_process_info.c
>> @@ -3,8 +3,8 @@
>>  #include "../../repository.h"
>>  #include "../../trace2.h"
>>  #include "lazyload.h"
>> -#include <Psapi.h>
>> -#include <tlHelp32.h>
>> +#include <psapi.h>
>> +#include <tlhelp32.h>
>>  
>>  /*
>>   * An arbitrarily chosen value to limit the size of the ancestor
>> diff --git a/wrapper.c b/wrapper.c
>> index 67f5f5dbe1..5dc48e815a 100644
>> --- a/wrapper.c
>> +++ b/wrapper.c
>> @@ -17,7 +17,7 @@ static intmax_t count_fsync_hardware_flush;
>>  #ifdef HAVE_RTLGENRANDOM
>>  /* This is required to get access to RtlGenRandom. */
>>  #define SystemFunction036 NTAPI SystemFunction036
>> -#include <NTSecAPI.h>
>> +#include <ntsecapi.h>
>>  #undef SystemFunction036
>>  #endif
Previous: Junio C Hamano
Message 3 of 3 in “Use lowercase includes for some Windows headers”
  1. Use lowercase includes for some Windows headersMike Hommey, Jun 4, 2023
  2. Junio C HamanoJun 12, 2023
  3. Junio C HamanoJul 14, 2023

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.