cc-libs/just/stage.just
2026-06-20 12:04:46 +02:00

23 lines
929 B
Plaintext

# Assemble the flat mount roots the CraftOS-PC harness expects from the
# per-package sources. Lua loads its deps by absolute mount path (require
# '/apis/x') and ccpm installs files flat, but sources now live under
# packages/<pkg>/{apis,programs,daemons,startup,tests}. This merges them back
# into a gitignored .stage/ that the dev/test recipes mount as /apis, /programs,
# /daemons, /startup, /tests, /data. Regenerated on every run so it always
# reflects the working tree.
stage:
#!/usr/bin/env bash
set -euo pipefail
repo='{{justfile_directory()}}'
cd "$repo"
stage="$repo/.stage"
rm -rf "$stage"
for dir in apis programs daemons startup tests data; do
for pkgdir in packages/*/"$dir"; do
[ -d "$pkgdir" ] || continue
mkdir -p "$stage/$dir"
cp -R "$pkgdir/." "$stage/$dir/"
done
done
printf '%s\n' 'OK: staged .stage/ from packages/'