commit e325266c5ef32e68bdd3aab0eced7459bad4f89b
parent c5e405f03582c4747fca0d873b5107d220397816
Author: d.levin256@gmail.com <d.levin256@gmail.com>
Date: Wed, 14 Feb 2024 07:48:28 +0000
windows arm64 build
Diffstat:
3 files changed, 38 insertions(+), 0 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
@@ -64,6 +64,27 @@ jobs:
name: windows-x86_64
path: ${{ github.workspace }}/dist
+ binaries-windows-arm64:
+ runs-on: windows-2022
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Build
+ shell: cmd
+ run: |
+ choco install llvm --version 17.0.6 --no-progress -y
+ choco install ninja --no-progress -y
+ call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsamd64_arm64.bat"
+ cmake -B build-release -S . -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/dist -GNinja -DKFR_ENABLE_CAPI_BUILD=ON -DKFR_ARCH=target -DCMAKE_CXX_COMPILER_TARGET=arm64-pc-windows-msvc -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang-cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" -DCMAKE_AR="C:/Program Files/LLVM/bin/llvm-lib.exe"
+ cmake -B build-debug -S . -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/dist -GNinja -DKFR_ENABLE_CAPI_BUILD=ON -DKFR_ARCH=target -DCMAKE_CXX_COMPILER_TARGET=arm64-pc-windows-msvc -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang-cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" -DCMAKE_AR="C:/Program Files/LLVM/bin/llvm-lib.exe"
+ ninja -C build-release install
+ ninja -C build-debug install
+ - name: Binaries
+ uses: actions/upload-artifact@v4
+ with:
+ name: windows-arm64
+ path: ${{ github.workspace }}/dist
+
binaries-macos-x86_64:
runs-on: macos-13
steps:
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
@@ -93,6 +93,19 @@ jobs:
set PATH=C:\sde;%PATH%
ci\run.cmd build-release -DKFR_ENABLE_CAPI_BUILD=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DKFR_ARCH_TESTS=sse2,ssse3,sse42,avx,avx2,avx512 -DKFR_ENABLE_MULTIARCH=ON -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang-cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" -DKFR_USE_SDE=ON -DKFR_ARCH=sse2 -DCMAKE_BUILD_TYPE=Release -DCMAKE_AR="C:/Program Files/LLVM/bin/llvm-lib.exe"
+ windows2022-clang17-arm64:
+ runs-on: windows-2022
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ - name: Tests
+ shell: cmd
+ run: |
+ choco install llvm --version 17.0.6 --no-progress -y
+ choco install ninja --no-progress -y
+ call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvarsamd64_arm64.bat"
+ ci\run.cmd build-release -DKFR_ENABLE_CAPI_BUILD=ON -DCMAKE_POSITION_INDEPENDENT_CODE=ON -DCMAKE_CXX_COMPILER="C:/Program Files/LLVM/bin/clang-cl.exe" -DCMAKE_LINKER="C:/Program Files/LLVM/bin/lld-link.exe" -DCMAKE_CXX_COMPILER_TARGET=arm64-pc-windows-msvc -DKFR_ARCH=target -DKFR_SKIP_TESTS=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_AR="C:/Program Files/LLVM/bin/llvm-lib.exe"
+
windows2022-msvc2022-x86:
runs-on: windows-2022
steps:
diff --git a/CMakeLists.txt b/CMakeLists.txt
@@ -147,6 +147,10 @@ if (CMAKE_OSX_ARCHITECTURES MATCHES "^[Aa][Rr][Mm]64$")
set(X86 FALSE)
endif ()
+if (CMAKE_CXX_COMPILER_TARGET MATCHES "^arm")
+ set(X86 FALSE)
+endif ()
+
if (CMAKE_SIZEOF_VOID_P EQUAL 8)
set(BITNESS64 TRUE)
else ()