config BR2_PACKAGE_BOTAN_ARCH_SUPPORTS
	bool
	default y if BR2_aarch64 || BR2_aarch64_be
	default y if BR2_arm || BR2_armeb
	default y if BR2_i386 || BR2_x86_64
	default y if BR2_m68k
	default y if BR2_mips || BR2_mipsel || BR2_mips64 || BR2_mips64el
	default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le
	default y if BR2_riscv
	default y if BR2_sparc || BR2_sparc64
	default y if BR2_s390x
	default y if BR2_sh

config BR2_PACKAGE_BOTAN
	bool "botan"
	depends on BR2_INSTALL_LIBSTDCPP
	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_11 # C++20
	depends on BR2_PACKAGE_BOTAN_ARCH_SUPPORTS
	depends on BR2_TOOLCHAIN_HAS_THREADS
	select BR2_PACKAGE_BOOST_FILESYSTEM if BR2_PACKAGE_BOOST && BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
	select BR2_PACKAGE_BOOST_SYSTEM if BR2_PACKAGE_BOOST && BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
	help
	  Botan is a crypto library for C++

	  http://botan.randombit.net

comment "botan needs a toolchain w/ threads, C++, gcc >= 11"
	depends on !BR2_INSTALL_LIBSTDCPP \
		|| !BR2_TOOLCHAIN_GCC_AT_LEAST_11 \
		|| !BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_PACKAGE_BOTAN_ARCH_SUPPORTS
