_  _    __    ___  __    ___  _____  _  _
 ( \( )  /__\  / __)(  )  / __)(  _  )( \( )
  )  (  /(__)\( (__  )(__( (__  )(_)(  )  (
 (_)\_)(__)(__)\___)(____)\___)(_____)(_)\_)

The History of Hacking  ·  May 31 – June 2, 2026  ·  Carolina Beach, NC

  • src/syncterm/GNUmakefile

    From Deucе@VERT to Git commit to main/sbbs/master on Thu Apr 23 23:45:47 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/7aa9fdfd2524730a5d5cc059
    Modified Files:
    src/syncterm/GNUmakefile
    Log Message:
    SyncTERM: stop rebuilding xp_crypt_botan3 / xp_tls_botan3 every run

    The botan: delegation target in build/botan.gmake has no prerequisites
    and no recipe that creates a botan sentinel file. Every gmake run
    therefore reruns the recipe, and gmake marks botan as "just remade" —
    any target that lists botan as a normal prerequisite rebuilds along
    with it. xp_crypt_botan3.o and xp_tls_botan3.o did exactly that.

    Move botan to the order-only side of the prerequisite list on both
    rules. The recursive Botan check still runs first (fast no-op when
    up to date), but its timestamp no longer invalidates the two C++
    objects. A second back-to-back gmake now produces no Compiling lines.

    Mirrors the cl: / cryptlib: pattern, whose consumers depend on the
    real \$(CRYPT_LIB) file path — not on the cl pseudo-target — and so
    never hit this bug.

    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Wed Apr 29 15:10:38 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/f36da754351f196969259bf6
    Modified Files:
    src/syncterm/GNUmakefile
    Log Message:
    SyncTERM: bootstrap DeuceSSH cmake configure at recipe time

    The deucessh recipe assumed configure had already run at parse time, but
    the parse-time probe deliberately skips configure when no system crypto
    is on disk — leaving the recipe to "cmake --build" a non-existent build
    tree. Run cmake -S/-B inside the recipe when deucessh.pc is missing so
    the unprobed path (fresh checkout, vendored Botan only) actually works.

    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net
  • From Deucе@VERT to Git commit to main/sbbs/master on Wed Apr 29 15:28:49 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/b9eb45b6e93811b478487702
    Modified Files:
    src/syncterm/GNUmakefile
    Log Message:
    SyncTERM: pass PKG_CONFIG_PATH explicitly to parse-time pkg-config

    Some gmake versions (observed on Ubuntu) don't propagate
    `export PKG_CONFIG_PATH := ...` from build/botan.gmake into $(shell)
    calls during the same parse phase, so vendored Botan's pkg-config dir
    isn't seen — pkg-config falls back to system search and fails to find botan-3. The make-side variable is set correctly, so re-emit it on
    the pkg-config command line for the three botan/libcrypto probes that
    matter (DSSH_CRYPTO_READY, TRAILING_LIBS, BOTAN_CXXFLAGS).

    Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

    ---
    ■ Synchronet ■ Vertrauen ■ Home of Synchronet ■ [vert/cvs/bbs].synchro.net