/configs/stm32f4discovery/winbuild and configs/cloudctrl upated to use Mike's Toolchain.defs; Fix error introduced into tools/configure.sh

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@5380 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo 2012-11-21 19:54:44 +00:00
parent 64e00aa972
commit bb9dc58217
8 changed files with 65 additions and 134 deletions

View File

@ -3659,4 +3659,11 @@
* configs/cloudctrl: Darcy Gong's CloudController board. This is a * configs/cloudctrl: Darcy Gong's CloudController board. This is a
small network relay development board. Based on the Shenzhou IV development small network relay development board. Based on the Shenzhou IV development
board design. It is based on the STM32F107VC MCU. board design. It is based on the STM32F107VC MCU.
* Lots of build files: ARMv7-M and MIPS32 Make.defs now include a common
Toolchain.defs file that can be used to manage toolchains in a more
configurable way. Contributed by Mike Smith
* configs/stm32f4discovery/winbuild and configs/cloudctrl: Adapted to use
Mike's Toolchain.defs.
* tools/configure.sh: Adapted to handle paths and setenv.bat files correctly
for native Windows builds.

View File

@ -143,7 +143,9 @@ endif
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),ATOLLIC) ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),ATOLLIC)
CROSSDEV = arm-atollic-eabi- CROSSDEV = arm-atollic-eabi-
ARCROSSDEV = arm-atollic-eabi- ARCROSSDEV = arm-atollic-eabi-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
ifeq ($(CONFIG_ARCH_CORTEXM4),y) ifeq ($(CONFIG_ARCH_CORTEXM4),y)
ifeq ($(CONFIG_ARCH_FPU),y) ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
@ -190,7 +192,9 @@ endif
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODEREDW) ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODEREDW)
CROSSDEV = arm-none-eabi- CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi- ARCROSSDEV = arm-none-eabi-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
ifeq ($(CONFIG_ARCH_CORTEXM4),y) ifeq ($(CONFIG_ARCH_CORTEXM4),y)
ifeq ($(CONFIG_ARCH_FPU),y) ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
@ -216,7 +220,9 @@ endif
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODESOURCERYW) ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),CODESOURCERYW)
CROSSDEV = arm-none-eabi- CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi- ARCROSSDEV = arm-none-eabi-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif endif
@ -225,7 +231,9 @@ endif
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),DEVKITARM) ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),DEVKITARM)
CROSSDEV = arm-eabi- CROSSDEV = arm-eabi-
ARCROSSDEV = arm-eabi- ARCROSSDEV = arm-eabi-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif endif
@ -251,6 +259,8 @@ endif
ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),RAISONANCE) ifeq ($(CONFIG_ARMV7M_TOOLCHAIN),RAISONANCE)
CROSSDEV = arm-none-eabi- CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi- ARCROSSDEV = arm-none-eabi-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif endif

View File

@ -131,7 +131,9 @@ endif
ifeq ($(CONFIG_MIPS32_TOOLCHAIN),MICROCHIPW) ifeq ($(CONFIG_MIPS32_TOOLCHAIN),MICROCHIPW)
CROSSDEV = pic32- CROSSDEV = pic32-
# CROSSDEV = xc32- # CROSSDEV = xc32-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
MAXOPTIMIZATION = -O2 MAXOPTIMIZATION = -O2
ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data
ARCHPICFLAGS = -fpic -membedded-pic ARCHPICFLAGS = -fpic -membedded-pic
@ -156,7 +158,9 @@ endif
ifeq ($(CONFIG_MIPS32_TOOLCHAIN),MICROCHIPW_LITE) ifeq ($(CONFIG_MIPS32_TOOLCHAIN),MICROCHIPW_LITE)
CROSSDEV = pic32- CROSSDEV = pic32-
# CROSSDEV = xc32- # CROSSDEV = xc32-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
# MAXOPTIMIZATION = -O2 # MAXOPTIMIZATION = -O2
ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data ARCHCPUFLAGS = -mprocessor=elf32pic32mx -mno-float -mlong32 -membedded-data
ARCHPICFLAGS = -fpic -membedded-pic ARCHPICFLAGS = -fpic -membedded-pic
@ -179,7 +183,9 @@ endif
ifeq ($(CONFIG_MIPS32_TOOLCHAIN),PINGUINOW) ifeq ($(CONFIG_MIPS32_TOOLCHAIN),PINGUINOW)
CROSSDEV = mips- CROSSDEV = mips-
ifneq ($(CONFIG_WINDOWS_NATIVE),y)
WINTOOL = y WINTOOL = y
endif
MAXOPTIMIZATION = -O2 MAXOPTIMIZATION = -O2
ARCHCPUFLAGS = -mlong32 -membedded-data -msoft-float -march=24kc -EL ARCHCPUFLAGS = -mlong32 -membedded-data -msoft-float -march=24kc -EL
ARCHPICFLAGS = -fpic -membedded-pic ARCHPICFLAGS = -fpic -membedded-pic

