## 现状 glob 不支持 `{a,b}` 交替;`third_party/ffmpeg/libavcodec/{aac,bsf,hevc,opus,vvc}/**` 会触发 matched-no-source 警告(这个防呆警告本身很好,准确暴露了问题👍)。 ## 真实用例(ffmpeg-m) FFmpeg 8.x 的 libavcodec 子目录库(aac/bsf/hevc/opus/vvc)需要同一组 per-glob flags,现状只能写 5 条重复条目: ```toml { glob = "third_party/ffmpeg/libavcodec/aac/**", cflags = ["-Ithird_party/ffmpeg/libavcodec"] }, { glob = "third_party/ffmpeg/libavcodec/bsf/**", cflags = ["-Ithird_party/ffmpeg/libavcodec"] }, { glob = "third_party/ffmpeg/libavcodec/hevc/**", cflags = ["-Ithird_party/ffmpeg/libavcodec"] }, { glob = "third_party/ffmpeg/libavcodec/opus/**", cflags = ["-Ithird_party/ffmpeg/libavcodec"] }, { glob = "third_party/ffmpeg/libavcodec/vvc/**", cflags = ["-Ithird_party/ffmpeg/libavcodec"] }, ``` ## 期望 glob 语法支持 `{a,b}`(bash/cargo glob 生态常见);或 flags 条目的 `glob` 键接受数组 `glob = ["...aac/**", "...bsf/**"]`(解析层更小的改动,零新语法风险)。 (环境:mcpp 0.0.95;来源:mcpplibs/ffmpeg-m 实现踩坑记录)
Activity
Sunrisepeak commentedon Jul 18, 2026
✅ 已在 mcpp 0.0.97 修复(PR #236,
2230872,簇 B)。glob 支持花括号交替
{a,b}:libavcodec/{aac,bsf,hevc}/**笛卡尔展开(嵌套 / 多组均可),vendored 大库 per-glob 声明不再重复。深度有上限防病态嵌套。验证:单测
Scanner.ExpandGlobBraceAlternation/PerGlobFlagsMatchBraceAlternation+ e2e115_manifest_syntax_aot_brace.sh。