- Updated `.clangd` configuration to include additional include paths and feature flags tailored for ROM hacking workflows, optimizing IntelliSense support. - Introduced `.pre-commit-config.yaml` for managing code quality checks and formatting, ensuring consistent code style across the project. - Added `cmake-format.yaml` for CMake formatting configuration, promoting adherence to style guidelines. - Enhanced CI workflows to include new actions for testing and building, improving overall reliability and efficiency in the development process. Benefits: - Streamlines development setup and improves code quality through automated checks. - Facilitates better collaboration by ensuring consistent coding standards and configurations.
41 lines
1.2 KiB
Bash
Executable File
41 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# Test Linux build in Docker container (simulates CI environment)
|
|
set -e
|
|
|
|
echo "🐧 Testing Linux build in Docker container..."
|
|
|
|
# Use same Ubuntu version as CI
|
|
docker run --rm -v "$PWD:/workspace" -w /workspace \
|
|
ubuntu:22.04 bash -c '
|
|
set -e
|
|
echo "📦 Installing dependencies..."
|
|
export DEBIAN_FRONTEND=noninteractive
|
|
apt-get update
|
|
apt-get install -y \
|
|
build-essential cmake ninja-build pkg-config gcc-12 g++-12 \
|
|
libglew-dev libxext-dev libwavpack-dev libboost-all-dev \
|
|
libpng-dev python3-dev libpython3-dev \
|
|
libasound2-dev libpulse-dev libaudio-dev \
|
|
libx11-dev libxrandr-dev libxcursor-dev libxinerama-dev libxi-dev \
|
|
libxss-dev libxxf86vm-dev libxkbcommon-dev libwayland-dev libdecor-0-dev \
|
|
libgtk-3-dev libdbus-1-dev git
|
|
|
|
echo "⚙️ Configuring build..."
|
|
cmake -B build -G Ninja \
|
|
-DCMAKE_BUILD_TYPE=Release \
|
|
-DCMAKE_C_COMPILER=gcc-12 \
|
|
-DCMAKE_CXX_COMPILER=g++-12 \
|
|
-DYAZE_BUILD_TESTS=OFF \
|
|
-DYAZE_BUILD_EMU=ON \
|
|
-DYAZE_BUILD_Z3ED=ON \
|
|
-DYAZE_BUILD_TOOLS=ON \
|
|
-DNFD_PORTAL=ON
|
|
|
|
echo "🔨 Building..."
|
|
cmake --build build --parallel $(nproc)
|
|
|
|
echo "✅ Linux build succeeded!"
|
|
ls -lh build/bin/
|
|
'
|
|
|