View File

@ -35,63 +35,7 @@
include ${TOPDIR}/.config include ${TOPDIR}/.config
include ${TOPDIR}/tools/Config.mk include ${TOPDIR}/tools/Config.mk
include ${TOPDIR}/arch/arm/src/armv7-m/Toolchain.defs
# Setup for the selected toolchain
ifeq ($(CONFIG_STM32_CODESOURCERYW),y)
# CodeSourcery under Windows
CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi-
WINTOOL = y
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_CODESOURCERYL),y)
# CodeSourcery under Linux
CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi-
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
MAXOPTIMIZATION = -O2
endif
ifeq ($(CONFIG_STM32_ATOLLIC_LITE),y)
# Atollic toolchain under Windows
CROSSDEV = arm-atollic-eabi-
ARCROSSDEV =
WINTOOL = y
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_ATOLLIC_PRO),y)
# Atollic toolchain under Windows
CROSSDEV = arm-atollic-eabi-
ARCROSSDEV = arm-atollic-eabi-
WINTOOL = y
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_DEVKITARM),y)
# devkitARM under Windows
CROSSDEV = arm-eabi-
ARCROSSDEV = arm-eabi-
WINTOOL = y
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_RAISONANCE),y)
# Raisonance RIDE7 under Windows
CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi-
WINTOOL = y
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_BUILDROOT),y)
# NuttX buildroot under Linux or Cygwin
# OABI
# CROSSDEV = arm-nuttx-elf-
# ARCROSSDEV = arm-nuttx-elf-
# ARCHCPUFLAGS = -mtune=cortex-m3 -march=armv7-m -mfloat-abi=soft
# EABI
CROSSDEV = arm-nuttx-eabi-
ARCROSSDEV = arm-nuttx-eabi-
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
MAXOPTIMIZATION = -Os
endif
# Pick the linker script # Pick the linker script

View File

