From: <ml...@di...> - 2014-05-04 13:29:26
|
I'll just throw in my two cents. Was recently reading through header files for MinGW, MinGW-64 and Wine. Was trying to get some software that needs DirectX working properly. There wasn't enough information in MinGW itself to get it to compile, but I didn't want to extend the headers unless I could find publicly documented materials to back up any changes. Keith Marshall wrote: >Any patch which was not developed on the basis of examination of freely available (e.g. MSDN) documentation, and in > particular any patch derived from examination of MS PDK headers, (or worse still copied verbatim from any such headers), or even by reverse > engineering of any MS PDK, has always been rejected by MinGW.org. >From the parts of the header files I was examining, I'd have to say this was very much the case. I did not see any material in the header files I looked at that did not come from public documentation. A lot of it is from the public documentation on the Microsoft site. The MinGW project even went so far as to track down public RFCs that provided more information. I think they've done a good job with what little information they have. >That may be so, but your suggested examination or reverse engineering methodology is *not* acceptable to MinGW.org; MinGW-W64 seem to be less > careful in this respect. There's some correlation between the Wine and MinGW-64 headers (at least with regards to DirectX). I have been unable to track down where either project got certain information found in those headers (unless possibly they reverse engineered or looked at the official headers). I would really like to see some documentation on where they did get certain pieces of information that are in their header files. Would be nice to see that information added to the MinGW project if it is public information. One last consideration I'd like to throw in, as per Oracle America, Inc. v. Google, Inc ( http://en.wikipedia.org/wiki/Oracle_v._Google ) as decided in the United States District Court for the Northern District of California, APIs are not copyrightable. This has already been through the courts. If it continues to hold up, borrowing from others' header files if it's API related only may be perfectly fine. There is precedence for it. I really don't have a decent test machine for a 64 bit version of MinGW, so I can't test this myself at this time. However, I can't help wondering, if the current MinGW compiler is built targeting 64 bit rather than 32 bit, just how far is it from working properly? The MinGW32 project changed its name to MinGW several years ago to emphasize it wasn't just going to be for 32 bit systems. Would be nice to look into just what would it take to make 64 bit support a reality with what MinGW has to offer now as a starting point. Sincerely, Laura http://www.distasis.com/cpp/mingw.htm |