chore: add github action workflows
This commit is contained in:
18
.github/macos_build.sh
vendored
Normal file
18
.github/macos_build.sh
vendored
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Create build directory and enter it
|
||||||
|
mkdir bin
|
||||||
|
cd bin
|
||||||
|
# Create internal build and install directory, then enter it
|
||||||
|
mkdir build
|
||||||
|
mkdir install
|
||||||
|
cd build
|
||||||
|
|
||||||
|
# Build in Release mode
|
||||||
|
cmake -DCMAKE_BUILD_TYPE=Release ../..
|
||||||
|
cmake --build .
|
||||||
|
cmake --install . --prefix=../install
|
||||||
|
|
||||||
|
# Back to root directory
|
||||||
|
cd ..
|
||||||
|
cd ..
|
||||||
2
.github/windows_build.bat
vendored
2
.github/windows_build.bat
vendored
@@ -11,7 +11,7 @@ CD build
|
|||||||
:: Build with x64 architecture in Release mode
|
:: Build with x64 architecture in Release mode
|
||||||
cmake -A x64 ../..
|
cmake -A x64 ../..
|
||||||
cmake --build . --config Release
|
cmake --build . --config Release
|
||||||
cmake --install . --prefix=../install --config Relese
|
cmake --install . --prefix=../install --config Release
|
||||||
|
|
||||||
:: Back to root directory
|
:: Back to root directory
|
||||||
CD ..
|
CD ..
|
||||||
|
|||||||
46
.github/workflows/linux.yml
vendored
Normal file
46
.github/workflows/linux.yml
vendored
Normal file
@@ -0,0 +1,46 @@
|
|||||||
|
name: YYCC Linux Build
|
||||||
|
|
||||||
|
on: [workflow_dispatch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
linux-build:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Install Dependencies
|
||||||
|
run: |
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y build-essential cmake git
|
||||||
|
# - name: Setup Google Test and Google Benchmark
|
||||||
|
# run: |
|
||||||
|
# # Setup Google Test
|
||||||
|
# git clone -b v1.17.0 https://github.com/google/googletest.git external/googletest
|
||||||
|
# cd external/googletest
|
||||||
|
# mkdir build install
|
||||||
|
# cd build
|
||||||
|
# cmake -DCMAKE_CXX_STANDARD=23 -Dgtest_force_shared_crt=ON -DCMAKE_BUILD_TYPE=Release ..
|
||||||
|
# cmake --build .
|
||||||
|
# cmake --install . --prefix=../install
|
||||||
|
# cd ../..
|
||||||
|
# # Setup Google Benchmark
|
||||||
|
# git clone -b v1.9.4 https://github.com/google/benchmark.git external/benchmark
|
||||||
|
# cd external/benchmark
|
||||||
|
# # Create symlink to googletest as required by benchmark
|
||||||
|
# ln -s ../googletest googletest
|
||||||
|
# mkdir build install
|
||||||
|
# cd build
|
||||||
|
# cmake -DCMAKE_CXX_STANDARD=23 -DBENCHMARK_ENABLE_TESTING=OFF -DCMAKE_BUILD_TYPE=Release ..
|
||||||
|
# cmake --build .
|
||||||
|
# cmake --install . --prefix=../install
|
||||||
|
# cd ../..
|
||||||
|
- name: Build YYCC
|
||||||
|
run: |
|
||||||
|
./.github/linux_build.sh
|
||||||
|
- name: Upload Built Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: YYCC-linux-build
|
||||||
|
path: bin/install/*
|
||||||
|
retention-days: 30
|
||||||
42
.github/workflows/macos.yml
vendored
Normal file
42
.github/workflows/macos.yml
vendored
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
name: YYCC macOS Build
|
||||||
|
|
||||||
|
on: [workflow_dispatch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
macos-build:
|
||||||
|
runs-on: macos-latest
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
# - name: Setup Google Test and Google Benchmark
|
||||||
|
# run: |
|
||||||
|
# # Setup Google Test
|
||||||
|
# git clone -b v1.17.0 https://github.com/google/googletest.git external/googletest
|
||||||
|
# cd external/googletest
|
||||||
|
# mkdir build install
|
||||||
|
# cd build
|
||||||
|
# cmake -DCMAKE_CXX_STANDARD=23 -Dgtest_force_shared_crt=ON -DCMAKE_BUILD_TYPE=Release ..
|
||||||
|
# cmake --build .
|
||||||
|
# cmake --install . --prefix=../install
|
||||||
|
# cd ../..
|
||||||
|
# # Setup Google Benchmark
|
||||||
|
# git clone -b v1.9.4 https://github.com/google/benchmark.git external/benchmark
|
||||||
|
# cd external/benchmark
|
||||||
|
# # Create symlink to googletest as required by benchmark
|
||||||
|
# ln -s ../googletest googletest
|
||||||
|
# mkdir build install
|
||||||
|
# cd build
|
||||||
|
# cmake -DCMAKE_CXX_STANDARD=23 -DBENCHMARK_ENABLE_TESTING=OFF -DCMAKE_BUILD_TYPE=Release ..
|
||||||
|
# cmake --build .
|
||||||
|
# cmake --install . --prefix=../install
|
||||||
|
# cd ../..
|
||||||
|
- name: Build YYCC
|
||||||
|
run: |
|
||||||
|
./.github/macos_build.sh
|
||||||
|
- name: Upload Built Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: YYCC-macos-build
|
||||||
|
path: bin/install/*
|
||||||
|
retention-days: 30
|
||||||
35
.github/workflows/nightly.yml.disabled
vendored
35
.github/workflows/nightly.yml.disabled
vendored
@@ -1,35 +0,0 @@
|
|||||||
name: YYCC Nightly Build
|
|
||||||
|
|
||||||
on:
|
|
||||||
workflow_dispatch:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- master
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
msvc-build:
|
|
||||||
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
vs: ['2019']
|
|
||||||
msvc_arch: ['x86']
|
|
||||||
|
|
||||||
runs-on: windows-2019
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Fetching Repository
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
- name: Building YYCC
|
|
||||||
shell: cmd
|
|
||||||
run: |
|
|
||||||
set VS=${{ matrix.vs }}
|
|
||||||
set VCVARS="C:\Program Files (x86)\Microsoft Visual Studio\%VS%\Enterprise\VC\Auxiliary\Build\vcvarsall.bat"
|
|
||||||
if not exist %VCVARS% set VCVARS="C:\Program Files\Microsoft Visual Studio\%VS%\Enterprise\VC\Auxiliary\Build\vcvarsall.bat"
|
|
||||||
call %VCVARS% ${{ matrix.msvc_arch }}
|
|
||||||
.\script\build.bat
|
|
||||||
- name: Uploading Nightly Build
|
|
||||||
uses: actions/upload-artifact@v3
|
|
||||||
with:
|
|
||||||
name: YYCC-windows-nightly
|
|
||||||
path: bin/install/*
|
|
||||||
retention-days: 30
|
|
||||||
55
.github/workflows/windows.yml
vendored
Normal file
55
.github/workflows/windows.yml
vendored
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
name: YYCC Windows Build
|
||||||
|
|
||||||
|
on: [workflow_dispatch]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
windows-build:
|
||||||
|
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
- vs: '2022'
|
||||||
|
msvc_arch: 'x64'
|
||||||
|
|
||||||
|
runs-on: windows-2022
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout Repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
# - name: Setup Google Test and Google Benchmark
|
||||||
|
# run: |
|
||||||
|
# # Setup Google Test
|
||||||
|
# git clone -b v1.17.0 https://github.com/google/googletest.git external/googletest
|
||||||
|
# cd external/googletest
|
||||||
|
# mkdir build install
|
||||||
|
# cd build
|
||||||
|
# cmake -DCMAKE_CXX_STANDARD=23 -Dgtest_force_shared_crt=ON -DCMAKE_BUILD_TYPE=Release ..
|
||||||
|
# cmake --build . --config Release
|
||||||
|
# cmake --install . --prefix=../install --config Release
|
||||||
|
# cd ../..
|
||||||
|
# # Setup Google Benchmark
|
||||||
|
# git clone -b v1.9.4 https://github.com/google/benchmark.git external/benchmark
|
||||||
|
# cd external/benchmark
|
||||||
|
# # Create symlink to googletest as required by benchmark
|
||||||
|
# mklink /D googletest ../googletest
|
||||||
|
# mkdir build install
|
||||||
|
# cd build
|
||||||
|
# cmake -DCMAKE_CXX_STANDARD=23 -DBENCHMARK_ENABLE_TESTING=OFF -DCMAKE_BUILD_TYPE=Release ..
|
||||||
|
# cmake --build . --config Release
|
||||||
|
# cmake --install . --prefix=../install --config Release
|
||||||
|
# cd ../..
|
||||||
|
- name: Build YYCC
|
||||||
|
shell: cmd
|
||||||
|
run: |
|
||||||
|
set VS=${{ matrix.vs }}
|
||||||
|
set VCVARS="C:\Program Files (x86)\Microsoft Visual Studio\%VS%\Enterprise\VC\Auxiliary\Build\vcvarsall.bat"
|
||||||
|
if not exist %VCVARS% set VCVARS="C:\Program Files\Microsoft Visual Studio\%VS%\Enterprise\VC\Auxiliary\Build\vcvarsall.bat"
|
||||||
|
call %VCVARS% ${{ matrix.msvc_arch }}
|
||||||
|
.\.github\windows_build.bat
|
||||||
|
- name: Upload Built Artifact
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: YYCC-windows-build
|
||||||
|
path: bin/install/*
|
||||||
|
retention-days: 30
|
||||||
|
|
||||||
Reference in New Issue
Block a user