mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-13 18:51:29 +00:00
Build analyze work
This commit is contained in:
parent
fc470d5f83
commit
605e23e8d0
34
.drone.yml
34
.drone.yml
@ -30,6 +30,11 @@ steps:
|
|||||||
- name: cache
|
- name: cache
|
||||||
path: /home/eqemu/.ccache/
|
path: /home/eqemu/.ccache/
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
branch:
|
||||||
|
exclude:
|
||||||
|
- build-analyze
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
@ -57,6 +62,11 @@ steps:
|
|||||||
commands:
|
commands:
|
||||||
- .\utils\scripts\build\windows-build.ps1
|
- .\utils\scripts\build\windows-build.ps1
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
branch:
|
||||||
|
exclude:
|
||||||
|
- build-analyze
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
kind: pipeline
|
kind: pipeline
|
||||||
@ -87,7 +97,10 @@ steps:
|
|||||||
|
|
||||||
trigger:
|
trigger:
|
||||||
branch:
|
branch:
|
||||||
- master
|
include:
|
||||||
|
- master
|
||||||
|
exclude:
|
||||||
|
- build-analyze
|
||||||
event:
|
event:
|
||||||
- push
|
- push
|
||||||
|
|
||||||
@ -95,4 +108,23 @@ depends_on:
|
|||||||
- Build Windows
|
- Build Windows
|
||||||
- Build Linux
|
- Build Linux
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
kind: pipeline
|
||||||
|
type: docker
|
||||||
|
name: Build Analyze
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Build Linux X64
|
||||||
|
image: akkadius/eqemu-server:v16
|
||||||
|
environment:
|
||||||
|
GITHUB_TOKEN:
|
||||||
|
from_secret: GH_RELEASE_GITHUB_API_TOKEN
|
||||||
|
commands:
|
||||||
|
- ./utils/scripts/build/linux-build-analyze.sh
|
||||||
|
|
||||||
|
trigger:
|
||||||
|
branch:
|
||||||
|
- build-analyze
|
||||||
|
event:
|
||||||
|
- push
|
||||||
43
utils/scripts/build/linux-build-analyze.sh
Executable file
43
utils/scripts/build/linux-build-analyze.sh
Executable file
@ -0,0 +1,43 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
sudo chown eqemu:eqemu /drone/src/ * -R
|
||||||
|
|
||||||
|
# Install ClangBuildAnalyzer if missing
|
||||||
|
if ! command -v clang-build-analyzer &> /dev/null; then
|
||||||
|
echo "Installing latest Clang Build Analyzer..."
|
||||||
|
LATEST_VERSION=$(curl -s https://api.github.com/repos/aras-p/ClangBuildAnalyzer/releases/latest \
|
||||||
|
| grep '"tag_name":' | sed -E 's/.*"v([^"]+)".*/\1/')
|
||||||
|
sudo curl -sSL "https://github.com/aras-p/ClangBuildAnalyzer/releases/download/v${LATEST_VERSION}/ClangBuildAnalyzer-linux" \
|
||||||
|
-o /usr/local/bin/clang-build-analyzer
|
||||||
|
sudo chmod +x /usr/local/bin/clang-build-analyzer
|
||||||
|
fi
|
||||||
|
|
||||||
|
git submodule init && git submodule update
|
||||||
|
perl utils/scripts/build/tag-version.pl
|
||||||
|
|
||||||
|
mkdir -p build
|
||||||
|
|
||||||
|
clang-build-analyzer --start build/
|
||||||
|
|
||||||
|
cd build && \
|
||||||
|
cmake -DEQEMU_BUILD_TESTS=ON \
|
||||||
|
-DEQEMU_BUILD_LUA=ON \
|
||||||
|
-DEQEMU_BUILD_PERL=ON \
|
||||||
|
-DEQEMU_BUILD_LOGIN=ON \
|
||||||
|
-DEQEMU_BUILD_STATIC=ON \
|
||||||
|
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
|
||||||
|
-DCMAKE_CXX_FLAGS:STRING="-O0 -g -Wno-everything -ftime-trace" \
|
||||||
|
-G 'Unix Makefiles' \
|
||||||
|
.. && \
|
||||||
|
make -j"$(nproc)"
|
||||||
|
|
||||||
|
# 🧠 Generate ClangBuildAnalyzer report
|
||||||
|
clang-build-analyzer --stop ./ /tmp/eqemu.capture
|
||||||
|
clang-build-analyzer --analyze /tmp/eqemu.capture > report.txt
|
||||||
|
cat report.txt
|
||||||
|
|
||||||
|
ldd ./bin/zone
|
||||||
|
|
||||||
|
cd /drone/src/
|
||||||
Loading…
x
Reference in New Issue
Block a user