Skip to content

Commit 3ee5bd0

Browse files
committed
feat(pkg): opencv 0.0.3 (unified compat.opencv) + retire compat.opencv5 transition alias
opencv-m v0.0.3 switched its dependency from the transitional compat.opencv5 alias to the unified compat.opencv (source build + FFmpeg videoio). With the module package now on compat.opencv, the alias has no remaining consumers, so this bump completes the transition decided in #79: - pkgs/o/opencv.lua: 0.0.2 -> 0.0.3 (v0.0.3 tarball GLOBAL + CN mirror, sha256 92ffae8b…; byte-identical, mirror-cn-reachable verified). Form A — the compat.opencv dep lives in the tarball's mcpp.toml. - delete pkgs/c/compat.opencv5.lua and the tests/examples/opencv5 member (redundant with the opencv base member; opencv-module now exercises compat.opencv transitively via opencv 0.0.3). - tests/examples/opencv-module: pin opencv 0.0.3, fix compat.opencv comments. - README + opencv.lua comments: compat.opencv5 -> compat.opencv, note the alias is retired. xpkg parse + lua load green locally on mcpp 0.0.98.
1 parent 976559c commit 3ee5bd0

7 files changed

Lines changed: 16 additions & 3173 deletions

File tree

README.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,13 @@ mcpp self config --mirror CN # 切换至国内镜像,默认使用 GLOBAL 上
3232

3333
| 形态 | 示例 |
3434
|------|------|
35-
| 原生模块库(Form A) | [`mcpplibs.xpkg`](pkgs/x/xpkg.lua) · [`mcpplibs.tinyhttps`](pkgs/t/tinyhttps.lua) · [`tensorvia-cpu`](pkgs/t/tensorvia-cpu.lua) · [`ffmpeg`](pkgs/f/ffmpeg.lua)(模块层,源码经 `compat.ffmpeg` 直编) · [`opencv`](pkgs/o/opencv.lua)(模块层,源码经 `compat.opencv5` 直编) |
35+
| 原生模块库(Form A) | [`mcpplibs.xpkg`](pkgs/x/xpkg.lua) · [`mcpplibs.tinyhttps`](pkgs/t/tinyhttps.lua) · [`tensorvia-cpu`](pkgs/t/tensorvia-cpu.lua) · [`ffmpeg`](pkgs/f/ffmpeg.lua)(模块层,源码经 `compat.ffmpeg` 直编) · [`opencv`](pkgs/o/opencv.lua)(模块层,源码经 `compat.opencv` 直编) |
3636
| C 源码 compat(含 `features`) | [`compat.cjson`](pkgs/c/compat.cjson.lua) · [`compat.zlib`](pkgs/c/compat.zlib.lua) |
3737
| header-only(含 `features`) | [`compat.eigen`](pkgs/c/compat.eigen.lua) |
3838
| 数据资产包(feature 依赖专用) | [`compat.opencv-unifont`](pkgs/c/compat.opencv-unifont.lua)(CJK 字体,由 `compat.opencv``unifont` feature 拉取) |
3939
| 外部构建系统(`install()` 从源码构建) | [`compat.openblas`](pkgs/c/compat.openblas.lua)(Make) |
4040
| 全源码直编(config 快照 + 源列表,零外部构建系统) | [`compat.ffmpeg`](pkgs/c/compat.ffmpeg.lua)(2281 TU 含 NASM 汇编,28 个目录 glob 声明) |
41-
| 全源码直编 + `build.mcpp` 消费端合成 | [`compat.opencv`](pkgs/c/compat.opencv.lua)(OpenCV 5,458 TU 真实路径直编,SIMD dispatch 保留,字体/内核/jpeg12/16 由包内 build.mcpp 生成,依赖 `compat.ffmpeg` 提供 videoio FFmpeg 后端;feature:`unifont` CJK 字体、`dnn` 深度学习模块(+309 TU 含 protobuf/mlas);旧 install() CMake 形态已移除,`compat.opencv5` 为过渡别名待删) |
41+
| 全源码直编 + `build.mcpp` 消费端合成 | [`compat.opencv`](pkgs/c/compat.opencv.lua)(OpenCV 5,458 TU 真实路径直编,SIMD dispatch 保留,字体/内核/jpeg12/16 由包内 build.mcpp 生成,依赖 `compat.ffmpeg` 提供 videoio FFmpeg 后端;feature:`unifont` CJK 字体、`dnn` 深度学习模块(+309 TU 含 protobuf/mlas);旧 install() CMake 形态与过渡别名 `compat.opencv5` 均已移除) |
4242
| C++23 module wrapper | [`nlohmann.json`](pkgs/n/nlohmann.json.lua) · [`marzer.tomlplusplus`](pkgs/m/marzer.tomlplusplus.lua) |
4343

