aboutsummaryrefslogtreecommitdiff
path: root/nuttx/arch/arm/src/armv7-m/Toolchain.defs
diff options
context:
space:
mode:
Diffstat (limited to 'nuttx/arch/arm/src/armv7-m/Toolchain.defs')
-rw-r--r--nuttx/arch/arm/src/armv7-m/Toolchain.defs267
1 files changed, 0 insertions, 267 deletions
diff --git a/nuttx/arch/arm/src/armv7-m/Toolchain.defs b/nuttx/arch/arm/src/armv7-m/Toolchain.defs
deleted file mode 100644
index 1ba764593..000000000
--- a/nuttx/arch/arm/src/armv7-m/Toolchain.defs
+++ /dev/null
@@ -1,267 +0,0 @@
-############################################################################
-# arch/arm/src/armv7-m/Toolchain.defs
-#
-# Copyright (C) 2012-2013 Gregory Nutt. All rights reserved.
-# Author: Gregory Nutt <gnutt@nuttx.org>
-#
-# Redistribution and use in source and binary forms, with or without
-# modification, are permitted provided that the following conditions
-# are met:
-#
-# 1. Redistributions of source code must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-# 2. Redistributions in binary form must reproduce the above copyright
-# notice, this list of conditions and the following disclaimer in
-# the documentation and/or other materials provided with the
-# distribution.
-# 3. Neither the name NuttX nor the names of its contributors may be
-# used to endorse or promote products derived from this software
-# without specific prior written permission.
-#
-# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
-# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
-# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
-# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
-# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
-# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
-# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
-# POSSIBILITY OF SUCH DAMAGE.
-#
-############################################################################
-
-# Setup for the selected toolchain
-
-#
-# Handle old-style chip-specific toolchain names in the absence of
-# a new-style toolchain specification, force the selection of a single
-# toolchain and allow the selected toolchain to be overridden by a
-# command-line selection.
-#
-
-ifeq ($(filter y, \
- $(CONFIG_LPC43_ATOLLIC_LITE) \
- $(CONFIG_STM32_ATOLLIC_LITE) \
- $(CONFIG_LPC43_ATOLLIC_PRO) \
- $(CONFIG_STM32_ATOLLIC_PRO) \
- $(CONFIG_ARMV7M_TOOLCHAIN_ATOLLIC) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= ATOLLIC
-endif
-ifeq ($(filter y, \
- $(CONFIG_KINETIS_BUILDROOT) \
- $(CONFIG_LM_BUILDROOT) \
- $(CONFIG_LPC17_BUILDROOT) \
- $(CONFIG_LPC43_BUILDROOT) \
- $(CONFIG_SAM3U_BUILDROOT) \
- $(CONFIG_STM32_BUILDROOT) \
- $(CONFIG_ARMV7M_TOOLCHAIN_BUILDROOT) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= BUILDROOT
-endif
-ifeq ($(filter y, \
- $(CONFIG_LPC17_CODEREDL) \
- $(CONFIG_ARMV7M_TOOLCHAIN_CODEREDL) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDL
-endif
-ifeq ($(filter y, \
- $(CONFIG_LPC17_CODEREDW) \
- $(CONFIG_LPC43_CODEREDW) \
- $(CONFIG_ARMV7M_TOOLCHAIN_CODEREDW) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= CODEREDW
-endif
-ifeq ($(filter y, \
- $(CONFIG_KINETIS_CODESOURCERYL) \
- $(CONFIG_LM_CODESOURCERYL) \
- $(CONFIG_LPC17_CODESOURCERYL) \
- $(CONFIG_LPC43_CODESOURCERYL) \
- $(CONFIG_SAM3U_CODESOURCERYL) \
- $(CONFIG_STM32_CODESOURCERYL) \
- $(CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYL) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYL
-endif
-ifeq ($(filter y, \
- $(CONFIG_KINETIS_CODESOURCERYW) \
- $(CONFIG_LM_CODESOURCERYW) \
- $(CONFIG_LPC17_CODESOURCERYW) \
- $(CONFIG_LPC43_CODESOURCERYW) \
- $(CONFIG_SAM3U_CODESOURCERYW) \
- $(CONFIG_STM32_CODESOURCERYW) \
- $(CONFIG_ARMV7M_TOOLCHAIN_CODESOURCERYW) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= CODESOURCERYW
-endif
-ifeq ($(filter y, \
- $(CONFIG_KINETIS_DEVKITARM) \
- $(CONFIG_LM_DEVKITARM) \
- $(CONFIG_LPC17_DEVKITARM) \
- $(CONFIG_LPC43_DEVKITARM) \
- $(CONFIG_SAM3U_DEVKITARM) \
- $(CONFIG_STM32_DEVKITARM) \
- $(CONFIG_ARMV7M_TOOLCHAIN_DEVKITARM) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= DEVKITARM
-endif
-ifeq ($(filter y, \
- $(CONFIG_ARMV7M_TOOLCHAIN_GNU_EABI) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= GNU_EABI
-endif
-ifeq ($(filter y, \
- $(CONFIG_STM32_RAISONANCE) \
- $(CONFIG_ARMV7M_TOOLCHAIN_RAISONANCE) \
- ),y)
- CONFIG_ARMV7M_TOOLCHAIN ?= RAISONANCE
-endif
-
-#
-# Supported toolchains
-#
-# TODO - It's likely that all of these toolchains now support the
-# CortexM4. Since they are all GCC-based, we could almost
-# certainly simplify this further.
-#
-# Each toolchain definition should set:
-#
-# CROSSDEV The GNU toolchain triple (command prefix)
-# ARCROSSDEV If required, an alternative prefix used when
-# invoking ar and nm.
-# ARCHCPUFLAGS CPU-specific flags selecting the instruction set
-# FPU options, etc.
-# MAXOPTIMIZATION The maximum optimization level that results in
-# reliable code generation.
-#
-
-# Atollic toolchain under Windows
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),ATOLLIC)
- CROSSDEV ?= arm-atollic-eabi-
- ARCROSSDEV ?= arm-atollic-eabi-
- ifneq ($(CONFIG_WINDOWS_NATIVE),y)
- WINTOOL = y
- endif
- ifeq ($(CONFIG_ARCH_CORTEXM4),y)
- ifeq ($(CONFIG_ARCH_FPU),y)
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
- else
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfloat-abi=soft
- endif
- else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
- endif
-endif
-
-# NuttX buildroot under Linux or Cygwin
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),BUILDROOT)
-ifeq ($(CONFIG_ARMV7M_OABI_TOOLCHAIN),y)
- CROSSDEV ?= arm-nuttx-elf-
- ARCROSSDEV ?= arm-nuttx-elf-
- ARCHCPUFLAGS = -mtune=cortex-m3 -march=armv7-m -mfloat-abi=soft
-else
- CROSSDEV ?= arm-nuttx-eabi-
- ARCROSSDEV ?= arm-nuttx-eabi-
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
-endif
- MAXOPTIMIZATION = -Os
-endif
-
-# Code Red RedSuite under Linux
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODEREDL)
- CROSSDEV ?= arm-none-eabi-
- ARCROSSDEV ?= arm-none-eabi-
- ifeq ($(CONFIG_ARCH_CORTEXM4),y)
- ifeq ($(CONFIG_ARCH_FPU),y)
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
- else
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfloat-abi=soft
- endif
- else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
- endif
-endif
-
-# Code Red RedSuite under Windows
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODEREDW)
- CROSSDEV ?= arm-none-eabi-
- ARCROSSDEV ?= arm-none-eabi-
- ifneq ($(CONFIG_WINDOWS_NATIVE),y)
- WINTOOL = y
- endif
- ifeq ($(CONFIG_ARCH_CORTEXM4),y)
- ifeq ($(CONFIG_ARCH_FPU),y)
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
- else
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfloat-abi=soft
- endif
- else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
- endif
-endif
-
-# CodeSourcery under Linux
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODESOURCERYL)
- CROSSDEV ?= arm-none-eabi-
- ARCROSSDEV ?= arm-none-eabi-
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
- MAXOPTIMIZATION = -O2
-endif
-
-# CodeSourcery under Windows
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODESOURCERYW)
- CROSSDEV ?= arm-none-eabi-
- ARCROSSDEV ?= arm-none-eabi-
- ifneq ($(CONFIG_WINDOWS_NATIVE),y)
- WINTOOL = y
- endif
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
-endif
-
-# devkitARM under Windows
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),DEVKITARM)
- CROSSDEV ?= arm-eabi-
- ARCROSSDEV ?= arm-eabi-
- ifneq ($(CONFIG_WINDOWS_NATIVE),y)
- WINTOOL = y
- endif
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
-endif
-
-# Generic GNU EABI toolchain on OS X, Linux or any typical Posix system
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),GNU_EABI)
- CROSSDEV ?= arm-none-eabi-
- ARCROSSDEV ?= arm-none-eabi-
- MAXOPTIMIZATION ?= -O3
- ifeq ($(CONFIG_ARCH_CORTEXM4),y)
- ifeq ($(CONFIG_ARCH_FPU),y)
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
- else
- ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfloat-abi=soft
- endif
- else ifeq ($(CONFIG_ARCH_CORTEXM3),y)
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
- endif
-endif
-
-# Raisonance RIDE7 under Windows
-
-ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),RAISONANCE)
- CROSSDEV ?= arm-none-eabi-
- ARCROSSDEV ?= arm-none-eabi-
- ifneq ($(CONFIG_WINDOWS_NATIVE),y)
- WINTOOL = y
- endif
- ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
-endif