[MinGW-Notify] [mingw] #39130: correct header file name versionhelpers.h

Back to archive index
MinGW Notification List mingw****@lists*****
Wed Apr 17 23:37:49 JST 2019


#39130: correct header file name versionhelpers.h

  Open Date: 2019-04-13 23:21
Last Update: 2019-04-17 15:37

URL for this Ticket:
    https://osdn.net//projects/mingw/ticket/39130
RSS feed for this Ticket:
    https://osdn.net/ticket/ticket_rss.php?group_id=3917&tid=39130

---------------------------------------------------------------------

Last Changes/Comment on this Ticket:
2019-04-17 15:37 Updated by: keith
 * Status Update from Open to Closed

 * Resolution Update from None to Rejected


Comment:

This is a can of worms I'd rather not open!

    The distributed name of versionhelpers.h is VersionHelpers.h

Says who? Our distributed name is "versionhelpers.h", (all lower case). For it
to be otherwise creates near-infinite scope of mixed case possibilities, for
creative naming across the entire gamut of system header files. We adopt a
simple rule: all system header files will be consistently named in lower case —
always. That's not just me being pig-headed; it's a rational choice, to ensure
predictability for compilation on platforms which actually care about file name
case, and it isn't going to change.

    only works when compiling on windows with a case agnostic filesystem

Sure, if you compile on Windows, the Windows BDOS is case agnostic; (IIRC, the
underlying NTFS is actually case-sensitive, but Windows normally abstracts that
to give the appearance of case neutrality). That property allows Microsoft to
be creative, in their coding examples, by using mixed case header file names.
They aren't even always consistent, in such usage, but they are delighted when
you follow suit, because it just adds lock-in potential for their ghastly OS.
If you care about cross-compiling on a host with a case sensitive file system,
then you should never write code which refers to system header files using
mixed case names. Always use lower case only references; this will allow your
code to compile on Windows, and on any platform with a case sensitive file
system, (provided your system headers, on such a case sensitive platform, are
all named exclusively in lower case — as MinGW's always will be).



---------------------------------------------------------------------
Ticket Status:

      Reporter: rich_coe
         Owner: (None)
          Type: Issues
        Status: Closed
      Priority: 5 - Medium
     MileStone: (None)
     Component: (None)
      Severity: 5 - Medium
    Resolution: Rejected
---------------------------------------------------------------------

Ticket details:

The distributed name of versionhelpers.h is VersionHelpers.h
mingw created this file as versionhelpers.h, which only works when compiling on
windows with a case agnostic filesystem.



-- 
Ticket information of MinGW - Minimalist GNU for Windows project
MinGW - Minimalist GNU for Windows Project is hosted on OSDN

Project URL: https://osdn.net/projects/mingw/
OSDN: https://osdn.net

URL for this Ticket:
    https://osdn.net/projects/mingw/ticket/39130
RSS feed for this Ticket:
    https://osdn.net/ticket/ticket_rss.php?group_id=3917&tid=39130



More information about the MinGW-Notify mailing list
Back to archive index