4444
### 新增一个包

mcpp.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ members = [
2626
"tests/examples/nlohmann.json",
2727
"tests/examples/openblas",
2828
"tests/examples/opencv",
29-
"tests/examples/opencv5",
3029
"tests/examples/opencv-unifont",
3130
"tests/examples/opencv-dnn",
3231
"tests/examples/opencv-module",

pkgs/c/compat.opencv5.lua

Lines changed: 0 additions & 3105 deletions
This file was deleted.

pkgs/o/opencv.lua

Lines changed: 11 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,28 +4,29 @@
44
--
55
-- The package is the thin C++23 module layer (import opencv.cv; and 7
66
-- per-module interfaces) over OpenCV 5's unchanged C++ API; the OpenCV
7-
-- sources themselves arrive through its compat.opencv5 dependency (full
8-
-- source build with SIMD dispatch + build.mcpp consumer-side synthesis —
9-
-- see pkgs/c/compat.opencv5.lua). Linux-only for now: compat.opencv5
10-
-- carries a linux-x86_64 config snapshot.
7+
-- sources themselves arrive through its compat.opencv dependency (full
8+
-- source build with SIMD dispatch + build.mcpp consumer-side synthesis,
9+
-- plus the compat.ffmpeg videoio backend — see pkgs/c/compat.opencv.lua;
10+
-- the transitional compat.opencv5 alias is retired as of this bump).
11+
-- Linux-only for now: compat.opencv carries a linux-x86_64 config snapshot.
1112
--
1213
package = {
1314
spec = "1",
1415
name = "opencv",
1516
namespace = "",
16-
description = "C++23 module package for OpenCV 5 (import opencv.cv) — full source build via compat.opencv5, C++ API unchanged",
17-
licenses = {"MIT"}, -- module layer; upstream via compat.opencv5 is Apache-2.0
17+
description = "C++23 module package for OpenCV 5 (import opencv.cv) — full source build via compat.opencv, C++ API unchanged",
18+
licenses = {"MIT"}, -- module layer; upstream via compat.opencv is Apache-2.0
1819
repo = "https://github.com/Sunrisepeak/opencv-m",
1920
type = "package",
2021

2122
xpm = {
2223
linux = {
23-
["0.0.2"] = {
24+
["0.0.3"] = {
2425
url = {
25-
GLOBAL = "https://github.com/Sunrisepeak/opencv-m/archive/refs/tags/v0.0.2.tar.gz",
26-
CN = "https://gitcode.com/mcpp-res/opencv/releases/download/v0.0.2/opencv-m-0.0.2.tar.gz",
26+
GLOBAL = "https://github.com/Sunrisepeak/opencv-m/archive/refs/tags/v0.0.3.tar.gz",
27+
CN = "https://gitcode.com/mcpp-res/opencv/releases/download/v0.0.3/opencv-m-0.0.3.tar.gz",
2728
},
28-
sha256 = "26c3eb680baff72ce71dd41d098910b5456487a686d95839b2157c6618ccfb7c",
29+
sha256 = "92ffae8bc4253538143319fba59d4933831a92bb03394126baae2f0a3d4b0e2b",
2930
},
3031
},
3132
},

tests/examples/opencv-module/mcpp.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,18 +3,18 @@
33
# member-level `[indices] default` redirect, mcpp >= 0.0.97; kept per-member
44
# and single-entry because xlings breaks with >1 project index repo, mcpp#238). Replaces the
55
# former tests/smoke_opencv_module.sh reseeding driver. The package is
6-
# linux-only (it pulls the linux-only compat.opencv5 source build); off-Linux
6+
# linux-only (it pulls the linux-only compat.opencv source build); off-Linux
77
# the test compiles to a no-op main().
88
[package]
99
name = "opencv-module-tests"
1010
version = "0.1.0"
1111

12-
# The module package's own transitive dep (compat.opencv5) resolves from the
12+
# The module package's own transitive dep (compat.opencv) resolves from the
1313
# GLOBAL published compat index (the compat namespace is not redirected here
1414
# — see the mcpp#238 single-repo constraint); the compat descriptor itself is
1515
# pre-merge-validated by its dedicated member.
1616
[indices]
1717
default = { path = "../../.." }
1818

1919
[target.'cfg(linux)'.dependencies]
20-
opencv = "0.0.2"
20+
opencv = "0.0.3"

tests/examples/opencv5/mcpp.toml

Lines changed: 0 additions & 17 deletions
This file was deleted.

tests/examples/opencv5/tests/opencv5.cpp

Lines changed: 0 additions & 35 deletions
This file was deleted.

0 commit comments

Comments
 (0)