mirror of
https://github.com/reactos/reactos.git
synced 2024-11-23 11:33:31 +08:00
[GITHUB] Add clang-cl amd64 build to CI
As before, use a matrix for Ninja+Msvc build
This commit is contained in:
parent
bc92234ea4
commit
e9cef3f216
124
.github/workflows/build.yml
vendored
124
.github/workflows/build.yml
vendored
@ -76,116 +76,58 @@ jobs:
|
||||
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{github.sha}}
|
||||
path: build/livecd.iso
|
||||
|
||||
build-clang-cl-i386:
|
||||
name: Clang-CL (i386)
|
||||
build-msvc:
|
||||
strategy:
|
||||
matrix:
|
||||
compiler: [msvc, clang-cl]
|
||||
arch: [i386, amd64]
|
||||
fail-fast: false
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Install packages
|
||||
- name: Install ninja
|
||||
run: choco install -y ninja
|
||||
- name: Install LLVM (x86)
|
||||
if: ${{ (matrix.compiler == 'clang-cl') && (matrix.arch == 'i386') }}
|
||||
run: |
|
||||
choco install ninja -y
|
||||
choco install --x86 -y llvm
|
||||
- name: Install Flex and Bison
|
||||
echo "LLVM_PATH=${env:PROGRAMFILES(X86)}\llvm\bin" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||
- name: Install LLVM (amd64)
|
||||
if: ${{ (matrix.compiler == 'clang-cl') && (matrix.arch == 'amd64') }}
|
||||
run: |
|
||||
choco install -y llvm
|
||||
echo "LLVM_PATH=${env:PROGRAMFILES}\llvm\bin" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
|
||||
- name: Install Flex & Bison
|
||||
run: |
|
||||
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
|
||||
7z x flexbison.7z -O${{github.workspace}}\bin
|
||||
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
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: Add CL to PATH
|
||||
- name: Activate VS cmd (x86)
|
||||
if: ${{ matrix.arch == 'i386' }}
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: amd64_x86
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Configure
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
$env:PATH = "${env:PROGRAMFILES(X86)}\llvm\bin;$env:PATH"
|
||||
cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 -DUSE_CLANG_CL:BOOL=1 ${{github.workspace}}\src
|
||||
- name: Build
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: cmake --build .
|
||||
- name: Generate ISOs
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: |
|
||||
cmake --build . --target bootcd
|
||||
cmake --build . --target livecd
|
||||
|
||||
build-msvc-i386:
|
||||
name: MSVC (i386)
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Install packages
|
||||
run: choco install ninja -y
|
||||
- name: Install Flex and Bison
|
||||
run: |
|
||||
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
|
||||
7z x flexbison.7z -O${{github.workspace}}\bin
|
||||
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
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: Add CL to PATH
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: amd64_x86
|
||||
- uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Configure
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
||||
- name: Build
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: cmake --build .
|
||||
- name: Generate ISOs
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: |
|
||||
cmake --build . --target bootcd
|
||||
cmake --build . --target livecd
|
||||
- name: Upload bootcd
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-msvc-i386-${{github.sha}}
|
||||
path: build/bootcd.iso
|
||||
- name: Upload livecd
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-msvc-i386-${{github.sha}}
|
||||
path: build/livecd.iso
|
||||
|
||||
build-msvc-amd64:
|
||||
name: MSVC (amd64)
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- name: Install packages
|
||||
run: choco install ninja -y
|
||||
- name: Install Flex and Bison
|
||||
run: |
|
||||
curl -O https://svn.reactos.org/storage/vperevertkin/flexbison.7z
|
||||
7z x flexbison.7z -O${{github.workspace}}\bin
|
||||
echo "${{github.workspace}}\bin" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
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: Add CL to PATH
|
||||
- name: Activate VS cmd (amd64)
|
||||
if: ${{ matrix.arch == 'amd64' }}
|
||||
uses: ilammy/msvc-dev-cmd@v1
|
||||
with:
|
||||
arch: amd64
|
||||
- uses: actions/checkout@v2
|
||||
- name: Add LLVM to PATH
|
||||
if: ${{ matrix.compiler == 'clang-cl' }}
|
||||
run: echo "${env:LLVM_PATH}" | Out-File -FilePath $env:GITHUB_PATH -Encoding utf8 -Append
|
||||
- name: Source checkout
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
path: src
|
||||
- name: Create Build directory
|
||||
run: mkdir build
|
||||
- name: Configure
|
||||
run: |
|
||||
mkdir build
|
||||
cd build
|
||||
cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=amd64 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: cmake -G Ninja -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=${{matrix.arch}} -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 -DUSE_CLANG_CL:BOOL=${{matrix.compiler == 'clang-cl'}} ${{github.workspace}}\src
|
||||
- name: Build
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: |
|
||||
cmake --build .
|
||||
run: cmake --build .
|
||||
- name: Generate ISOs
|
||||
working-directory: ${{github.workspace}}\build
|
||||
run: |
|
||||
@ -194,12 +136,12 @@ jobs:
|
||||
- name: Upload bootcd
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-msvc-amd64-${{github.sha}}
|
||||
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{github.sha}}
|
||||
path: build/bootcd.iso
|
||||
- name: Upload livecd
|
||||
uses: actions/upload-artifact@v2
|
||||
with:
|
||||
name: reactos-msvc-amd64-${{github.sha}}
|
||||
name: reactos-${{matrix.compiler}}-${{matrix.arch}}-${{github.sha}}
|
||||
path: build/livecd.iso
|
||||
|
||||
build-msbuild-i386:
|
||||
|
Loading…
Reference in New Issue
Block a user