Re: [Mingw-w64-public] [PATCH 0/5] Update windowsapp to match the one in 20H1

2023-06-26 Thread Steve Lhomme
Also, VLC (and all its contribs) builds with the 19H1 patch (ie without 
the 20H1) as well. Our current minimum for UWP is 19H1 which brought 
enough allowed API's to replace what we used in winstorecompat.


On 2023-06-26 15:44, Steve Lhomme wrote:
BTW I tested this on VLC build and it all links fine (once the Rtl 
functions are added).


On 2023-06-26 15:31, Steve Lhomme wrote:

windowsapp.lib and the target DLL for each API entry keeps evolving.
So far the files and entries were mostly added manually when needed.
This patchset creates the actual equivalent to what is found in 
windowsapp.lib.


The previous mass edits were generated from a WACK to .def tool. This 
time
instead of the WACK that is permitting more functions to define 
multiple times

it's exactly the same DLL that windowsapp.lib uses and not multiple ones.

A few Rtl function not found in windowsapp.lib were added because they 
are
needed by libunwind. They are allowed by the WACK and found in that 
DLL on my

system. But for some reason they are not in windowsapp.lib...

There are a lot of inconsistencies between the WACK, windowsapp.lib, the
windowsapp documentation [1] and the function documentation. The most 
restrictive
is the windowsapp.lib. If a function is not in there, it should not 
link when
building for UWP (we are lacking onecore.lib and onecoreuap.lib). So 
we should

not allow the linking either in mingw-w64.

