config BR2_PACKAGE_HOST_ERLANG_ARCH_SUPPORTS
	bool
	default y if BR2_HOSTARCH = "x86_64"
	default y if BR2_HOSTARCH = "x86"

config BR2_PACKAGE_ERLANG_ARCH_SUPPORTS
	bool
	# see HOWTO/INSTALL.md for Erlang's supported platforms
	# when using its native atomic ops implementation
	default y if BR2_i386 || BR2_x86_64 || BR2_powerpc || \
		BR2_sparc_v9 || BR2_arm || BR2_aarch64 || BR2_mipsel
	# erlang needs host-erlang
	depends on BR2_PACKAGE_HOST_ERLANG_ARCH_SUPPORTS

comment "erlang needs a toolchain w/ dynamic library, threads"
	depends on BR2_USE_MMU # fork()
	depends on BR2_PACKAGE_ERLANG_ARCH_SUPPORTS
	depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_ERLANG
	bool "erlang"
	depends on BR2_USE_MMU # fork()
	depends on !BR2_STATIC_LIBS
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_PACKAGE_ERLANG_ARCH_SUPPORTS
	select BR2_PACKAGE_ZLIB
	help
	  Erlang is a programming language used to build massively
	  scalable soft real-time systems with requirements on high
	  availability. Some of its uses are in telecoms, banking,
	  e-commerce, computer telephony and instant messaging.
	  Erlang's runtime system has built-in support for
	  concurrency, distribution and fault tolerance.

	  http://www.erlang.org

if BR2_PACKAGE_ERLANG

config BR2_PACKAGE_ERLANG_MEGACO
	bool "install megaco application"
	help
	  The Megaco application is a framework for building
	  applications on top of the Megaco/H.248 protocol. It is
	  approximately 14MB in size so if you do not need it then
	  it is recommended not to enable it.

endif # BR2_PACKAGE_ERLANG
