This commit is contained in:
77
.gitea/workflows/build.yml
Normal file
77
.gitea/workflows/build.yml
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
name: Build
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build:
|
||||||
|
name: Build
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v5
|
||||||
|
with:
|
||||||
|
persist-credentials: true
|
||||||
|
|
||||||
|
- name: Checkout lfs
|
||||||
|
run: |
|
||||||
|
git lfs install --local
|
||||||
|
AUTH=$(git config --local http.${{ github.server_url }}/.extraheader)
|
||||||
|
git config --local --unset http.${{ github.server_url }}/.extraheader
|
||||||
|
git config --local http.${{ github.server_url }}/${{ github.repository }}.git/info/lfs/objects/batch.extraheader "$AUTH"
|
||||||
|
git lfs pull
|
||||||
|
|
||||||
|
- name: Apt update
|
||||||
|
run: sudo apt update
|
||||||
|
|
||||||
|
- name: Installing build chain
|
||||||
|
run: sudo apt-get install pigz ninja-build g++ clang pkg-config cmake libtbb-dev
|
||||||
|
-y;
|
||||||
|
|
||||||
|
- name: Cache CPM
|
||||||
|
uses: actions/cache@v5
|
||||||
|
with:
|
||||||
|
path: "~/.cache/CPM/"
|
||||||
|
key: ${{ runner.os }}-CPM
|
||||||
|
|
||||||
|
- name: Configure debug
|
||||||
|
run: mkdir -p build; mkdir -p build/debug; cd build/debug; cmake ../../ -G Ninja
|
||||||
|
-DCMAKE_BUILD_TYPE=Debug;
|
||||||
|
|
||||||
|
- name: Configure Release
|
||||||
|
run: mkdir -p build; mkdir -p build/Release; cd build/Release; cmake ../../ -G
|
||||||
|
Ninja -DCMAKE_BUILD_TYPE=Release;
|
||||||
|
|
||||||
|
- name: Configure MinSizeRel
|
||||||
|
run: mkdir -p build; mkdir -p build/minsizerel; cd build/minsizerel; cmake
|
||||||
|
../../ -G Ninja -DCMAKE_BUILD_TYPE=MinSizeRel;
|
||||||
|
|
||||||
|
- name: Configure RelWithDeb
|
||||||
|
run: mkdir -p build; mkdir -p build/relwithdeb; cd build/relwithdeb; cmake
|
||||||
|
../../ -G Ninja -DCMAKE_BUILD_TYPE=RelWithDeb;
|
||||||
|
|
||||||
|
- name: Build debug
|
||||||
|
run: cd build/debug; ninja;
|
||||||
|
|
||||||
|
- name: Build Release
|
||||||
|
run: cd build/release; ninja;
|
||||||
|
|
||||||
|
- name: Build RelWithDeb
|
||||||
|
run: cd build/relwithdeb; ninja;
|
||||||
|
|
||||||
|
- name: Build MinSizeRel
|
||||||
|
run: cd build/MinSizeRel; ninja;
|
||||||
|
|
||||||
|
- name: Packaging
|
||||||
|
run: |-
|
||||||
|
tar -I 'pigz -9' -cf buildscript-debug-amd64.tar.gz --transform 's,^,build-script/,' build/debug LICENSE;
|
||||||
|
tar -I 'pigz -9' -cf buildscript-release-amd64.tar.gz --transform 's,^,build-script/,' build/release LICENSE;
|
||||||
|
tar -I 'pigz -9' -cf buildscript-relwithdeb-amd64.tar.gz --transform 's,^,build-script/,' build/relwithdeb LICENSE;
|
||||||
|
tar -I 'pigz -9' -cf buildscript-minsizerel-amd64.tar.gz --transform 's,^,build-script/,' build/minsizerel LICENSE;
|
||||||
|
|
||||||
|
- uses: akkuman/gitea-release-action@v1
|
||||||
|
with:
|
||||||
|
files: |-
|
||||||
|
buildscript-debug-amd64.tar.gz
|
||||||
|
buildscript-release-amd64.tar.gz
|
||||||
|
buildscript-relwithdeb-amd64.tar.gz
|
||||||
|
buildscript-minsizerel-amd64.tar.gz
|
||||||
Reference in New Issue
Block a user