diff --git a/build/build.xml b/build/build.xml
index ae468d86e..7f212ccd1 100644
--- a/build/build.xml
+++ b/build/build.xml
@@ -5,20 +5,27 @@
-
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -185,7 +192,7 @@
-
+
@@ -234,7 +241,11 @@
-
+
+
+
+
+
@@ -252,42 +263,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Checksum failed.
-
- File gcc-arm-none-eabi-4.4.1-2010q1-188-macos.tar.gz failed checksum.
- Please remove "macosx/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-macos.tar.gz" to download it again.
-
-
-
-
-
-
-
-
-
-
@@ -447,7 +422,7 @@
-
+
@@ -484,11 +459,16 @@
-
-
+
+
+
+
+
+
+
@@ -502,6 +482,13 @@
+
+
+
+
+
+
+
@@ -509,60 +496,47 @@
-
+
-
+
-
-
+
+
+
+
+
-
-
-
+
+
+
-
-
-
-
-
-
+
Checksum failed.
- File gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz failed checksum.
- Please remove "linux/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz" to download it again.
+ File ${dist_file} failed checksum.
+ Please remove "${staging_folder}/dist/${dist_file}" to download it again.
-
-
+
+
-
-
-
-
-
-
-
-
@@ -704,7 +678,12 @@
-
+
+
+
+
+
+
@@ -717,42 +696,6 @@
dir="windows/work" spawn="true"/>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Checksum failed.
-
- File gcc-arm-none-eabi-4.4.1-2010q1-188-win32.tar.gz failed checksum.
- Please remove "windows/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-win32.tar.gz" to download it again.
-
-
-
-
-
-
-
-
-
-
diff --git a/build/linux/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz.sha b/build/linux/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz.sha
deleted file mode 100644
index 29a002ad1..000000000
--- a/build/linux/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-linux32.tar.gz.sha
+++ /dev/null
@@ -1 +0,0 @@
-46a93ceec28772ac19c76ffc9b285a1eac4288a3
diff --git a/build/linux/dist/gcc-arm-none-eabi-4.7.4-2013q2-linux32.tar.gz.sha b/build/linux/dist/gcc-arm-none-eabi-4.7.4-2013q2-linux32.tar.gz.sha
new file mode 100644
index 000000000..0d4dce966
--- /dev/null
+++ b/build/linux/dist/gcc-arm-none-eabi-4.7.4-2013q2-linux32.tar.gz.sha
@@ -0,0 +1 @@
+b35a6b9b1066977509ad5dcf51936b7a6bb18c18
diff --git a/build/linux/dist/gcc-arm-none-eabi-4.7.4-2013q2-linux64.tar.gz.sha b/build/linux/dist/gcc-arm-none-eabi-4.7.4-2013q2-linux64.tar.gz.sha
new file mode 100644
index 000000000..d88a6ac83
--- /dev/null
+++ b/build/linux/dist/gcc-arm-none-eabi-4.7.4-2013q2-linux64.tar.gz.sha
@@ -0,0 +1 @@
+14afebbb1a26b799237080ec32b300a409ff99cb
diff --git a/build/macosx/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-macos.tar.gz.sha b/build/macosx/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-macos.tar.gz.sha
deleted file mode 100644
index 3b951bb7f..000000000
--- a/build/macosx/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-macos.tar.gz.sha
+++ /dev/null
@@ -1 +0,0 @@
-14c554bb9aa9f0d0262a593e7452d33f4babc60d
diff --git a/build/macosx/dist/gcc-arm-none-eabi-4.7.4-2013q2-mac.tar.gz.sha b/build/macosx/dist/gcc-arm-none-eabi-4.7.4-2013q2-mac.tar.gz.sha
new file mode 100644
index 000000000..a265218f9
--- /dev/null
+++ b/build/macosx/dist/gcc-arm-none-eabi-4.7.4-2013q2-mac.tar.gz.sha
@@ -0,0 +1 @@
+a1326c6258f91d9b318570bc619ca8a3b799d8bc
diff --git a/build/shared/revisions.txt b/build/shared/revisions.txt
index 409af96df..a3f0c9c91 100644
--- a/build/shared/revisions.txt
+++ b/build/shared/revisions.txt
@@ -7,6 +7,8 @@ ARDUINO 1.5.3 BETA
* Added support for new 1.5 Library format (https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5:-Library-specification)
* Pass board type from boards.txt (https://github.com/arduino/Arduino/issues/308)
* Display estimated RAM usage after compile (Loren M. Lang)
+* Updated arm gcc to 4.7.4 and simplified build.xml
+* ARM gcc doesn't require ia32-libs anymore on 64 bits linux systems
[arduino core]
* sam: Fixed delayMicrosecond() when interrupts are disabled
diff --git a/build/windows/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-win32.tar.gz.sha b/build/windows/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-win32.tar.gz.sha
deleted file mode 100644
index 068b717e3..000000000
--- a/build/windows/dist/gcc-arm-none-eabi-4.4.1-2010q1-188-win32.tar.gz.sha
+++ /dev/null
@@ -1 +0,0 @@
-f288affa058bfdd44f8b93800fc4cb01b2ebf1e5
diff --git a/build/windows/dist/gcc-arm-none-eabi-4.7.4-2013q2-windows.tar.gz.sha b/build/windows/dist/gcc-arm-none-eabi-4.7.4-2013q2-windows.tar.gz.sha
new file mode 100644
index 000000000..0c66d28a8
--- /dev/null
+++ b/build/windows/dist/gcc-arm-none-eabi-4.7.4-2013q2-windows.tar.gz.sha
@@ -0,0 +1 @@
+c41fa509205b9ced43fc221b6a0cae4223a0842d
diff --git a/hardware/arduino/sam/platform.txt b/hardware/arduino/sam/platform.txt
index 71bd742b1..f71dda989 100644
--- a/hardware/arduino/sam/platform.txt
+++ b/hardware/arduino/sam/platform.txt
@@ -10,7 +10,7 @@ version=1.5.3
# SAM3 compile variables
# ----------------------
-compiler.path={runtime.ide.path}/hardware/tools/g++_arm_none_eabi/bin/
+compiler.path={runtime.ide.path}/hardware/tools/gcc-arm-none-eabi-4.7.4-2013q2/bin/
compiler.c.cmd=arm-none-eabi-gcc
compiler.c.flags=-c -g -Os -w -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -Dprintf=iprintf
compiler.c.elf.cmd=arm-none-eabi-g++