Skip to content

mcpp:plugins 0.2.5 —— 这个集合不再是一个 Linux 集合 - #365

Merged
Sunrisepeak merged 1 commit into
mainfrom
feat/plugins-0.2.5
Sep 7, 2026
Merged

mcpp:plugins 0.2.5 —— 这个集合不再是一个 Linux 集合#365
Sunrisepeak merged 1 commit into
mainfrom
feat/plugins-0.2.5

Conversation

@Sunrisepeak

Copy link
Copy Markdown
Member

三处变化,没有一处是新成员。

每个平台各带对的那个着色器编译器。 xim:glslang 只为 Linux 发布,于是
rules-spirv 只到得了一个平台 —— 而索引里 Vulkan 与 OpenGL 的库三平台齐全。
缺口正好落在中间那一层:Windows 上的开发者能链接 Vulkan、开窗、画三角形,只要
他自己准备着色器编译器,而那恰恰是构建系统该管的那一件事。macOS 与 Windows 改
xim:shaderc,并且由规则去 —— 跨平台的一致由规则的选择能力提供,不是
靠把一个编译器发布三遍。

CUDA 与 SYCL 上 Windows。 两家厂商都为这些组件发布 Windows 资产,所以这是配方
工作不是打包工作:xim-pkgindex 里五个包补上 windows 段,规则补上与之配套的、按宿主
分岔的那几处 —— .exe 后缀、lib/x64,以及「Windows 上 CUDA 规则一律走 clang
路线」这个判断(nvcc 路线要 MSVC 的 cl.exe,而找到它要问机器的 Visual Studio 安装)。

每条规则现在都为每个平台编译过。 那个仓库里每个 consumer 都端到端驱动一条规则、
因而需要那条规则的载荷,而载荷只为一到三个平台发布 —— 于是一条规则里为某个宿主写的
那半段,恰好是那个宿主从不编译的那半段。一个不点名任何 accelerator 的夹具现在在
Linux、macOS 与 Windows 上编译全部六个模块。它第一次跑就抓到三处缺陷,每个宿主差异
一处,没有一处是 Linux 构建看得见的。

两端镜像下载回来逐字节比对,一个 sha256 同时命名两端。

三处变化,没有一处是新成员。

**每个平台各带对的那个着色器编译器。** `xim:glslang` 只为 Linux 发布,于是
`rules-spirv` 只到得了一个平台 —— 而索引里 Vulkan 与 OpenGL 的库三平台齐全。
缺口正好落在中间那一层:Windows 上的开发者能链接 Vulkan、开窗、画三角形,只要
他自己准备着色器编译器,而那恰恰是构建系统该管的那一件事。macOS 与 Windows 改
用 `xim:shaderc`,并且由规则去**选** —— 跨平台的一致由规则的选择能力提供,不是
靠把一个编译器发布三遍。

**CUDA 与 SYCL 上 Windows。** 两家厂商都为这些组件发布 Windows 资产,所以这是配方
工作不是打包工作:xim-pkgindex 里五个包补上 windows 段,规则补上与之配套的、按宿主
分岔的那几处 —— `.exe` 后缀、`lib/x64`,以及「Windows 上 CUDA 规则一律走 clang
路线」这个判断(nvcc 路线要 MSVC 的 cl.exe,而找到它要问机器的 Visual Studio 安装)。

**每条规则现在都为每个平台编译过。** 那个仓库里每个 consumer 都端到端驱动一条规则、
因而需要那条规则的载荷,而载荷只为一到三个平台发布 —— 于是一条规则里为某个宿主写的
那半段,恰好是那个宿主从不编译的那半段。一个不点名任何 accelerator 的夹具现在在
Linux、macOS 与 Windows 上编译全部六个模块。它第一次跑就抓到三处缺陷,每个宿主差异
一处,没有一处是 Linux 构建看得见的。

两端镜像下载回来逐字节比对,一个 sha256 同时命名两端。
@Sunrisepeak
Sunrisepeak merged commit 39a1191 into main Sep 7, 2026
8 checks passed
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