summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2009-01-06 14:34:33 +0000
committerpatacongo <patacongo@42af7a65-404d-4744-a932-0658087f49c3>2009-01-06 14:34:33 +0000
commitd705df951fe8d56b3b79e33af5be468edb178e13 (patch)
tree2d1e597dae0bdc04c6d191212934b98367a537b5
parent68b1c0a591b94fe7ae59da4b929fbd8561f88718 (diff)
downloadpx4-nuttx-d705df951fe8d56b3b79e33af5be468edb178e13.tar.gz
px4-nuttx-d705df951fe8d56b3b79e33af5be468edb178e13.tar.bz2
px4-nuttx-d705df951fe8d56b3b79e33af5be468edb178e13.zip
Add support for gcc 2.4.2 toolchain
git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@1466 42af7a65-404d-4744-a932-0658087f49c3
-rw-r--r--nuttx/ChangeLog3
-rw-r--r--nuttx/Documentation/NuttX.html8
-rw-r--r--nuttx/TODO9
-rw-r--r--nuttx/configs/c5471evm/Make.defs27
-rw-r--r--nuttx/configs/mcu123-lpc214x/nsh/Make.defs27
-rw-r--r--nuttx/configs/mcu123-lpc214x/ostest/Make.defs27
-rw-r--r--nuttx/configs/mcu123-lpc214x/usbserial/Make.defs27
-rw-r--r--nuttx/configs/mcu123-lpc214x/usbstorage/Make.defs27
-rw-r--r--nuttx/configs/ntosd-dm320/nettest/Make.defs27
-rw-r--r--nuttx/configs/ntosd-dm320/nsh/Make.defs27
-rw-r--r--nuttx/configs/ntosd-dm320/ostest/Make.defs27
-rw-r--r--nuttx/configs/ntosd-dm320/poll/Make.defs27
-rw-r--r--nuttx/configs/ntosd-dm320/udp/Make.defs27
-rw-r--r--nuttx/configs/ntosd-dm320/uip/Make.defs27
-rw-r--r--nuttx/configs/olimex-strp711/ostest/Make.defs27
15 files changed, 222 insertions, 122 deletions
diff --git a/nuttx/ChangeLog b/nuttx/ChangeLog
index f891c48fa..777ed8b12 100644
--- a/nuttx/ChangeLog
+++ b/nuttx/ChangeLog
@@ -606,4 +606,7 @@
* Fix errors in some function prototypes in dirent.h
* Add eZ80F91 EMAC driver
* Fix recvfrom() compilation error -- only noted under ZDS
+ * Updated all ARM Make.def files to work with gcc 2.4.2 (However, there are
+ still some build issues associated with that toolchain in use of arm-elf-objcopy
+ -- see the TODO.txt list for details)
diff --git a/nuttx/Documentation/NuttX.html b/nuttx/Documentation/NuttX.html
index bb3284f60..88143d061 100644
--- a/nuttx/Documentation/NuttX.html
+++ b/nuttx/Documentation/NuttX.html
@@ -8,7 +8,7 @@
<tr align="center" bgcolor="#e4e4e4">
<td>
<h1><big><font color="#3c34ec"><i>NuttX RTOS</i></font></big></h1>
- <p>Last Updated: December 12, 2008</p>
+ <p>Last Updated: January 6, 2009</p>
</td>
</tr>
</table>
@@ -1294,12 +1294,18 @@ nuttx-0.4.1 2008-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
* Fix errors in some function prototypes in dirent.h
* Add eZ80F91 EMAC driver
* Fix recvfrom() compilation error -- only noted under ZDS
+ * Updated all ARM Make.def files to work with gcc 2.4.2 (However, there are
+ still some build issues associated with that toolchain in use of arm-elf-objcopy
+ -- see the TODO.txt list for details)
pascal-0.1.3 2008-xx-xx Gregory Nutt &lt;spudmonkey@racsa.co.cr&gt;
buildroot-0.1.3 2008-xx-xx &lt;spudmonkey@racsa.co.cr&gt;
* Add support for H8/300 toolchain
+ * Add support for GCC 4.2.4 and binutils 2.19
+ * New ARM configuration using GCC 4.2.4 and binutils 2.19
+ (Note: this doesn't work with NuttX yet... to nuttx TODO.txt list).
</pre></ul>
<table width ="100%">
diff --git a/nuttx/TODO b/nuttx/TODO
index 4d68cde7d..27e56a33b 100644
--- a/nuttx/TODO
+++ b/nuttx/TODO
@@ -14,7 +14,7 @@ NuttX TODO List (Last updated November 20, 2008)
(2) Graphics subystem (graphics/)
(1) Pascal add-on (pcode/)
(2) Documentation (Documentation/)
- (5) Build system
+ (5) Build system / Toolchains
(2) NuttShell (NSH) (examples/nsh)
(1) Other Applications & Tests (examples/)
(1) Linux/Cywgin simulation (arch/sim)
@@ -367,6 +367,13 @@ o Build system
Status: Open
Priority: Medium-low
+ Descripton I am having trouble using the newer gcc 4.2.4 + binutils 2.19
+ toolchain for ARM. The problem is in arch/arm/src/Makefile:
+ In the call to objcopy to relocate the .data section, arm-elf-objcopy
+ dies with a 'Floating point exception' No clue to the cause yet.
+ Status: Open
+ Priority: Medium-Low -- workaroung, stick with the 3.4.5 toolchain
+
o NuttShell (NSH) (examples/nsh)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
diff --git a/nuttx/configs/c5471evm/Make.defs b/nuttx/configs/c5471evm/Make.defs
index f90603713..b172585c3 100644
--- a/nuttx/configs/c5471evm/Make.defs
+++ b/nuttx/configs/c5471evm/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mcpu=arm7tdmi -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/mcu123-lpc214x/nsh/Make.defs b/nuttx/configs/mcu123-lpc214x/nsh/Make.defs
index bd68f351f..648d97c73 100644
--- a/nuttx/configs/mcu123-lpc214x/nsh/Make.defs
+++ b/nuttx/configs/mcu123-lpc214x/nsh/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mcpu=arm7tdmi -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/nsh/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/mcu123-lpc214x/ostest/Make.defs b/nuttx/configs/mcu123-lpc214x/ostest/Make.defs
index 568d92a0d..1ed441e54 100644
--- a/nuttx/configs/mcu123-lpc214x/ostest/Make.defs
+++ b/nuttx/configs/mcu123-lpc214x/ostest/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mcpu=arm7tdmi -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/ostest/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/mcu123-lpc214x/usbserial/Make.defs b/nuttx/configs/mcu123-lpc214x/usbserial/Make.defs
index bc50d0398..68d286666 100644
--- a/nuttx/configs/mcu123-lpc214x/usbserial/Make.defs
+++ b/nuttx/configs/mcu123-lpc214x/usbserial/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mcpu=arm7tdmi -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/usbserial/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/mcu123-lpc214x/usbstorage/Make.defs b/nuttx/configs/mcu123-lpc214x/usbstorage/Make.defs
index b3e608710..36a38c57d 100644
--- a/nuttx/configs/mcu123-lpc214x/usbstorage/Make.defs
+++ b/nuttx/configs/mcu123-lpc214x/usbstorage/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mcpu=arm7tdmi -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/usbstorage/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/ntosd-dm320/nettest/Make.defs b/nuttx/configs/ntosd-dm320/nettest/Make.defs
index e356d8775..004a57f29 100644
--- a/nuttx/configs/ntosd-dm320/nettest/Make.defs
+++ b/nuttx/configs/ntosd-dm320/nettest/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/nettest/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/ntosd-dm320/nsh/Make.defs b/nuttx/configs/ntosd-dm320/nsh/Make.defs
index 4f6e1c53e..cc0717f9d 100644
--- a/nuttx/configs/ntosd-dm320/nsh/Make.defs
+++ b/nuttx/configs/ntosd-dm320/nsh/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/nsh/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/ntosd-dm320/ostest/Make.defs b/nuttx/configs/ntosd-dm320/ostest/Make.defs
index 80c939af9..d7c978dd5 100644
--- a/nuttx/configs/ntosd-dm320/ostest/Make.defs
+++ b/nuttx/configs/ntosd-dm320/ostest/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/ostest/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/ntosd-dm320/poll/Make.defs b/nuttx/configs/ntosd-dm320/poll/Make.defs
index 9715d1084..37b6b7fc9 100644
--- a/nuttx/configs/ntosd-dm320/poll/Make.defs
+++ b/nuttx/configs/ntosd-dm320/poll/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/poll/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/ntosd-dm320/udp/Make.defs b/nuttx/configs/ntosd-dm320/udp/Make.defs
index f410ec8f3..e1c159f05 100644
--- a/nuttx/configs/ntosd-dm320/udp/Make.defs
+++ b/nuttx/configs/ntosd-dm320/udp/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/udp/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/ntosd-dm320/uip/Make.defs b/nuttx/configs/ntosd-dm320/uip/Make.defs
index 91ad89bb3..ca21cc396 100644
--- a/nuttx/configs/ntosd-dm320/uip/Make.defs
+++ b/nuttx/configs/ntosd-dm320/uip/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mtune=arm9tdmi -march=armv5te -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/uip/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)
diff --git a/nuttx/configs/olimex-strp711/ostest/Make.defs b/nuttx/configs/olimex-strp711/ostest/Make.defs
index 7f31319be..1dcd07d1c 100644
--- a/nuttx/configs/olimex-strp711/ostest/Make.defs
+++ b/nuttx/configs/olimex-strp711/ostest/Make.defs
@@ -35,6 +35,18 @@
include ${TOPDIR}/.config
+CROSSDEV = arm-elf-
+CC = $(CROSSDEV)gcc
+CPP = $(CROSSDEV)gcc -E
+LD = $(CROSSDEV)ld
+AR = $(CROSSDEV)ar rcs
+NM = $(CROSSDEV)nm
+OBJCOPY = $(CROSSDEV)objcopy
+OBJDUMP = $(CROSSDEV)objdump
+
+ARCHCCVERSION = ${shell $(CC) -v 2>&1 | sed -n '/^gcc version/p' | sed -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q'}
+ARCHCCMAJOR = ${shell echo $(ARCHCCVERSION) | cut -d'.' -f1}
+
ifeq ("${CONFIG_DEBUG}","y")
ARCHOPTIMIZATION = -g
else
@@ -42,22 +54,17 @@ else
-fomit-frame-pointer
endif
-ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+ifeq ($(ARCHCCMAJOR),4)
+ ARCHCPUFLAGS = -mcpu=arm7tdmi -msoft-float -fno-builtin
+else
+ ARCHCPUFLAGS = -mapcs-32 -mcpu=arm7tdmi -msoft-float -fno-builtin
+endif
ARCHPICFLAGS = -fpic
ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow
ARCHDEFINES =
ARCHINCLUDES = -I. -isystem $(TOPDIR)/include
ARCHSCRIPT = -T$(TOPDIR)/configs/$(CONFIG_ARCH_BOARD)/ostest/ld.script
-CROSSDEV = arm-elf-
-CC = $(CROSSDEV)gcc
-CPP = $(CROSSDEV)gcc -E
-LD = $(CROSSDEV)ld
-AR = $(CROSSDEV)ar rcs
-NM = $(CROSSDEV)nm
-OBJCOPY = $(CROSSDEV)objcopy
-OBJDUMP = $(CROSSDEV)objdump
-
CFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
$(ARCHCPUFLAGS) $(ARCHINCLUDES) $(ARCHDEFINES) -pipe
CPPFLAGS = $(ARCHINCLUDES) $(ARCHDEFINES)