1# archs officially supported by upstream
2config BR2_PACKAGE_XMRIG_ARCH_SUPPORTS
3	bool
4	default y if BR2_ARM_CPU_ARMV7A
5	default y if BR2_aarch64
6	default y if BR2_x86_64
7	default y if BR2_i386
8
9config BR2_PACKAGE_XMRIG
10	bool "xmrig"
11	depends on BR2_PACKAGE_XMRIG_ARCH_SUPPORTS
12	depends on BR2_USE_MMU # libuv
13	depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libuv
14	depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL # libuv
15	# xmrig needs fenv.h which is not provided by uclibc
16	depends on !BR2_TOOLCHAIN_USES_UCLIBC
17	depends on !BR2_STATIC_LIBS # libuv
18	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libuv
19	depends on BR2_INSTALL_LIBSTDCPP
20	select BR2_PACKAGE_LIBUV
21	help
22	  RandomX, CryptoNight, AstroBWT and Argon2 CPU/GPU miner.
23
24	  https://xmrig.com
25
26comment "xmrig needs a glibc or musl toolchain w/ NPTL, dynamic library, C++, gcc >= 4.9"
27	depends on BR2_PACKAGE_XMRIG_ARCH_SUPPORTS
28	depends on BR2_USE_MMU
29	depends on BR2_TOOLCHAIN_HAS_SYNC_4
30	depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL || \
31		BR2_TOOLCHAIN_USES_UCLIBC || BR2_STATIC_LIBS || \
32		!BR2_INSTALL_LIBSTDCPP || \
33		!BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
34