comment "linux-backports needs a Linux kernel to be built"
	depends on !BR2_LINUX_KERNEL

config BR2_PACKAGE_LINUX_BACKPORTS
	bool "linux-backports"
	depends on BR2_LINUX_KERNEL
	help
	  The linux-backports package includes many Linux drivers from
	  recent kernels, backported to older ones.

	  This version of linux-backports supports kernels starting
	  from 3.0.

	  https://backports.wiki.kernel.org

if BR2_PACKAGE_LINUX_BACKPORTS

choice
	prompt "Linux kernel driver backports configuration"
	default BR2_PACKAGE_LINUX_BACKPORTS_USE_DEFCONFIG

config BR2_PACKAGE_LINUX_BACKPORTS_USE_DEFCONFIG
	bool "Using an in-tree defconfig file"

config BR2_PACKAGE_LINUX_BACKPORTS_USE_CUSTOM_CONFIG
	bool "Using a custom (def)config file"

endchoice

config BR2_PACKAGE_LINUX_BACKPORTS_DEFCONFIG
	string "Defconfig name"
	depends on BR2_PACKAGE_LINUX_BACKPORTS_USE_DEFCONFIG
	help
	  Name of the backports defconfig file to use, without the
	  leading defconfig-. The defconfig is located in defconfigs/
	  directory in the backports tree.

config BR2_PACKAGE_LINUX_BACKPORTS_CUSTOM_CONFIG_FILE
	string "Configuration file path"
	depends on BR2_PACKAGE_LINUX_BACKPORTS_USE_CUSTOM_CONFIG
	help
	  Path to the backports configuration file

	  Note: this can be a defconfig file or a complete .config
	  file, which can later be saved back with make
	  linux-update-(def)config.

config BR2_PACKAGE_LINUX_BACKPORTS_CONFIG_FRAGMENT_FILES
	string "Additional configuration fragment files"
	help
	  A space-separated list of configuration fragment files, that
	  will be merged to the main linux-backports configuration file.

endif # BR2_PACKAGE_LINUX_BACKPORTS
