name: Build on: push: branches: [ "main", "master" ] pull_request: branches: [ "main", "master" ] workflow_dispatch: jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 with: submodules: recursive - name: Install tools run: | sudo apt-get update sudo apt-get install -y cmake mingw-w64 libssl-dev dotnet-sdk-8.0 - name: Install OpenSSL for MinGW run: | wget -q https://github.com/nicowillis/openssl-mingw/releases/download/3.3.0/openssl-3.3.0-mingw64.tar.gz -O openssl-mingw.tar.gz || true sudo apt-get install -y libssl-dev:amd64 2>/dev/null || true sudo apt-get install -y libssl-mingw-w64 2>/dev/null || true - name: Configure CMake run: | cmake -B build -S . \ -DCMAKE_SYSTEM_NAME=Windows \ -DCMAKE_C_COMPILER=x86_64-w64-mingw32-gcc \ -DCMAKE_CXX_COMPILER=x86_64-w64-mingw32-g++ \ -DCMAKE_RC_COMPILER=x86_64-w64-mingw32-windres \ -DOPENSSL_ROOT_DIR=/usr/x86_64-w64-mingw32 \ -DOPENSSL_INCLUDE_DIR=/usr/x86_64-w64-mingw32/include \ -DOPENSSL_LIBRARIES="/usr/x86_64-w64-mingw32/lib/libssl.a;/usr/x86_64-w64-mingw32/lib/libcrypto.a" - name: Build Unlocker run: cmake --build build --target dbd-unlocker - name: Build Dumper run: dotnet build src/dumper/dbd-dumper.csproj -c Release --runtime win-x64