###############################################################################
# FILE: Makefile.config
#
# Configure the ASR build.  Works in conjunction with Makefile.defs and
# system-wide makefiles
###############################################################################

ASR_HOST_OS	      = UNIX
ASR_OS            = UNIX
ASR_TARGET_OS     = UNIX

ASR_HOST_CPU      = I86

ifeq ($(TARGET_ARCH),arm)
  ASR_CPU         = ARM
  ASR_TARGET_CPU  = ARM
endif
ifeq ($(TARGET_ARCH),$(filter $(TARGET_ARCH),x86 x86_64 x32))
  ASR_CPU         = I86
  ASR_TARGET_CPU  = I86
endif
ifeq ($(TARGET_ARCH),sh)
  ASR_CPU         = SH4
  ASR_TARGET_CPU  = SH4
endif
ifeq ($(TARGET_ARCH),$(filter $(TARGET_ARCH),mips mips64))
  ASR_CPU         = MIPS
  ASR_TARGET_CPU  = MIPS
endif
ifeq ($(TARGET_ARCH),arm64)
  ASR_CPU         = AARCH64
  ASR_TARGET_CPU  = AARCH64
endif
ifeq ($(ASR_TARGET_CPU),)
  $(error Unsupported TARGET_ARCH for ASR)
endif

ASR_COMPILER      = GNU

ifeq ($(TARGET_BUILD_TYPE),debug)
  ASR_BUILD       = DEBUG
else
ifeq ($(TARGET_BUILD_TYPE),release)
  ASR_BUILD       = SHIP
else
  $(error Unsupported TARGET_BUILD_TYPE for ASR)
endif
endif
