92 lines
4.4 KiB
YAML
92 lines
4.4 KiB
YAML
name: build
|
|
on: [push]
|
|
jobs:
|
|
windows:
|
|
runs-on: windows-2019
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
- name: fetch maps plugin
|
|
working-directory: .
|
|
run: |
|
|
mkdir plugins
|
|
cd plugins
|
|
git.exe clone https://github.com/nem0/lumixengine_maps.git maps
|
|
- name: fetch gltf plugin
|
|
working-directory: plugins
|
|
run: |
|
|
git.exe clone https://github.com/nem0/lumixengine_gltf.git gltf_import
|
|
- name: fetch shader_editor plugin
|
|
working-directory: plugins
|
|
run: |
|
|
git.exe clone https://github.com/nem0/lumixengine_shader_editor.git shader_editor
|
|
- name: make project
|
|
working-directory: projects
|
|
run: |
|
|
./genie.exe --static-plugins vs2019
|
|
- name: build engine
|
|
working-directory: projects
|
|
shell: cmd
|
|
run: |
|
|
"C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/MSBuild/Current/Bin/MSBuild.exe" tmp/vs2019/LumixEngine.sln /p:Configuration=RelWithDebInfo
|
|
- name: make dx11 project
|
|
working-directory: projects
|
|
run: |
|
|
pushd ..\plugins
|
|
git.exe clone https://github.com/nem0/lumixengine_dx11.git dx11
|
|
popd
|
|
./genie.exe --static-plugins vs2019
|
|
- name: build dx11 engine
|
|
working-directory: projects
|
|
shell: cmd
|
|
run: |
|
|
"C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/MSBuild/Current/Bin/MSBuild.exe" tmp/vs2019/LumixEngine.sln /p:Configuration=RelWithDebInfo
|
|
linux_and_static_analysis:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
with:
|
|
fetch-depth: 1
|
|
|
|
- name: Install Dependencies
|
|
env:
|
|
PVS_STUDIO_LICENSE: ${{ secrets.PVS_STUDIO_LICENSE }}
|
|
run: |
|
|
if [[ "$PVS_STUDIO_LICENSE" != "" ]];
|
|
then
|
|
echo "$PVS_STUDIO_LICENSE" > pvs-studio.lic
|
|
wget -q https://files.viva64.com/etc/pubkey.txt
|
|
sudo apt-key add pubkey.txt
|
|
sudo wget -O /etc/apt/sources.list.d/viva64.list https://files.viva64.com/etc/viva64.list
|
|
sudo apt-get update
|
|
sudo apt-get install -y pvs-studio
|
|
fi
|
|
sudo apt-get install mesa-common-dev
|
|
sudo apt-get install libasound2-dev
|
|
sudo apt-get install libgl1-mesa-dev
|
|
sudo apt-get install libgl1-mesa-glx
|
|
- name: Download 3rdparties
|
|
run: |
|
|
cd projects
|
|
mkdir -p ../external/cmft/lib/linux64_gmake/release
|
|
mkdir -p ../external/freetype/lib/linux64_gmake/release
|
|
mkdir -p ../external/luajit/lib/linux64_gmake/release
|
|
mkdir -p ../external/nvtt/lib/linux64_gmake/release
|
|
mkdir -p ../external/physx/lib/linux64_gmake/release
|
|
mkdir -p ../external/recast/lib/linux64_gmake/release
|
|
git clone --depth=1 https://github.com/nem0/lumixengine_linux_3rdparty_bin.git
|
|
cp lumixengine_linux_3rdparty_bin/cmft/* ../external/cmft/lib/linux64_gmake/release
|
|
cp lumixengine_linux_3rdparty_bin/freetype/* ../external/freetype/lib/linux64_gmake/release
|
|
cp lumixengine_linux_3rdparty_bin/luajit/* ../external/luajit/lib/linux64_gmake/release
|
|
cp lumixengine_linux_3rdparty_bin/nvtt/* ../external/nvtt/lib/linux64_gmake/release
|
|
cp lumixengine_linux_3rdparty_bin/physx/* ../external/physx/lib/linux64_gmake/release
|
|
cp lumixengine_linux_3rdparty_bin/recast/* ../external/recast/lib/linux64_gmake/release
|
|
- name: PVS-Studio static analysis
|
|
run: |
|
|
cd projects
|
|
./genie --static-plugins --pvs-studio-build gmake
|
|
cd tmp/gmake
|
|
pvs-studio-analyzer trace -- make -j EXTRA_WARNINGS=1
|
|
pvs-studio-analyzer analyze -e ../../../src/renderer/editor/miniz.c -e ../../../external -l ../../../pvs-studio.lic -o pvs-studio.log
|
|
plog-converter -a 'GA:1,2;OP:1' -d V730,V1001,V530,V1048,V763 -t errorfile -w pvs-studio.log
|