config BR2_PACKAGE_MUSL_ARCH_SUPPORTS
	bool
	default y if BR2_aarch64
	default y if BR2_aarch64_be
	default y if BR2_arm
	default y if BR2_armeb
	default y if BR2_i386
	default y if BR2_loongarch64
	default y if BR2_m68k_m68k
	default y if BR2_microblaze
	default y if BR2_mips
	default y if BR2_mipsel
	default y if BR2_mips64
	default y if BR2_mips64el
	default y if BR2_or1k
	default y if BR2_powerpc
	default y if BR2_powerpc64
	default y if BR2_powerpc64le
	default y if BR2_riscv
	default y if BR2_s390x
	default y if BR2_sh
	default y if BR2_x86_64
	depends on !BR2_POWERPC_CPU_HAS_SPE # not supported, build breaks
	depends on !(BR2_powerpc64 || BR2_powerpc64le) || BR2_POWERPC_CPU_HAS_ALTIVEC
	# sh2 nommu is supported by musl, but we don't have support
	# for it in Buildroot.
	depends on BR2_USE_MMU

config BR2_PACKAGE_MUSL_SUPPORTS
	bool
	default y if BR2_PACKAGE_MUSL_ARCH_SUPPORTS

config BR2_PACKAGE_MUSL
	bool
	default y
	depends on BR2_TOOLCHAIN_USES_MUSL
	select BR2_PACKAGE_LINUX_HEADERS
	# SSP broken on i386/ppc: http://www.openwall.com/lists/musl/2016/12/04/2
	select BR2_TOOLCHAIN_HAS_SSP if BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI \
		&& !(BR2_i386 || BR2_powerpc)
	# Compatibility headers: cdefs.h, queue.h
	select BR2_PACKAGE_MUSL_COMPAT_HEADERS
	help
	  http://musl.libc.org/
