From 09b71ecfb686613878c5bfce080a56dcfce53f5d Mon Sep 17 00:00:00 2001 From: Roland Conybeare Date: Sun, 31 May 2026 09:26:28 -0400 Subject: [PATCH] xo-sdlc: verify: check xo-bootstrap-macros.cmake current --- bin/xo-sdlc.in | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/bin/xo-sdlc.in b/bin/xo-sdlc.in index 04f1167..126c560 100644 --- a/bin/xo-sdlc.in +++ b/bin/xo-sdlc.in @@ -271,22 +271,28 @@ verify_satellite_list() { local u2_branches u2_branches=$(git -C "${XO_UMBRELLA2}" branch --list | sed 's/^[* ]*//') - printf "%-32s %s %s %s %s %s %s %s\n" "name" "u2" "rem" "demux" "xo" "fj" "sdlc" "bld" - printf "%-32s %s %s %s %s %s %s %s\n" "----" "--" "---" "-----" "--" "--" "----" "---" + local boot_ref="${XO_SATELLITE_ROOT}/xo-cmake/share/xo-macros/xo-bootstrap-macros.cmake" + + printf "%-32s %s %s %s %s %s %s %s %s\n" "name" "u2" "rem" "demux" "xo" "fj" "sdlc" "bld" "boot" + printf "%-32s %s %s %s %s %s %s %s %s\n" "----" "--" "---" "-----" "--" "--" "----" "---" "----" while IFS= read -r name; do - local in_u2=0 in_rem=0 in_demux=0 in_xo=0 in_fj=0 in_sdlc=0 in_bld=0 + local in_u2=0 in_rem=0 in_demux=0 in_xo=0 in_fj=0 in_sdlc=0 in_bld=0 in_boot=0 [[ -d "${XO_UMBRELLA2}/${name}" ]] && in_u2=1 grep -qx "${name}" <<< "${u2_remotes}" && in_rem=1 grep -qx "_demux/${name}" <<< "${u2_branches}" && in_demux=1 [[ -d "${XO_SATELLITE_ROOT}/${name}" ]] && in_xo=1 if [[ ${in_xo} == 1 ]]; then git -C "${XO_SATELLITE_ROOT}/${name}" remote | grep -qx "forgejo" && in_fj=1 + local sat_boot="${XO_SATELLITE_ROOT}/${name}/cmake/xo-bootstrap-macros.cmake" + if [[ -f "${sat_boot}" ]] && diff -q "${boot_ref}" "${sat_boot}" &>/dev/null; then + in_boot=1 + fi fi grep -qx "${name}" "${SUBSYSTEMLIST_FILE}" && in_sdlc=1 grep -qx "${name}" "${XOBUILD_SUBSYSTEMLIST_FILE}" && in_bld=1 - printf "%-32s %2d %3d %5d %2d %2d %4d %3d\n" "${name}" "${in_u2}" "${in_rem}" "${in_demux}" "${in_xo}" "${in_fj}" "${in_sdlc}" "${in_bld}" - if [[ ${in_u2} == 0 || ${in_rem} == 0 || ${in_demux} == 0 || ${in_xo} == 0 || ${in_fj} == 0 || ${in_sdlc} == 0 || ${in_bld} == 0 ]]; then + printf "%-32s %2d %3d %5d %2d %2d %4d %3d %4d\n" "${name}" "${in_u2}" "${in_rem}" "${in_demux}" "${in_xo}" "${in_fj}" "${in_sdlc}" "${in_bld}" "${in_boot}" + if [[ ${in_u2} == 0 || ${in_rem} == 0 || ${in_demux} == 0 || ${in_xo} == 0 || ${in_fj} == 0 || ${in_sdlc} == 0 || ${in_bld} == 0 || ${in_boot} == 0 ]]; then rc=1 fi done <<< "${all_names}"