@ -35,83 +35,87 @@
-include $(TOPDIR)/Make.defs -include $(TOPDIR)/Make.defs
CFLAGS += -I$(TOPDIR)/sched CFLAGS += -I$(TOPDIR)/sched
ASRCS = ASRCS =
AOBJS = $(ASRCS:.S=$(OBJEXT)) AOBJS = $(ASRCS:.S=$(OBJEXT))
CSRCS = up_boot.c up_spi.c CSRCS = up_boot.c up_spi.c
ifeq ($(CONFIG_HAVE_CXX),y) ifeq ($(CONFIG_HAVE_CXX),y)
CSRCS += up_cxxinitialize.c CSRCS += up_cxxinitialize.c
endif endif
ifeq ($(CONFIG_ARCH_LEDS),y) ifeq ($(CONFIG_ARCH_LEDS),y)
CSRCS += up_autoleds.c CSRCS += up_autoleds.c
else else
CSRCS += up_userleds.c CSRCS += up_userleds.c
endif endif
ifeq ($(CONFIG_ARCH_BUTTONS),y) ifeq ($(CONFIG_ARCH_BUTTONS),y)
CSRCS += up_buttons.c CSRCS += up_buttons.c
endif endif
ifeq ($(CONFIG_STM32_OTGFS),y) ifeq ($(CONFIG_STM32_OTGFS),y)
CSRCS += up_usb.c CSRCS += up_usb.c
endif endif
ifeq ($(CONFIG_PWM),y) ifeq ($(CONFIG_PWM),y)
CSRCS += up_pwm.c CSRCS += up_pwm.c
endif endif
ifeq ($(CONFIG_QENCODER),y) ifeq ($(CONFIG_QENCODER),y)
CSRCS += up_qencoder.c CSRCS += up_qencoder.c
endif endif
ifeq ($(CONFIG_WATCHDOG),y) ifeq ($(CONFIG_WATCHDOG),y)
CSRCS += up_watchdog.c CSRCS += up_watchdog.c
endif endif
ifeq ($(CONFIG_NSH_ARCHINIT),y) ifeq ($(CONFIG_NSH_ARCHINIT),y)
CSRCS += up_nsh.c CSRCS += up_nsh.c
endif endif
ifeq ($(CONFIG_PM_CUSTOMINIT),y) ifeq ($(CONFIG_PM_CUSTOMINIT),y)
CSRCS += up_pm.c CSRCS += up_pm.c
endif endif
ifeq ($(CONFIG_PM_BUTTONS),y) ifeq ($(CONFIG_PM_BUTTONS),y)
CSRCS += up_pmbuttons.c CSRCS += up_pmbuttons.c
endif endif
ifeq ($(CONFIG_IDLE_CUSTOM),y) ifeq ($(CONFIG_IDLE_CUSTOM),y)
CSRCS += up_idle.c CSRCS += up_idle.c
endif endif
ifeq ($(CONFIG_STM32_FSMC),y) ifeq ($(CONFIG_STM32_FSMC),y)
CSRCS += up_extmem.c CSRCS += up_extmem.c
ifeq ($(CONFIG_LCD_SSD1289),y) ifeq ($(CONFIG_LCD_SSD1289),y)
CSRCS += up_ssd1289.c CSRCS += up_ssd1289.c
endif endif
endif endif
ifeq ($(CONFIG_LCD_UG2864AMBAG01),y) ifeq ($(CONFIG_LCD_UG2864AMBAG01),y)
CSRCS += up_ug2864ambag01.c CSRCS += up_ug2864ambag01.c
endif endif
COBJS = $(CSRCS:.c=$(OBJEXT)) COBJS = $(CSRCS:.c=$(OBJEXT))
SRCS = $(ASRCS) $(CSRCS) SRCS = $(ASRCS) $(CSRCS)
OBJS = $(AOBJS) $(COBJS) OBJS = $(AOBJS) $(COBJS)
ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src ARCH_SRCDIR = $(TOPDIR)/arch/$(CONFIG_ARCH)/src
ifeq ($(WINTOOL),y) ifeq ($(CONFIG_WINDOWS_NATIVE),y)
CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \ CFLAGS += -I$(ARCH_SRCDIR)\chip -I$(ARCH_SRCDIR)\common -I$(ARCH_SRCDIR)\armv7-m
-I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
-I "${shell cygpath -w $(ARCH_SRCDIR)/armv7-m}"
else else
CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(ARCH_SRCDIR)/armv7-m ifeq ($(WINTOOL),y)
CFLAGS += -I "${shell cygpath -w $(ARCH_SRCDIR)/chip}" \
-I "${shell cygpath -w $(ARCH_SRCDIR)/common}" \
-I "${shell cygpath -w $(ARCH_SRCDIR)/armv7-m}"
else
CFLAGS += -I$(ARCH_SRCDIR)/chip -I$(ARCH_SRCDIR)/common -I$(ARCH_SRCDIR)/armv7-m
endif
endif endif
all: libboard$(LIBEXT) all: libboard$(LIBEXT)

View File

