https://git.reactos.org/?p=reactos.git;a=commitdiff;h=8b55d712a75d2da462a96adff4f6684c0b43e2d6

commit 8b55d712a75d2da462a96adff4f6684c0b43e2d6
Author:     Stanislav Motylkov <[email protected]>
AuthorDate: Wed May 25 18:38:41 2022 +0300
Commit:     Stanislav Motylkov <[email protected]>
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)

Reply via email to