From b9a24800fed528ca1089b4a2a686081b89a8ed0c Mon Sep 17 00:00:00 2001 From: Sunrisepeak Date: Sat, 7 Nov 2026 18:00:02 +0900 Subject: [PATCH] 0.24.3 --- openkal-image 0.5.2 reserves a thread's stack for an image's main thread on Windows Co-authored-by: speak-agent <248744407+speak-agent@users.noreply.github.com> --- README.md | 6 ++++++ mcpp.toml | 21 +++++++++++---------- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index 2b7a9db..32c2297 100644 --- a/README.md +++ b/README.md @@ -63,6 +63,12 @@ of a name it rebuilds part by part (`lexically_normal`, `weakly_canonical`, and arrangement could not start its runner (openkal-llvm-runtime#68). It is the first group released as a leaf and a patch of this group, through one index change. +Platform 0.24.3 changes one member: openkal-image 0.5.2, whose okrun.exe reserves +8 MiB + 256 KiB for the image's main thread, a thread's stack under +openkal-windows, where the linker's default was 1 MiB (an image recursing deeply +on its main thread, clangd.okb with `--sync` over the MSVC headers, overflowed +it on Windows; openkal-image#32). + A project overrides any group under `[target.]`, for example `[target.'cfg(platform = "openkal")'.layers] "c++-abi" = false`, and selects another platform, or none, with `platform = "..."` or `--platform`. diff --git a/mcpp.toml b/mcpp.toml index fdeff43..1e2dfd9 100644 --- a/mcpp.toml +++ b/mcpp.toml @@ -12,7 +12,7 @@ [package] namespace = "mcpplibs" name = "openkal-platform" -version = "0.24.2" +version = "0.24.3" description = "The platform of ok images (-openkal): their toolchain, C library and C++ run-time, tools, compile and link conventions, seal, runner and carrier, as one versioned statement mcpp reads." license = "Apache-2.0" authors = ["mcpplibs"] @@ -28,7 +28,7 @@ toolchain = "llvm@23.1.3" runner = { cmd = ["okrun", "{}"], host = "same-arch", hosts = ["linux-x86_64", "linux-aarch64", "macos-aarch64", "windows-x86_64"] } # `mcpp pack --mode self-contained`: a program of the packing machine that # carries the image in a section and runs it through libokrun (M3). -carrier = { package = "openkal-run@0.5.1", section = ".oke", main = "carrier/main.cpp" } +carrier = { package = "openkal-run@0.5.2", section = ".oke", main = "carrier/main.cpp" } # The `okb` package format (`mcpp pack --pkg-format okb`): the images of every # architecture as one file okrun runs (openkal-image docs/okb.md). plugin = "build.mcpp" @@ -49,9 +49,9 @@ c-abi = { name = "openkal-musl", version = "0.28.1", default-features # order of a start's first executions, which a producer lays its code out by # and writes as the touch note). [platform.tools] -okld = "openkal-tools@0.5.1" -okrun = "openkal-tools@0.5.1" -okprof = "openkal-tools@0.5.1" +okld = "openkal-tools@0.5.2" +okrun = "openkal-tools@0.5.2" +okprof = "openkal-tools@0.5.2" # Every unit of an image (SPEC 12.2): # -fPIC the image is ET_DYN and has no text relocation; @@ -196,7 +196,8 @@ c-abi = { name = "openkal-musl", version = "0.28.1", default-features # to the grants, and openkal-image 0.5.1 starts programs over it; 0.24.2: # openkal-llvm-runtime 0.19.2 keeps the volume of a name it normalizes or # appends a rooted name to, the first group released as a leaf and a patch of -# this group through one index change): +# this group through one index change; 0.24.3: openkal-image 0.5.2 reserves a +# thread's stack for an image's main thread on Windows): # one version of each in a build. From 0.24.1 the members name one another by # compatible ranges (`^0.28.0`) and this group chooses the versions: mcpp # 2026.11.7.1 resolves within it, and a fix of one member is that member's @@ -209,14 +210,14 @@ openkal-macos = "0.22.1" openkal-windows = "0.20.0" openkal-musl = "0.28.1" openkal-llvm-runtime = "0.19.2" -openkal-ld = "0.5.1" -openkal-run = "0.5.1" -openkal-tools = "0.5.1" +openkal-ld = "0.5.2" +openkal-run = "0.5.2" +openkal-tools = "0.5.2" # The plugin's tool, `okld bundle`, which writes the okb, and its library, the # provider of a package format (mcpp.plugins.platform). [build-dependencies] -openkal-tools = { version = "0.5.1", tools = ["okld"] } +openkal-tools = { version = "0.5.2", tools = ["okld"] } [build-dependencies.mcpp] plugins = { version = "0.20.0", features = ["plugins-platform"], host-module = true }