Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 21 additions & 2 deletions src/impl/dgb/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,25 @@
if(COIN_DGB)
message(STATUS "c2pool: DGB Scrypt-only coin module enabled (skeleton)")
add_subdirectory(coin)
# add_subdirectory(daemon)
# add_subdirectory(test)

# impl_dgb pool/share-layer OBJECT lib (Phase B / B1). Mirrors the ltc OBJECT
# lib (dgb was ported verbatim from src/impl/ltc, Scrypt parent) per the
# ci-steward OBJECT-lib direct-naming convention (#22/#39). B1 is header-only,
# so b1_smoke.cpp is the sole compile unit giving the surface a whole-target
# build gate; real TUs (config_pool.cpp/node.cpp/protocol_actual.cpp/
# protocol_legacy.cpp) replace it as dgb-scrypt-steward lands them.
add_library(dgb OBJECT
b1_smoke.cpp
share_types.hpp share.hpp
share_tracker.hpp share_check.hpp share_messages.hpp
redistribute.hpp
config_coin.hpp config_pool.hpp
messages.hpp node.hpp peer.hpp
# auto_ratchet.hpp / donation_consensus.hpp: PILLAR 1/4, gated -- not compiled here
)

target_link_libraries(dgb core pool sharechain dgb_coin btclibs c2pool_storage ${SECP256K1_LIBRARIES})

# add_subdirectory(daemon) # M3
# add_subdirectory(test) # B-later: share_test references LTC types
endif()
20 changes: 20 additions & 0 deletions src/impl/dgb/b1_smoke.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
// DGB Phase B (B1) sharechain-verify surface — compile-gate translation unit.
//
// The B1 surface (share_types / share / share_tracker / share_check /
// share_messages / redistribute) is header-only at B1: each header passes
// g++ -std=c++20 -fsyntax-only individually, but nothing instantiates them
// inside a real translation unit, so a whole-target compile gate did not yet
// exist. This TU gives the dgb OBJECT lib one compilable source so the surface
// builds AS A UNIT (per-coin dgb smoke gate), turning header-graph breakage
// into a build failure instead of latent rot.
//
// ci-steward build-gate scaffolding (dgb-tree-only). REMOVE this file once the
// real dgb pool-layer translation units land (config_pool.cpp / node.cpp /
// protocol_actual.cpp / protocol_legacy.cpp, owned by dgb-scrypt-steward) and
// supply the OBJECT lib with genuine symbols.
#include "share_types.hpp"
#include "share.hpp"
#include "share_tracker.hpp"
#include "share_check.hpp"
#include "share_messages.hpp"
#include "redistribute.hpp"
Loading