mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-18 18:20:39 +08:00
ci: 在 macOS 上使用 clang 18
This commit is contained in:
15
.github/workflows/ci.yml
vendored
15
.github/workflows/ci.yml
vendored
@@ -296,10 +296,14 @@ jobs:
|
||||
|
||||
macOS-Core:
|
||||
needs: meta
|
||||
runs-on: macos-14
|
||||
strategy:
|
||||
matrix:
|
||||
arch: [arm64, x86_64]
|
||||
include:
|
||||
- os: macos-13
|
||||
arch: x86_64
|
||||
- os: macos-14
|
||||
arch: arm64
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v4
|
||||
@@ -308,7 +312,7 @@ jobs:
|
||||
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
brew install ninja
|
||||
brew install ninja llvm@18
|
||||
|
||||
- name: Bootstrap MaaDeps
|
||||
run: |
|
||||
@@ -319,7 +323,10 @@ jobs:
|
||||
|
||||
- name: Configure MaaCore
|
||||
run: |
|
||||
cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES='${{ matrix.arch }}' -DMAA_VERSION='${{ needs.meta.outputs.tag }}'
|
||||
LLVM_PREFIX=$(brew --prefix llvm)
|
||||
cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DCMAKE_OSX_ARCHITECTURES='${{ matrix.arch }}' -DMAA_VERSION='${{ needs.meta.outputs.tag }}' \
|
||||
-DCMAKE_C_COMPILER=${LLVM_PREFIX}/bin/clang \
|
||||
-DCMAKE_CXX_COMPILER=${LLVM_PREFIX}/bin/clang++
|
||||
|
||||
- name: Build MaaCore
|
||||
run: |
|
||||
|
||||
@@ -50,6 +50,20 @@ else ()
|
||||
endif()
|
||||
endif ()
|
||||
|
||||
if (CMAKE_CXX_COMPILER_ID STREQUAL "Clang" AND CMAKE_CXX_COMPILER_VERSION VERSION_GREATER_EQUAL "18.0")
|
||||
execute_process(
|
||||
COMMAND brew --prefix llvm
|
||||
OUTPUT_VARIABLE LLVM_PREFIX
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
)
|
||||
message(STATUS "LLVM prefix=${LLVM_PREFIX}")
|
||||
target_link_options(MaaCore PRIVATE
|
||||
"-L${LLVM_PREFIX}/lib/c++"
|
||||
"-L${LLVM_PREFIX}/lib"
|
||||
"-lunwind"
|
||||
)
|
||||
endif()
|
||||
|
||||
if (WIN32)
|
||||
#注意:相比VS版本缺少了 -D_CONSOLE -D_WINDLL 两项
|
||||
target_compile_definitions(MaaCore PRIVATE ASST_DLL_EXPORTS _UNICODE UNICODE)
|
||||
|
||||
Reference in New Issue
Block a user