@ -35,52 +35,10 @@
include ${TOPDIR}\.config include ${TOPDIR}\.config
include ${TOPDIR}\tools\Config.mk include ${TOPDIR}\tools\Config.mk
include ${TOPDIR}\arch\arm\src\armv7-m\Toolchain.defs
# Setup for the selected toolchain
ifeq ($(CONFIG_STM32_CODESOURCERYW),y)
# CodeSourcery under Windows
CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi-
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_ATOLLIC_LITE),y)
# Atollic toolchain under Windows
CROSSDEV = arm-atollic-eabi-
ARCROSSDEV =
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
endif
ifeq ($(CONFIG_STM32_ATOLLIC_PRO),y)
# Atollic toolchain under Windows
CROSSDEV = arm-atollic-eabi-
ARCROSSDEV = arm-atollic-eabi-
ifeq ($(CONFIG_ARCH_FPU),y)
ARCHCPUFLAGS = -mcpu=cortex-m4 -mthumb -march=armv7e-m -mfpu=fpv4-sp-d16 -mfloat-abi=hard
else
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
endif
ifeq ($(CONFIG_STM32_DEVKITARM),y)
# devkitARM under Windows
CROSSDEV = arm-eabi-
ARCROSSDEV = arm-eabi-
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
ifeq ($(CONFIG_STM32_RAISONANCE),y)
# Raisonance RIDE7 under Windows
CROSSDEV = arm-none-eabi-
ARCROSSDEV = arm-none-eabi-
ARCHCPUFLAGS = -mcpu=cortex-m3 -mthumb -mfloat-abi=soft
endif
LDSCRIPT = ld.script LDSCRIPT = ld.script
# Windows-native toolchains
ARCHINCLUDES = -I. -isystem $(TOPDIR)\include ARCHINCLUDES = -I. -isystem $(TOPDIR)\include
ARCHXXINCLUDES = -I. -isystem $(TOPDIR)\include -isystem $(TOPDIR)\include\cxx ARCHXXINCLUDES = -I. -isystem $(TOPDIR)\include -isystem $(TOPDIR)\include\cxx
ARCHSCRIPT = -T$(TOPDIR)\configs\$(CONFIG_ARCH_BOARD)\scripts\$(LDSCRIPT) ARCHSCRIPT = -T$(TOPDIR)\configs\$(CONFIG_ARCH_BOARD)\scripts\$(LDSCRIPT)

View File

@ -32,9 +32,6 @@ rem LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
rem ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE rem ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
rem POSSIBILITY OF SUCH DAMAGE. rem POSSIBILITY OF SUCH DAMAGE.
rem This script is not needed for setting the path because the full path
rem to the ZDI-II tools are used in Make.defs.
rem This is the location where I installed in the MinGW compiler. With rem This is the location where I installed in the MinGW compiler. With
rem this configuration, it is recommended that you do NOT install the rem this configuration, it is recommended that you do NOT install the
rem MSYS tools; they conflict with the GNUWin32 tools. See rem MSYS tools; they conflict with the GNUWin32 tools. See
@ -42,6 +39,11 @@ rem http://www.mingw.org/ for further info.
set PATH=C:\MinGW\bin;%PATH% set PATH=C:\MinGW\bin;%PATH%
rem This is the location where I installed the CodeSourcey toolchain. See
rem http://www.mentor.com/embedded-software/codesourcery
set PATH=C:\Program Files (x86)\CodeSourcery\Sourcery G++ Lite\bin;%PATH%
rem This is the location where I installed the GNUWin32 tools. See rem This is the location where I installed the GNUWin32 tools. See
rem http://gnuwin32.sourceforge.net/. rem http://gnuwin32.sourceforge.net/.

View File

@ -181,8 +181,8 @@ fi
# For checking the apps dir path, we need a POSIX version of the relative path. # For checking the apps dir path, we need a POSIX version of the relative path.
posappdir=`echo "${appdir}" | sed -e "s/\\/\/g"` posappdir=`echo "${appdir}" | sed -e 's/\\\\/\\//g'`
winappdir=`echo "${appdir}" | sed -e "s/\//\\/g"` winappdir=`echo "${appdir}" | sed -e 's/\\//\\\\/g'`
# If appsdir was provided (or discovered) then make sure that the apps/ # If appsdir was provided (or discovered) then make sure that the apps/
# directory exists # directory exists
@ -213,7 +213,7 @@ if [ "X${defappdir}" = "Xy" ]; then
echo "" >> "${tmp_config}" echo "" >> "${tmp_config}"
echo "# Application configuration" >> "${tmp_config}" echo "# Application configuration" >> "${tmp_config}"
echo "" >> "${tmp_config}" echo "" >> "${tmp_config}"
if [ "X${winnative)" = "Xy" ]; then if [ "X${winnative}" = "Xy" ]; then
echo "CONFIG_APPS_DIR=\"$winappdir\"" >> "${tmp_config}" echo "CONFIG_APPS_DIR=\"$winappdir\"" >> "${tmp_config}"
else else
echo "CONFIG_APPS_DIR=\"$posappdir\"" >> "${tmp_config}" echo "CONFIG_APPS_DIR=\"$posappdir\"" >> "${tmp_config}"