Integrate RandomX dependency into build system

This commit is contained in:
Capri 2026-09-13 16:50:15 +00:00
commit 285d68b78a
Signed by: VextaProject
SSH key fingerprint: SHA256:739BZv8LvIDY2tR7lXLy/IQ6MaGTQtYcG9GNvCjmpVM
4 changed files with 43 additions and 2 deletions

View file

@ -1483,6 +1483,17 @@ if test "x$use_qr" != xno; then
VEXTA_QT_CHECK([PKG_CHECK_MODULES([QR], [libqrencode], [have_qrencode=yes], [have_qrencode=no])])
fi
dnl RandomX proof-of-work library
AC_CHECK_HEADER([randomx.h], [], [
AC_MSG_ERROR([RandomX header randomx.h not found])
])
AC_CHECK_LIB([randomx], [randomx_get_flags], [
RANDOMX_LIBS="-lrandomx"
], [
AC_MSG_ERROR([RandomX library not found])
])
dnl ZMQ check
if test "x$use_zmq" = xyes; then
@ -1847,6 +1858,7 @@ AC_SUBST(NATPMP_LIBS)
AC_SUBST(EVENT_LIBS)
AC_SUBST(EVENT_PTHREADS_LIBS)
AC_SUBST(ZMQ_LIBS)
AC_SUBST(RANDOMX_LIBS)
AC_SUBST(QR_LIBS)
AC_SUBST(HAVE_GMTIME_R)
AC_SUBST(HAVE_FDATASYNC)

View file

@ -1,4 +1,4 @@
packages:=
packages:=randomx
boost_packages = boost

View file

@ -0,0 +1,29 @@
package=randomx
$(package)_version=1.2.3
$(package)_download_path=https://github.com/tevador/RandomX/archive/refs/tags
$(package)_file_name=v$($(package)_version).tar.gz
$(package)_sha256_hash=096af0bbe9d0dfeed6962c8541cd8f705a7ee2cfc2a6f433bcecc56941b720b8
define $(package)_set_vars
$(package)_cmake_opts=-DCMAKE_BUILD_TYPE=Release
$(package)_cmake_opts+=-DARCH=default
$(package)_cmake_opts+=-DBUILD_SHARED_LIBS=OFF
endef
define $(package)_preprocess_cmds
mkdir build
endef
define $(package)_config_cmds
cd build && $($(package)_cmake) ..
endef
define $(package)_build_cmds
$(MAKE) -C build randomx
endef
define $(package)_stage_cmds
mkdir -p $($(package)_staging_prefix_dir)/include $($(package)_staging_prefix_dir)/lib && \
install src/randomx.h $($(package)_staging_prefix_dir)/include/randomx.h && \
install build/librandomx.a $($(package)_staging_prefix_dir)/lib/librandomx.a
endef

View file

@ -716,7 +716,7 @@ vexta_bin_ldadd = \
$(LIBMEMENV) \
$(LIBSECP256K1)
vexta_bin_ldadd += $(BOOST_LIBS) $(BDB_LIBS) $(MINIUPNPC_LIBS) $(NATPMP_LIBS) $(EVENT_PTHREADS_LIBS) $(EVENT_LIBS) $(ZMQ_LIBS) $(SQLITE_LIBS)
vexta_bin_ldadd += $(BOOST_LIBS) $(BDB_LIBS) $(MINIUPNPC_LIBS) $(NATPMP_LIBS) $(EVENT_PTHREADS_LIBS) $(EVENT_LIBS) $(ZMQ_LIBS) $(SQLITE_LIBS) $(RANDOMX_LIBS)
vextad_SOURCES = $(vexta_daemon_sources) init/digibyted.cpp
vextad_CPPFLAGS = $(vexta_bin_cppflags)