Re: How to request additions to w32api?
Keith Marshall <[email protected]> Thu, 11 Feb 2021 12:06:00 +0000
| Newsgroups | gmane.comp.gnu.mingw.user |
|---|---|
| Organization | MinGW.org Project |
| Message-ID | <[email protected]> |
This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --===============5110960986095219458== Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="ptt5xoDEbANzOxKZrk7CHMHQN8uMBJ1Qy" This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --ptt5xoDEbANzOxKZrk7CHMHQN8uMBJ1Qy Content-Type: multipart/mixed; boundary="zj46iU1hGa9NnPVWLElgIl7mgpbbq92WO"; protected-headers="v1" From: Keith Marshall <[email protected]> To: [email protected] Message-ID: <d5eb45cc-cb65-a408-5823-7854cdd4290a-JlWs9+JhQMeJPt80KsDg5Q@public.gmane.org> Subject: Re: [MinGW-Users] How to request additions to w32api? References: <838s7viy6k.fsf-mXXj517/[email protected]> In-Reply-To: <838s7viy6k.fsf-mXXj517/[email protected]> --zj46iU1hGa9NnPVWLElgIl7mgpbbq92WO Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: quoted-printable On 10/02/2021 18:18, Eli Zaretskii wrote: > What is the procedure for requesting updates to the MinGW w32api > package (header files and import libraries)? The appropriate way would be to file a "feature request" ticket, as you did for your "libgccjit" request. (If you need a reminder of the filing procedure, please refer to: https://mingw.osdn.io/index.html?page=3Dcontact.html#feature-request ) > I bumped into a few APIs introduced by Windows 10 which are not > covered by the import libraries (so the only way to use them is to > link against the DLL itself). Which, of course, is a perfectly acceptable procedure, when you have the appropriate version of the DLL to hand, but that still leaves you with the task of furnishing appropriate definitions and prototypes. > Is it enough to mention their names in the ticket, or should I submit > some additional information, like an actual patch to the relevant > .def file(s)? A patch, (with accompanying ChangeLog entry), is the most effective way to achieve a quick turn-around, and attaching that to a ticket is the most effective way to provide it. > (It is not clear to me whether the *.def files are maintained by hand > or are produced by some tool.) The initial .def file, for any given import library, is likely to have been generated byt the "pexports" tool -- that's certainly what I use, when I have access to the DLL. Depending on the extent of subsequent additions, they may simply be added manually, or, for more extensive changes, by (selective) "diffing" against the output from "pexports", when run on a more recent version of the DLL. > And what about the header files and the prototypes there, and also > definitions of struct's and constants that those newer APIs require? > Is it acceptable to use in our headers the definitions from MSDN? Yes, that (or docs.microsoft.com, as it is now known) is the preferred source of documentation for any proposed addition, and header file updates should be included in any proposed patches; exposure of any additional API declarations should also be guarded, on the basis of the _WIN32_WINNT version with which they have been introduced. --=20 Regards, Keith. Public key available from keys.gnupg.net Key fingerprint: C19E C018 1547 DE50 E1D4 8F53 C0AD 36C6 347E 5A3F --zj46iU1hGa9NnPVWLElgIl7mgpbbq92WO-- --ptt5xoDEbANzOxKZrk7CHMHQN8uMBJ1Qy Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature" -----BEGIN PGP SIGNATURE----- wsF5BAABCAAjFiEEwZ7AGBVH3lDh1I9TwK02xjR+Wj8FAmAlHagFAwAAAAAACgkQwK02xjR+Wj+V jw//RQmQdayta49a+45y5mW7SVc9nkwxhHRgpCYPJnyRg552QKWgNMFgPc4rbL1JZxENK1eumTij 3zRGlXUEELTjVE5ZIGB6DyfTscU769hVUnQa8uvuEozfdpMjNyqBqH13lQ2P6vBQYoNXIp+RtATM CK2ULapPLuKkyeJCcSYJr5g+rSfohU/j3FkRoaEWN9LhEZ3PTuWW1ma+pfd0YiixltFTF8UWcT7K lEYtJKd8yuiQK5lFUWsu2hZk4ZjwFBJFXG+B62PuL3LZEtWG/Qfjnh360skKgqsgEQ4Ih0Nn+yHT cda/2WV1WfPMSv2zI7HVJu4pRW1yCQw/DM8k70NBwm2g2D4wVL9LBDTjjYYmO+W5MeyoJXddinnD +OMEzkFf1kyb9BLwn7zRlTxo0t8W1WXc5rcayxWqbkSAmDQptq4jhCfBoPXUAk6SVB1TNbNJKk+j Ege/Nle4yZxEk2YW9Dzr2j4e2bb24icokDAvd9wLGaY0cz94+Svy6itU/4VoeSjSN86iPZ6Jbd6L Tfn6SJRwuftcm3BhEoNytmPCn4/NxHedyn5DBJTpeumO95cp3uaroN53rnJM3BpHqCS0TYInYVTX 1T6Hp4PXhFLcBD2RnUkwQD10vlXZL6ic9yFM89p994u1EwDNgexJvGNnvel25Yrr1bJWhmfE/a+8 Ffk= =8Jk4 -----END PGP SIGNATURE----- --ptt5xoDEbANzOxKZrk7CHMHQN8uMBJ1Qy-- --===============5110960986095219458== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTWluR1ctVXNl cnMgbWFpbGluZyBsaXN0Ck1pbkdXLVVzZXJzQGxpc3RzLm9zZG4ubWUKClRoaXMgbGlzdCBvYnNl cnZlcyB0aGUgUG9zdGluZyBFdGlxdWV0dGUsIGFzIGRlc2NyaWJlZCBhdCBodHRwczovL21pbmd3 Lm9zZG4uaW8vaW5kZXguaHRtbD9wYWdlPW1haWxpbmcuaHRtbCNsaXN0LWV0aXF1ZXR0ZS4KV2Ug YXNrIHRoYXQgeW91IGJlIHBvbGl0ZSBhbmQgZG8gdGhlIHNhbWUuICBEaXNyZWdhcmQgZm9yIHRo ZSBsaXN0IGV0aXF1ZXR0ZSBtYXkgY2F1c2UgeW91ciBhY2NvdW50IHRvIGJlIG1vZGVyYXRlZC4K Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCllvdSBtYXkg Y2hhbmdlIHlvdXIgTWluR1cgQWNjb3VudCBPcHRpb25zIG9yIHVuc3Vic2NyaWJlIGF0OgpodHRw czovL2xpc3RzLm9zZG4ubWUvbWFpbG1hbi9saXN0aW5mby9taW5ndy11c2VycwpBbHNvOiBtYWls dG86bWluZ3ctdXNlcnMtcmVxdWVzdEBsaXN0cy5vc2RuLm1lP3N1YmplY3Q9dW5zdWJzY3JpYmU= --===============5110960986095219458==--