# This file is part of the OpenADK project. OpenADK is copyrighted
# material, please see the LICENCE file in the top-level directory.

choice ADK_TARGET_ENDIAN_MODE
prompt "Endianess"
depends on ADK_TARGET_SYSTEM_GENERIC_ARC \
	|| ADK_TARGET_SYSTEM_GENERIC_AARCH64 \
	|| ADK_TARGET_SYSTEM_GENERIC_ARM \
	|| ADK_TARGET_SYSTEM_GENERIC_CSKY \
	|| ADK_TARGET_SYSTEM_GENERIC_C6X \
	|| ADK_TARGET_SYSTEM_GENERIC_MICROBLAZE \
	|| ADK_TARGET_SYSTEM_GENERIC_MIPS \
	|| ADK_TARGET_SYSTEM_GENERIC_MIPS64 \
	|| ADK_TARGET_SYSTEM_GENERIC_NDS32 \
	|| ADK_TARGET_SYSTEM_GENERIC_PPC64 \
	|| ADK_TARGET_SYSTEM_GENERIC_SH \
	|| ADK_TARGET_SYSTEM_GENERIC_XTENSA \
	|| ADK_TARGET_SYSTEM_SYNOPSYS_NSIM \
	|| ADK_TARGET_SYSTEM_QEMU_AARCH64 \
	|| ADK_TARGET_SYSTEM_QEMU_CSKY \
	|| ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605 \
	|| ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 \
	|| ADK_TARGET_SYSTEM_QEMU_MIPS \
	|| ADK_TARGET_SYSTEM_QEMU_MIPS64 \
	|| ADK_TARGET_SYSTEM_QEMU_PPC64 \
	|| ADK_TARGET_SYSTEM_QEMU_SH \
	|| ADK_TARGET_SYSTEM_QEMU_XTENSA

config ADK_TARGET_WITH_LITTLE_ENDIAN
	bool "little"
	select ADK_TARGET_LITTLE_ENDIAN

config ADK_TARGET_WITH_BIG_ENDIAN
	bool "big"
	select ADK_TARGET_BIG_ENDIAN

endchoice

config ADK_TARGET_LITTLE_ENDIAN
	bool

config ADK_TARGET_BIG_ENDIAN
	bool

config ADK_TARGET_ENDIAN_SUFFIX
	string
	default "le" if ADK_TARGET_LITTLE_ENDIAN && (ADK_TARGET_ARCH_NDS32 || ADK_TARGET_ARCH_PPC64)
	default "el" if ADK_TARGET_LITTLE_ENDIAN && (ADK_TARGET_ARCH_MIPS || ADK_TARGET_ARCH_MIPS64 || ADK_TARGET_ARCH_MICROBLAZE)
	default "be" if ADK_TARGET_BIG_ENDIAN && (ADK_TARGET_ARCH_NDS32 || ADK_TARGET_ARCH_AARCH64)
	default "eb" if ADK_TARGET_BIG_ENDIAN && (ADK_TARGET_ARCH_ARC || ADK_TARGET_ARM || ADK_TARGET_ARCH_SH)

config ADK_TARGET_ENDIAN
	string
	default "little" if ADK_TARGET_LITTLE_ENDIAN
	default "big" if ADK_TARGET_BIG_ENDIAN

config ADK_JFFS2_OPTS
	string
	default "-l" if ADK_TARGET_LITTLE_ENDIAN
	default "-b" if ADK_TARGET_BIG_ENDIAN