Skip to content

feat(pkgs): add public opencv module package 0.0.2 (Form A) — opencv 链路闭环#77

Merged
Sunrisepeak merged 1 commit into
mainfrom
feat/add-opencv-module
Jul 18, 2026
Merged

feat(pkgs): add public opencv module package 0.0.2 (Form A) — opencv 链路闭环#77
Sunrisepeak merged 1 commit into
mainfrom
feat/add-opencv-module

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

概要

登记公开 opencv 模块包 0.0.2(Form A,linux-only)——opencv/ffmpeg 双链路就此闭环。

[dependencies]
opencv = "0.0.2"
import opencv.cv;   // import cv2 体验,C++ API 原样,零头文件

内容

  • pkgs/o/opencv.lua(Form A,imgui/ffmpeg 同形态):指向 Sunrisepeak/opencv-m v0.0.2 tag tarball;OpenCV 5.0.0 源码经其 compat.opencv5 = "5.0.0" 依赖到达消费者(feat(pkg): compat.opencv5 5.0.0 — 全源码直编 + build.mcpp 消费端合成(新形态) #76 的「全源码直编 + build.mcpp 消费端合成」形态,SIMD dispatch 保留)。linux-only
  • CN 镜像:gitcode mcpp-res/opencv release v0.0.2,与 GLOBAL tarball 逐字节一致(sha256 26c3eb68…fb7c 双端核验;与 compat 上游 tarball 同仓不同 tag)。
  • tests/smoke_opencv_module.sh + opencv-module job:imgui/ffmpeg-module 例外通道;真实消费者姿态(gcc@16.1.0)断言版本、resize/cvtColor、PNG+JPEG roundtrip、videoio registry。非 Linux SKIP;smoke 内先 mcpp index update(mcpp#232 规避)。
  • README 两处登记 + 设计文档。

为什么是 0.0.2(v0.0.1 → v0.0.2 的关键修复)

首次冒烟暴露:OpenCV 值类型算子模板上游是 static inline(内部链接),模块边界过不去(Size_ operator!= 导入端 undefined reference)。opencv-m v0.0.2 增加自含替换算子层(inline namespace + 函数指针捕获委托,详见 Sunrisepeak/opencv-m#2)。本 PR 的 smoke 正是该场景的回归测试。

本地验证

  • lint + mcpp xpkg parse(0.0.96)✓
  • tests/smoke_opencv_module.sh(mcpp 0.0.96,真实已发布 v0.0.2 tarball):下载 → Form A → compat.opencv5 直编 → import opencv.cv; 运行断言全过 ✓

C++23 module layer over OpenCV 5 (import opencv.cv; C++ API unchanged),
sources arriving via its compat.opencv5 dependency (full source build,
SIMD dispatch kept, build.mcpp consumer-side synthesis). GitHub tag
tarball + byte-identical gitcode mcpp-res/opencv CN mirror. Validated
like imgui/ffmpeg-module (default-namespace exception): new
tests/smoke_opencv_module.sh + opencv-module job, linux-only.
Local: smoke passes with mcpp 0.0.96 against the published v0.0.2 tarball.
@Sunrisepeak
Sunrisepeak merged commit 3497b86 into main Jul 18, 2026
8 checks passed
@Sunrisepeak
Sunrisepeak deleted the feat/add-opencv-module branch July 18, 2026 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant