Adds .gitea/workflows/release.yml, triggered only on a pushed v* tag, which builds all three platforms (reusing the exact same configure/build/test commands as build.yml, now factored out into .gitea/scripts/ so the two workflows can't drift), zips each platform's build/package/ output, and creates a draft Gitea Release with the archives attached. This is packaging automation only -- it does not resolve or bypass the C1 WebRTC/OpenH264 release gate documented in README.md's Status section. Nothing publishes until a human deliberately pushes a version tag (which should not happen before owner sign-off) and then explicitly publishes the resulting draft. The generated release notes lead with a restatement of the open C1 question specifically so that second step can't be taken by accident. build.yml is refactored (not rewritten) to call the same shared scripts; its job/step behavior is otherwise unchanged. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RL8abRmgFXkVASHkkqiJbE
18 lines
817 B
Bash
Executable File
18 lines
817 B
Bash
Executable File
#!/usr/bin/env bash
|
|
# Shared with .gitea/workflows/build.yml and .gitea/workflows/release.yml --
|
|
# this is the actual Linux configure/build/test/verify sequence. Edit once,
|
|
# here, so both workflows stay in sync instead of drifting copies.
|
|
#
|
|
# Linux keeps its distribution libobs; the buildspec bootstrap (macOS/Windows)
|
|
# is for the two platforms that have no such package.
|
|
set -euo pipefail
|
|
|
|
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Release -DSTPLUGIN_BOOTSTRAP_OBS=OFF
|
|
cmake --build build
|
|
ctest --test-dir build --output-on-failure
|
|
|
|
# Show what was built
|
|
ls -la build/package/bin/64bit build/package/data/locale build/package/licenses
|
|
ldd build/package/bin/64bit/streamer-tools-camera.so | grep -E 'obs|livekit'
|
|
nm -D build/package/bin/64bit/streamer-tools-camera.so | grep -E ' T obs_module_(load|unload)'
|