[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis

Steve Lhomme (5):
   crt: don't generate libgamemode.a for windowsapp
   crt: order libs alphabetically in windowsapp
   crt: move some Rtl functions to rtlsupport-l1-1-0
   crt: update windowsapp to the 18362/19H1 SDK
   crt: update windowsapp to the 19041/20H1 SDK

  mingw-w64-crt/Makefile.am | 168 +++---
  .../api-ms-win-appmodel-runtime-l1-1-1.def    |  20 ---
  .../api-ms-win-appmodel-runtime-l1-1-2.def    |  12 ++
  .../api-ms-win-appmodel-runtime-l1-1-3.def    |   9 +
  .../api-ms-win-core-atoms-l1-1-0.def  |  11 ++
  .../lib-common/api-ms-win-core-com-l1-1-1.def |  53 --
  .../api-ms-win-core-comm-l1-1-1.def   |  18 --
  .../api-ms-win-core-comm-l1-1-2.def   |  19 --
  .../api-ms-win-core-console-l1-1-0.def    |   1 -
  .../api-ms-win-core-console-l1-2-0.def    |  13 --
  .../api-ms-win-core-console-l2-1-0.def    |   5 -
  .../api-ms-win-core-console-l2-2-0.def    |  33 
  .../api-ms-win-core-datetime-l1-1-1.def   |   4 -
  .../api-ms-win-core-datetime-l1-1-2.def   |   6 -
  .../api-ms-win-core-debug-l1-1-1.def  |   4 -
  .../api-ms-win-core-delayload-l1-1-0.def  |   5 +
  .../api-ms-win-core-delayload-l1-1-1.def  |   1 -
  .../api-ms-win-core-errorhandling-l1-1-1.def  |   7 -
  .../api-ms-win-core-errorhandling-l1-1-2.def  |   5 +
  .../api-ms-win-core-errorhandling-l1-1-3.def  |  10 --
  .../api-ms-win-core-featurestaging-l1-1-1.def |   5 -
  .../api-ms-win-core-fibers-l1-1-0.def |   8 +
  .../api-ms-win-core-fibers-l1-1-1.def |   4 -
  .../api-ms-win-core-fibers-l2-1-0.def |   7 +
  .../api-ms-win-core-fibers-l2-1-1.def |   3 -
  .../api-ms-win-core-file-l1-1-0.def   |   1 -
  .../api-ms-win-core-file-l1-2-0.def   |  73 
  .../api-ms-win-core-file-l1-2-1.def   |  81 -
  .../api-ms-win-core-file-l1-2-2.def   |  77 
  .../api-ms-win-core-file-l2-1-1.def   |  15 --
  .../api-ms-win-core-file-l2-1-2.def   |  11 --
  .../api-ms-win-core-heap-l1-1-0.def   |   1 -
  .../api-ms-win-core-heap-l1-2-0.def   |  19 --
  .../api-ms-win-core-heap-obsolete-l1-1-0.def  |   5 -
  .../api-ms-win-core-interlocked-l1-1-0.def    |   6 +
  .../api-ms-win-core-interlocked-l1-2-0.def    |   5 -
  .../lib-common/api-ms-win-core-io-l1-1-1.def  |   7 -
  .../lib-common/api-ms-win-core-job-l2-1-0.def |   7 +
  ...api-ms-win-core-kernel32-legacy-l1-1-0.def |  15 --
  ...api-ms-win-core-kernel32-legacy-l1-1-1.def |  35 
  ...api-ms-win-core-kernel32-legacy-l1-1-2.def |   8 +
  ...api-ms-win-core-kernel32-legacy-l1-1-5.def |   5 +
  .../api-ms-win-core-libraryloader-l1-2-1.def  |  23 ---
  .../api-ms-win-core-libraryloader-l1-2-2.def  |   5 +
  .../api-ms-win-core-localization-l1-2-1.def   |  58 --
  .../api-ms-win-core-localization-l1-2-2.def   |  59 --
  ...-win-core-localization-obsolete-l1-2-0.def |   2 -
  .../api-ms-win-core-memory-l1-1-1.def |  16 --
  .../api-ms-win-core-memory-l1-1-2.def |  26 ---
  .../api-ms-win-core-memory-l1-1-3.def |  29 ---
  .../api-ms-win-core-memory-l1-1-5.def |  33 
  .../api-ms-win-core-memory-l1-1-6.def |  35 
  .../api-ms-win-core-memory-l1-1-7.def |  37 
  .../api-ms-win-core-namedpipe-ansi-l1-1-1.def |   3 -
  .../api-ms-win-core-namedpipe-l1-2-1.def  |  10 --
  .../api-ms-win-core-namedpipe-l1-2-2.def  |  12 --
  

Re: [Mingw-w64-public] [PATCH 0/5] Update windowsapp to match the one in 20H1

2023-06-26 Thread Steve Lhomme
BTW I tested this on VLC build and it all links fine (once the Rtl 
functions are added).


On 2023-06-26 15:31, Steve Lhomme wrote:

windowsapp.lib and the target DLL for each API entry keeps evolving.
So far the files and entries were mostly added manually when needed.
This patchset creates the actual equivalent to what is found in windowsapp.lib.

The previous mass edits were generated from a WACK to .def tool. This time
instead of the WACK that is permitting more functions to define multiple times
it's exactly the same DLL that windowsapp.lib uses and not multiple ones.

A few Rtl function not found in windowsapp.lib were added because they are
needed by libunwind. They are allowed by the WACK and found in that DLL on my
system. But for some reason they are not in windowsapp.lib...

There are a lot of inconsistencies between the WACK, windowsapp.lib, the
windowsapp documentation [1] and the function documentation. The most 
restrictive
is the windowsapp.lib. If a function is not in there, it should not link when
building for UWP (we are lacking onecore.lib and onecoreuap.lib). So we should
not allow the linking either in mingw-w64.

[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis

Steve Lhomme (5):
   crt: don't generate libgamemode.a for windowsapp
   crt: order libs alphabetically in windowsapp
   crt: move some Rtl functions to rtlsupport-l1-1-0
   crt: update windowsapp to the 18362/19H1 SDK
   crt: update windowsapp to the 19041/20H1 SDK

  mingw-w64-crt/Makefile.am | 168 +++---
  .../api-ms-win-appmodel-runtime-l1-1-1.def|  20 ---
  .../api-ms-win-appmodel-runtime-l1-1-2.def|  12 ++
  .../api-ms-win-appmodel-runtime-l1-1-3.def|   9 +
  .../api-ms-win-core-atoms-l1-1-0.def  |  11 ++
  .../lib-common/api-ms-win-core-com-l1-1-1.def |  53 --
  .../api-ms-win-core-comm-l1-1-1.def   |  18 --
  .../api-ms-win-core-comm-l1-1-2.def   |  19 --
  .../api-ms-win-core-console-l1-1-0.def|   1 -
  .../api-ms-win-core-console-l1-2-0.def|  13 --
  .../api-ms-win-core-console-l2-1-0.def|   5 -
  .../api-ms-win-core-console-l2-2-0.def|  33 
  .../api-ms-win-core-datetime-l1-1-1.def   |   4 -
  .../api-ms-win-core-datetime-l1-1-2.def   |   6 -
  .../api-ms-win-core-debug-l1-1-1.def  |   4 -
  .../api-ms-win-core-delayload-l1-1-0.def  |   5 +
  .../api-ms-win-core-delayload-l1-1-1.def  |   1 -
  .../api-ms-win-core-errorhandling-l1-1-1.def  |   7 -
  .../api-ms-win-core-errorhandling-l1-1-2.def  |   5 +
  .../api-ms-win-core-errorhandling-l1-1-3.def  |  10 --
  .../api-ms-win-core-featurestaging-l1-1-1.def |   5 -
  .../api-ms-win-core-fibers-l1-1-0.def |   8 +
  .../api-ms-win-core-fibers-l1-1-1.def |   4 -
  .../api-ms-win-core-fibers-l2-1-0.def |   7 +
  .../api-ms-win-core-fibers-l2-1-1.def |   3 -
  .../api-ms-win-core-file-l1-1-0.def   |   1 -
  .../api-ms-win-core-file-l1-2-0.def   |  73 
  .../api-ms-win-core-file-l1-2-1.def   |  81 -
  .../api-ms-win-core-file-l1-2-2.def   |  77 
  .../api-ms-win-core-file-l2-1-1.def   |  15 --
  .../api-ms-win-core-file-l2-1-2.def   |  11 --
  .../api-ms-win-core-heap-l1-1-0.def   |   1 -
  .../api-ms-win-core-heap-l1-2-0.def   |  19 --
  .../api-ms-win-core-heap-obsolete-l1-1-0.def  |   5 -
  .../api-ms-win-core-interlocked-l1-1-0.def|   6 +
  .../api-ms-win-core-interlocked-l1-2-0.def|   5 -
  .../lib-common/api-ms-win-core-io-l1-1-1.def  |   7 -
  .../lib-common/api-ms-win-core-job-l2-1-0.def |   7 +
  ...api-ms-win-core-kernel32-legacy-l1-1-0.def |  15 --
  ...api-ms-win-core-kernel32-legacy-l1-1-1.def |  35 
  ...api-ms-win-core-kernel32-legacy-l1-1-2.def |   8 +
  ...api-ms-win-core-kernel32-legacy-l1-1-5.def |   5 +
  .../api-ms-win-core-libraryloader-l1-2-1.def  |  23 ---
  .../api-ms-win-core-libraryloader-l1-2-2.def  |   5 +
  .../api-ms-win-core-localization-l1-2-1.def   |  58 --
  .../api-ms-win-core-localization-l1-2-2.def   |  59 --
  ...-win-core-localization-obsolete-l1-2-0.def |   2 -
  .../api-ms-win-core-memory-l1-1-1.def |  16 --
  .../api-ms-win-core-memory-l1-1-2.def |  26 ---
  .../api-ms-win-core-memory-l1-1-3.def |  29 ---
  .../api-ms-win-core-memory-l1-1-5.def |  33 
  .../api-ms-win-core-memory-l1-1-6.def |  35 
  .../api-ms-win-core-memory-l1-1-7.def |  37 
  .../api-ms-win-core-namedpipe-ansi-l1-1-1.def |   3 -
  .../api-ms-win-core-namedpipe-l1-2-1.def  |  10 --
  .../api-ms-win-core-namedpipe-l1-2-2.def  |  12 --
  .../api-ms-win-core-privateprofile-l1-1-0.def |   9 +
  .../api-ms-win-core-privateprofile-l1-1-1.def |   5 +
  ...in-core-processenvironment-ansi-l1-1-0.def |   5 +
  ...-ms-win-core-processenvironment-l1-2-0.def |  21 ---
  ...api-ms-win-core-processsnapshot-l1-1-0.def |  14 

[Mingw-w64-public] [PATCH 0/5] Update windowsapp to match the one in 20H1

2023-06-26 Thread Steve Lhomme
windowsapp.lib and the target DLL for each API entry keeps evolving.
So far the files and entries were mostly added manually when needed.
This patchset creates the actual equivalent to what is found in windowsapp.lib.

The previous mass edits were generated from a WACK to .def tool. This time
instead of the WACK that is permitting more functions to define multiple times
it's exactly the same DLL that windowsapp.lib uses and not multiple ones.

A few Rtl function not found in windowsapp.lib were added because they are
needed by libunwind. They are allowed by the WACK and found in that DLL on my
system. But for some reason they are not in windowsapp.lib...

There are a lot of inconsistencies between the WACK, windowsapp.lib, the
windowsapp documentation [1] and the function documentation. The most 
restrictive
is the windowsapp.lib. If a function is not in there, it should not link when
building for UWP (we are lacking onecore.lib and onecoreuap.lib). So we should
not allow the linking either in mingw-w64.

[1] https://learn.microsoft.com/en-us/uwp/win32-and-com/win32-apis

Steve Lhomme (5):
  crt: don't generate libgamemode.a for windowsapp
  crt: order libs alphabetically in windowsapp
  crt: move some Rtl functions to rtlsupport-l1-1-0
  crt: update windowsapp to the 18362/19H1 SDK
  crt: update windowsapp to the 19041/20H1 SDK

 mingw-w64-crt/Makefile.am | 168 +++---
 .../api-ms-win-appmodel-runtime-l1-1-1.def|  20 ---
 .../api-ms-win-appmodel-runtime-l1-1-2.def|  12 ++
 .../api-ms-win-appmodel-runtime-l1-1-3.def|   9 +
 .../api-ms-win-core-atoms-l1-1-0.def  |  11 ++
 .../lib-common/api-ms-win-core-com-l1-1-1.def |  53 --
 .../api-ms-win-core-comm-l1-1-1.def   |  18 --
 .../api-ms-win-core-comm-l1-1-2.def   |  19 --
 .../api-ms-win-core-console-l1-1-0.def|   1 -
 .../api-ms-win-core-console-l1-2-0.def|  13 --
 .../api-ms-win-core-console-l2-1-0.def|   5 -
 .../api-ms-win-core-console-l2-2-0.def|  33 
 .../api-ms-win-core-datetime-l1-1-1.def   |   4 -
 .../api-ms-win-core-datetime-l1-1-2.def   |   6 -
 .../api-ms-win-core-debug-l1-1-1.def  |   4 -
 .../api-ms-win-core-delayload-l1-1-0.def  |   5 +
 .../api-ms-win-core-delayload-l1-1-1.def  |   1 -
 .../api-ms-win-core-errorhandling-l1-1-1.def  |   7 -
 .../api-ms-win-core-errorhandling-l1-1-2.def  |   5 +
 .../api-ms-win-core-errorhandling-l1-1-3.def  |  10 --
 .../api-ms-win-core-featurestaging-l1-1-1.def |   5 -
 .../api-ms-win-core-fibers-l1-1-0.def |   8 +
 .../api-ms-win-core-fibers-l1-1-1.def |   4 -
 .../api-ms-win-core-fibers-l2-1-0.def |   7 +
 .../api-ms-win-core-fibers-l2-1-1.def |   3 -
 .../api-ms-win-core-file-l1-1-0.def   |   1 -
 .../api-ms-win-core-file-l1-2-0.def   |  73 
 .../api-ms-win-core-file-l1-2-1.def   |  81 -
 .../api-ms-win-core-file-l1-2-2.def   |  77 
 .../api-ms-win-core-file-l2-1-1.def   |  15 --
 .../api-ms-win-core-file-l2-1-2.def   |  11 --
 .../api-ms-win-core-heap-l1-1-0.def   |   1 -
 .../api-ms-win-core-heap-l1-2-0.def   |  19 --
 .../api-ms-win-core-heap-obsolete-l1-1-0.def  |   5 -
 .../api-ms-win-core-interlocked-l1-1-0.def|   6 +
 .../api-ms-win-core-interlocked-l1-2-0.def|   5 -
 .../lib-common/api-ms-win-core-io-l1-1-1.def  |   7 -
 .../lib-common/api-ms-win-core-job-l2-1-0.def |   7 +
 ...api-ms-win-core-kernel32-legacy-l1-1-0.def |  15 --
 ...api-ms-win-core-kernel32-legacy-l1-1-1.def |  35 
 ...api-ms-win-core-kernel32-legacy-l1-1-2.def |   8 +
 ...api-ms-win-core-kernel32-legacy-l1-1-5.def |   5 +
 .../api-ms-win-core-libraryloader-l1-2-1.def  |  23 ---
 .../api-ms-win-core-libraryloader-l1-2-2.def  |   5 +
 .../api-ms-win-core-localization-l1-2-1.def   |  58 --
 .../api-ms-win-core-localization-l1-2-2.def   |  59 --
 ...-win-core-localization-obsolete-l1-2-0.def |   2 -
 .../api-ms-win-core-memory-l1-1-1.def |  16 --
 .../api-ms-win-core-memory-l1-1-2.def |  26 ---
 .../api-ms-win-core-memory-l1-1-3.def |  29 ---
 .../api-ms-win-core-memory-l1-1-5.def |  33 
 .../api-ms-win-core-memory-l1-1-6.def |  35 
 .../api-ms-win-core-memory-l1-1-7.def |  37 
 .../api-ms-win-core-namedpipe-ansi-l1-1-1.def |   3 -
 .../api-ms-win-core-namedpipe-l1-2-1.def  |  10 --
 .../api-ms-win-core-namedpipe-l1-2-2.def  |  12 --
 .../api-ms-win-core-privateprofile-l1-1-0.def |   9 +
 .../api-ms-win-core-privateprofile-l1-1-1.def |   5 +
 ...in-core-processenvironment-ansi-l1-1-0.def |   5 +
 ...-ms-win-core-processenvironment-l1-2-0.def |  21 ---
 ...api-ms-win-core-processsnapshot-l1-1-0.def |  14 ++
 .../api-ms-win-core-processthreads-l1-1-1.def |  49 -
 .../api-ms-win-core-processthreads-l1-1-2.def |  63 ---
 .../api-ms-win-core-processthreads-l1-1-3.def |  67 ---