mirror of
https://github.com/reactos/reactos.git
synced 2024-07-04 11:44:33 +00:00
111 lines
4.2 KiB
YAML
111 lines
4.2 KiB
YAML
name: Build
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build-msvc-arm:
|
|
strategy:
|
|
matrix:
|
|
toolset: ['14.2', '14.1'] # VS 2019, 2017
|
|
arch: [arm, arm64]
|
|
config: [Debug, Release]
|
|
fail-fast: false
|
|
runs-on: windows-latest
|
|
steps:
|
|
- name: Install ninja
|
|
run: choco install -y ninja
|
|
- 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: Activate VS cmd (arm)
|
|
if: ${{ matrix.arch == 'arm' }}
|
|
uses: ilammy/msvc-dev-cmd@v1
|
|
with:
|
|
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@v3
|
|
with:
|
|
path: src
|
|
- 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 subsystems
|
|
if: ${{ matrix.arch == 'arm' }}
|
|
run: cmake --build build --target subsystems/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@v3
|
|
with:
|
|
name: reactos-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
|
path: |
|
|
build/base
|
|
build/dll/cpl
|
|
build/modules/rosapps
|
|
build/subsystems
|
|
!**/CMakeFiles
|
|
!**/cmake_install.cmake
|
|
!**/*.asm
|
|
!**/*.bin
|
|
!**/*.c
|
|
!**/*.def
|
|
!**/*.exp
|
|
!**/*.h
|
|
!**/*.lib
|
|
!**/*.mc
|
|
!**/*.obj
|
|
!**/*.rc
|
|
!**/*.tlb
|
|
- name: Upload debug symbols
|
|
if: ${{ matrix.config == 'Debug' }}
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: reactos-syms-msvc${{matrix.toolset}}-${{matrix.arch}}-${{matrix.config}}-${{github.sha}}
|
|
path: build/msvc_pdb
|
|
|
|
# Disable MSBuild for the moment being until a proper fix is provided -- see CORE-18911
|
|
# build-msbuild-i386:
|
|
# name: MSBuild (i386)
|
|
# runs-on: windows-2019
|
|
# steps:
|
|
# - 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@v3
|
|
# with:
|
|
# path: src
|
|
# - name: Configure
|
|
# run: |
|
|
# mkdir build
|
|
# cd build
|
|
# cmake -G "Visual Studio 16 2019" -A Win32 -DCMAKE_TOOLCHAIN_FILE:FILEPATH=toolchain-msvc.cmake -DARCH:STRING=i386 -DENABLE_ROSTESTS=1 -DENABLE_ROSAPPS=1 ${{github.workspace}}\src
|
|
# - name: Build
|
|
# run: cmake --build ${{github.workspace}}\build --target bootcd --target livecd
|