Tags: UnigramDev/deps
Tags
Add the packaging scripts for libvlc and webrtc Both dependencies are impractical to build during a normal checkout -- libvlc needs Docker and the VideoLAN contrib toolchain behind an 8.8 GB submodule, webrtc needs depot_tools, a ~1.5 hour sync and ~20 GB of disk -- and both change a few times a year. Unigram consumes them as prebuilt archives through vcpkg overlay ports instead, downloaded on demand for the architecture being built and verified by SHA512. The libvlc script does not restate which plugins to ship: it reads the file list from the existing VideoLAN.LibVLC.UWP.nuspec, so the curated set and the generated plugins.dat cache stay in one place. The webrtc script ships the checkout root plus only the third_party directories that Unigram's compilation reaches, which is 7,600 headers rather than 22,100, and keeps their original paths because tgcalls includes them as third_party/libyuv/include/libyuv.h. It deliberately does not install include/libyuv.h, which belongs to the standalone libyuv port and would otherwise decide which copy every project compiles against. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Name the scripts for what they do, not what they build The directory already says which dependency it is, so pack-libvlc.ps1 and pack-webrtc.ps1 were saying it twice. Both folders now expose the same two entry points, build.ps1 and pack.ps1, which also means the two dependencies read the same way. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Add the packaging scripts for libvlc and webrtc Both dependencies are impractical to build during a normal checkout -- libvlc needs Docker and the VideoLAN contrib toolchain behind an 8.8 GB submodule, webrtc needs depot_tools, a ~1.5 hour sync and ~20 GB of disk -- and both change a few times a year. Unigram consumes them as prebuilt archives through vcpkg overlay ports instead, downloaded on demand for the architecture being built and verified by SHA512. The libvlc script does not restate which plugins to ship: it reads the file list from the existing VideoLAN.LibVLC.UWP.nuspec, so the curated set and the generated plugins.dat cache stay in one place. The webrtc script ships the checkout root plus only the third_party directories that Unigram's compilation reaches, which is 7,600 headers rather than 22,100, and keeps their original paths because tgcalls includes them as third_party/libyuv/include/libyuv.h. It deliberately does not install include/libyuv.h, which belongs to the standalone libyuv port and would otherwise decide which copy every project compiles against. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>