comment "Binutils Options"

config BR2_PACKAGE_HOST_BINUTILS_SUPPORTS_CFI
	bool
	default y
	depends on !BR2_microblaze

choice
	prompt "Binutils Version"
	default BR2_BINUTILS_VERSION_2_35_X if !BR2_arc && !BR2_csky
	default BR2_BINUTILS_VERSION_ARC if BR2_arc
	default BR2_BINUTILS_VERSION_CSKY if BR2_csky
	help
	  Select the version of binutils you wish to use.

config BR2_BINUTILS_VERSION_2_32_X
	bool "binutils 2.32"
	depends on !BR2_csky

config BR2_BINUTILS_VERSION_2_34_X
	bool "binutils 2.34"
	depends on !BR2_csky
	# https://github.com/uclinux-dev/elf2flt/pull/16
	# https://github.com/uclinux-dev/elf2flt/issues/12
	depends on !BR2_BINFMT_FLAT

config BR2_BINUTILS_VERSION_2_35_X
	bool "binutils 2.35.2"
	depends on !BR2_csky
	# https://github.com/uclinux-dev/elf2flt/pull/16
	# https://github.com/uclinux-dev/elf2flt/issues/12
	depends on !BR2_BINFMT_FLAT

config BR2_BINUTILS_VERSION_2_36_X
	bool "binutils 2.36.1"
	depends on !BR2_csky
	# https://github.com/uclinux-dev/elf2flt/pull/16
	# https://github.com/uclinux-dev/elf2flt/issues/12
	depends on !BR2_BINFMT_FLAT

config BR2_BINUTILS_VERSION_ARC
	bool "binutils arc (2.34.50)"
	depends on BR2_arc

config BR2_BINUTILS_VERSION_CSKY
	bool "binutils csky"
	depends on BR2_csky

endchoice

config BR2_BINUTILS_VERSION
	string
	default "arc-2020.09-release"	if BR2_BINUTILS_VERSION_ARC
	default "c66d8bbcebfddf713b2b436e1b135e6b125a55a5" if BR2_BINUTILS_VERSION_CSKY
	default "2.32"		if BR2_BINUTILS_VERSION_2_32_X
	default "2.34"		if BR2_BINUTILS_VERSION_2_34_X
	default "2.35.2"	if BR2_BINUTILS_VERSION_2_35_X
	default "2.36.1"	if BR2_BINUTILS_VERSION_2_36_X

config BR2_BINUTILS_ENABLE_LTO
	bool

config BR2_BINUTILS_EXTRA_CONFIG_OPTIONS
	string "Additional binutils options"
	default ""
	help
	  Any additional binutils options you may want to include.
