diff --git a/configure.ac b/configure.ac index edce034..9961d85 100644 --- a/configure.ac +++ b/configure.ac @@ -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) diff --git a/depends/packages/packages.mk b/depends/packages/packages.mk index b2c9732..e22f0b9 100644 --- a/depends/packages/packages.mk +++ b/depends/packages/packages.mk @@ -1,4 +1,4 @@ -packages:= +packages:=randomx boost_packages = boost diff --git a/depends/packages/randomx.mk b/depends/packages/randomx.mk new file mode 100644 index 0000000..a328aaa --- /dev/null +++ b/depends/packages/randomx.mk @@ -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 diff --git a/src/Makefile.am b/src/Makefile.am index cd20f3f..99c74f9 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -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)