Skip to content

Locate shipyard through shipyard-cmake, not the CMake user package registry - #4

Merged
schmonz merged 1 commit into
mainfrom
shipyard-cmake-flagday
Sep 16, 2026
Merged

schmonz merged 1 commit into
mainfrom
shipyard-cmake-flagday

Conversation

@schmonz

@schmonz schmonz commented Sep 14, 2026

Copy link
Copy Markdown
Collaborator

Part of the 14-repo shipyard CMake flag day. Do not merge until shipyard has landed bc3082a.

build/msc.sh resynced byte-for-byte from shipyard's canonical scripts/templates/msc.sh
(blob 43c2af0). It probes shipyard-cmake instead of reading ~/.cmake/packages/, and exports
SHIPYARD_SCRIPTS, which shipyard's msc_scripts() now requires.

No workflow step was added: install@v1's default mode already puts shipyard-cmake on PATH.

Insulation confirmed

Swept every tracked file with no path filter (the conventions gate cannot see *.bats, tests/*.sh,
extensionless executables, *.cmake or CMakeLists.txt): this repo has no CMakeLists.txt, no
find_package(MavericksShipyard), no registry read outside msc.sh, and no cmake/ctest/cpack
call site anywhere
— including in prose. msc.sh was the whole surface.

tests/*'s ${SHIPYARD_SCRIPTS:-$R/../mavericks-shipyard/scripts} sibling fallback is a plain path
default, not a registry read and not a cmake --install bootstrap, so it survives the cutover
untouched.

Conventions gate (from shipyard bc3082a): 2 failures -> ok, exit 0. check-shell-portability
ok, check-comments exit 0, sh -n clean, and tests/{skeleton,renovate,workflow,fetch-ed25519}.sh
all exit 0 (build-tools.sh/package-pkg.sh skip 77 on a 10.9 host, as designed).

🤖 Generated with Claude Code

https://claude.ai/code/session_01GTxFde2TJMmp5p64DhvDSK

…kage registry

shipyard's pkg postinstall no longer writes the CMake user package registry
and nothing reads it. build/msc.sh is resynced from shipyard's canonical
template, which asks shipyard-cmake where find_package(MavericksShipyard)
lands instead of reading ~/.cmake/packages, and also exports
SHIPYARD_SCRIPTS (which shipyard's msc_scripts() now requires).

Nothing else in this repo touches the mechanism: it has no CMakeLists.txt,
no find_package(MavericksShipyard) and no cmake/ctest/cpack call site.

BREAKING CHANGE: needs shipyard's shipyard-cmake on PATH (install@v1 provides
it). Do not merge until shipyard has landed bc3082a.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GTxFde2TJMmp5p64DhvDSK
@schmonz
schmonz merged commit 4d558b1 into main Sep 16, 2026
3 checks passed
@schmonz
schmonz deleted the shipyard-cmake-flagday branch September 16, 2026 20:18
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