config BR2_PACKAGE_AICCU
	bool "aiccu"
	depends on BR2_INET_IPV6
	depends on BR2_USE_WCHAR
	depends on BR2_TOOLCHAIN_HAS_THREADS
	depends on BR2_USE_MMU # fork()
	# Uses dn_skipname(), only available since 0.9.33
	depends on !BR2_UCLIBC_VERSION_0_9_31
	# AVR32 only has uClibc 0.9.31, so there's no way it can build
	# due to the lack of dn_skipname(), even with external
	# toolchains.
	depends on !BR2_avr32
	# Triggers the _gp link issue
	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305
	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405
	select BR2_PACKAGE_GNUTLS
	help
	  SixXS Automatic IPv6 Connectivity Client Utility

	  AICCU (Automatic IPv6 Connectivity Client Utility) makes it
	  easy for users to get IPv6 connectivity. After having
	  requested an account, tunnel and optionally a subnet, AICCU
	  can be used to automatically configure the tunnel. AICCU
	  supports TIC (Tunnel Information & Control protocol), which it
	  uses for retrieving the tunnel configuration information,
	  AYIYA, which allows tunnels to be created even behind
	  firewalls and NAT's.

	  http://www.sixxs.net/tools/aiccu/

comment "aiccu needs a toolchain w/ IPv6, wchar, threads"
	depends on BR2_USE_MMU
	depends on !(BR2_INET_IPV6 && BR2_USE_WCHAR && BR2_TOOLCHAIN_HAS_THREADS)
	depends on !BR2_avr32
	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201305
	depends on !BR2_TOOLCHAIN_EXTERNAL_CODESOURCERY_NIOSII201405
