https://git.reactos.org/?p=reactos.git;a=commitdiff;h=8b55d712a75d2da462a96a...
commit 8b55d712a75d2da462a96adff4f6684c0b43e2d6 Author: Stanislav Motylkov x86corez@gmail.com AuthorDate: Wed May 25 18:38:41 2022 +0300 Commit: Stanislav Motylkov x86corez@gmail.com CommitDate: Wed May 25 21:10:17 2022 +0300
[GITHUB] Add MSVC ARM64 builder
This builds only some applications for now.
CORE-17518 --- .github/workflows/build.yml | 17 +++++++++++++++-- sdk/include/c++/stlport/stl/config/features.h | 2 +- win32ss/user/user32/user32.spec | 4 ++-- 3 files changed, 18 insertions(+), 5 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b45b9b1d87b..50f2c5ac91b 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -141,7 +141,7 @@ jobs: strategy: matrix: toolset: ['14.2', '14.1'] # VS 2019, 2017 - arch: [arm] + arch: [arm, arm64] config: [Debug, Release] fail-fast: false runs-on: windows-latest @@ -156,9 +156,16 @@ jobs: echo "BISON_PKGDATADIR=${{github.workspace}}\bin\share\bison" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append echo "M4=${{github.workspace}}\bin\m4.exe" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append - name: Activate VS cmd (arm) + if: ${{ matrix.arch == 'arm' }} uses: ilammy/msvc-dev-cmd@v1 with: - arch: x86_arm + arch: amd64_arm + toolset: ${{matrix.toolset}} + - name: Activate VS cmd (arm64) + if: ${{ matrix.arch == 'arm64' }} + uses: ilammy/msvc-dev-cmd@v1 + with: + arch: amd64_arm64 toolset: ${{matrix.toolset}} - name: Source checkout uses: actions/checkout@v2 @@ -167,11 +174,17 @@ jobs: - name: Configure run: cmake -S src -B build -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.config}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 - name: Build base module + if: ${{ matrix.arch == 'arm' }} run: cmake --build build --target base/all - name: Build control panel applets + if: ${{ matrix.arch == 'arm' }} run: cmake --build build --target dll/cpl/all - name: Build rosapps + if: ${{ matrix.arch == 'arm' }} run: cmake --build build --target modules/rosapps/all + - name: Build some applications (arm64) + if: ${{ matrix.arch == 'arm64' }} + run: cmake --build build --target calc magnify mstsc notepad osk regedit taskmgr winmine wordpad base/applications/screensavers/all -- -k0 - name: Upload compiled binaries uses: actions/upload-artifact@v2 with: diff --git a/sdk/include/c++/stlport/stl/config/features.h b/sdk/include/c++/stlport/stl/config/features.h index aacbf2904d5..3379bff5473 100644 --- a/sdk/include/c++/stlport/stl/config/features.h +++ b/sdk/include/c++/stlport/stl/config/features.h @@ -162,7 +162,7 @@ # if defined (_MIPSEB) || defined (__sparc) || defined (_AIX) || \ defined (__hpux) || defined (macintosh) || defined (_MAC) # define _STLP_BIG_ENDIAN 1 -# elif defined (__i386) || defined (_M_IX86) || defined (_M_ARM) || \ +# elif defined (__i386) || defined (_M_IX86) || defined (_M_ARM) || defined (_M_ARM64) || \ defined (__amd64__) || defined (_M_AMD64) || defined (__x86_64__) || \ defined (__alpha__) # define _STLP_LITTLE_ENDIAN 1 diff --git a/win32ss/user/user32/user32.spec b/win32ss/user/user32/user32.spec index c7097cc662b..6af9bbc06b0 100644 --- a/win32ss/user/user32/user32.spec +++ b/win32ss/user/user32/user32.spec @@ -252,8 +252,8 @@ 251 stdcall GetClassInfoExW(long wstr ptr) 252 stdcall GetClassInfoW(long wstr ptr) 253 stdcall GetClassLongA(long long) -@ stdcall -arch=x86_64 GetClassLongPtrA(ptr long) -@ stdcall -arch=x86_64 GetClassLongPtrW(ptr long) +@ stdcall -arch=x86_64,arm64 GetClassLongPtrA(ptr long) +@ stdcall -arch=x86_64,arm64 GetClassLongPtrW(ptr long) 254 stdcall GetClassLongW(long long) 255 stdcall GetClassNameA(long ptr long) 256 stdcall GetClassNameW(long ptr long)