Skip to content

Make Dockerfile.xrpld build against rippled newer than 3.3.x - #96

Merged
manasip-prog merged 2 commits into
mainfrom
manasip/xrpld-build-post-3.3
Sep 8, 2026
Merged

manasip-prog merged 2 commits into
mainfrom
manasip/xrpld-build-post-3.3

Conversation

@manasip-prog

Copy link
Copy Markdown
Collaborator

Two build fixes that already exist on the unmerged #91 branch but not on main. Both are needed for any xrpld ref newer than staging/3.3.x-private, and neither has anything to do with the lending work they are currently attached to.

1. XRPLD_NO_PATCH_NIX_BINARY=1 on the fuzzer's conan install. rippled's cmake/PatchNixBinary.cmake resolves the loader via ${CMAKE_SOURCE_DIR}/bin/default-loader-path.sh, which is absent in conan's build folder (the recipe's exports_sources has no bin/), and COMMAND_ERROR_IS_FATAL aborts configure. Observed against 3.4.0-rc2 on ripple/rippled-antithesis run 34240477121:

CMake Error at cmake/PatchNixBinary.cmake:36 (execute_process)
-- Configuring incomplete, errors occurred!
xrpl/develop: ERROR: Error in build() method, line 185

Nothing is lost: that step builds libxrpl (xrpld=False), a static archive with no PT_INTERP, and the shipped binaries are patchelf'd explicitly. Scoped to this step so the xrpld build itself keeps rippled CI's behaviour.

2. Rewrite the fuzzer's pre-rename symbols. XRPLF/rippled#7933 moved beast::IP → beast::ip and xrpl::BuildInfo → xrpl::build_info; rippled-fuzzer still uses the old spelling. The rewrite is gated on the cloned xrpld actually carrying the new names, so pre-rename refs build unchanged.

Both were authored on manasip/lending-v1_1-accounting (commits 8416b05, 46e55ea) and are lifted here verbatim so the release-line move does not depend on that PR landing.

Does not address amendment activation for new Supported::No features — generate_genesis.py still needs the change that remains in #91.

🤖 Generated with Claude Code

rippled develop renamed CamelCase namespaces to snake_case
(XRPLF/rippled#7933): beast::IP -> beast::ip and xrpl::BuildInfo ->
xrpl::build_info. rippled-fuzzer (all branches) still uses the old
spelling in four call sites, so building the fuzzer fails against
develop and takes the whole `build xrpld` stage with it.

Rewrite the fuzzer's references in the image, gated on the cloned xrpld
actually declaring the new namespaces, so pre-rename refs (e.g.
xrpld-private staging/3.3.x-private) build unchanged. The includes keep
the BuildInfo.h filename, which the substitutions leave alone.

develop is the only ref carrying Lending v1.1 (closed-ended vaults
landed Aug 12, after the Aug 4 rename), so there is no commit with both
the v1.1 fields and the old namespaces to pin instead.
@manasip-prog
manasip-prog merged commit 857180b into main Sep 8, 2026
1 check passed
@manasip-prog
manasip-prog deleted the manasip/xrpld-build-post-3.3 branch September 8, 2026 15:38
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