summaryrefslogtreecommitdiff
path: root/development/Arduino
diff options
context:
space:
mode:
authorMario Preksavec <mario@slackware.hr>2017-07-25 17:38:58 +0200
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2017-07-26 18:28:18 +0700
commit6e1c8ad11dfb3bd1660878b75378030506b49b58 (patch)
tree6e384dbba2d13d90446452d9752ed8abebb4f3be /development/Arduino
parentdbf6cdeecdf1c27fae64c6cc5fa523f9dd46a9cf (diff)
downloadslackbuilds-6e1c8ad11dfb3bd1660878b75378030506b49b58.tar.gz
development/Arduino: Updated for version 1.8.3.
Signed-off-by: Mario Preksavec <mario@slackware.hr>
Diffstat (limited to 'development/Arduino')
-rw-r--r--development/Arduino/Arduino.SlackBuild132
-rw-r--r--development/Arduino/Arduino.info166
-rw-r--r--development/Arduino/patches/avr-gcc6-fix.patch117
3 files changed, 245 insertions, 170 deletions
diff --git a/development/Arduino/Arduino.SlackBuild b/development/Arduino/Arduino.SlackBuild
index 01931d2379..d8ac2ff3ca 100644
--- a/development/Arduino/Arduino.SlackBuild
+++ b/development/Arduino/Arduino.SlackBuild
@@ -2,7 +2,7 @@
# Slackware build script for Arduino
-# Copyright 2015, 2016 Mario Preksavec, Zagreb, Croatia
+# Copyright 2015, 2016, 2017 Mario Preksavec, Zagreb, Croatia
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -23,40 +23,45 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=Arduino
-VERSION=${VERSION:-1.6.9}
+VERSION=${VERSION:-1.8.3}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
+# Documentation
REFERENCE=${REFERENCE:-1.6.6-3}
GALILEO=${GALILEO:-1.6.2}
EDISON=${EDISON:-1.6.2}
-FIRMATA=${FIRMATA:-2.5.2}
-BRIDGE=${BRIDGE:-1.6.2}
-ROBOT_CONTROL=${ROBOT_CONTROL:-1.0.2}
+
+# Libraries
+FIRMATA=${FIRMATA:-2.5.6}
+BRIDGE=${BRIDGE:-1.6.3}
+ROBOT_CONTROL=${ROBOT_CONTROL:-1.0.3}
ROBOT_MOTOR=${ROBOT_MOTOR:-1.0.2}
ROBOTIRREMOTE=${ROBOTIRREMOTE:-1.0.2}
-SPACEBREWYUN=${SPACEBREWYUN:-1.0.0}
-TEMBOO=${TEMBOO:-1.1.5}
+SPACEBREWYUN=${SPACEBREWYUN:-1.0.1}
+TEMBOO=${TEMBOO:-1.2.1}
ESPLORA=${ESPLORA:-1.0.4}
MOUSE=${MOUSE:-1.0.1}
KEYBOARD=${KEYBOARD:-1.0.1}
+SD=${SD:-1.1.1}
+SERVO=${SERVO:-1.1.2}
+ADAFRUIT=${ADAFRUIT:-1.6.4}
+WIFI101UPDATER=${WIFI101UPDATER:-0.9.1}
LIBASTYLEJ=${LIBASTYLEJ:-2.05.1-3}
-LIBLISTSERIALS=${LIBLISTSERIALS:-1.1.0}
-ARDUINOBUILDER=${ARDUINOBUILDER:-1.3.18}
-
-AVRLIBC=${AVRLIBC:-1.8.0}
-AVRHEADERS=${AVRHEADERS:-6.2.0.469}
-AVRDUDE=${AVRDUDE:-6.0.1}
-BINUTILS=${BINUTILS:-2.24}
+LIBLISTSERIALS=${LIBLISTSERIALS:-1.4.0}
+ARDUINOBUILDER=${ARDUINOBUILDER:-1.3.25}
+AVRDUDE=${AVRDUDE:-6.3.0-arduino9}
+ARDUINOOTA=${ARDUINOOTA:-1.1.1}
+
+# Toolchain
+GCC=${GCC:-4.9.2}
+AVR=${AVR:-3.5.3}
+AVR_BUILD=${AVR_BUILD:-arduino2}
+AUTOCONF=${AUTOCONF:-2.64}
+AUTOMAKE=${AUTOMAKE:-1.11.1}
GMP=${GMP:-5.0.2}
MPFR=${MPFR:-3.0.0}
MPC=${MPC:-0.9}
-GCC=${GCC:-4.8.1}
-GDB=${GDB:-7.8}
-LIBUSB=${LIBUSB:-1.0.18}
-LIBUSBCOMPAT=${LIBUSBCOMPAT:-0.1.5}
-AUTOCONF=${AUTOCONF:-2.64}
-AUTOMAKE=${AUTOMAKE:-1.11.1}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -73,8 +78,12 @@ OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
LIB="32"
+ AVRDUDEARCH="i686"
+ ARDUINOOTAARCH="386"
elif [ "$ARCH" = "x86_64" ]; then
LIB="64"
+ AVRDUDEARCH="$ARCH"
+ ARDUINOOTAARCH="amd64"
else
echo "$ARCH is not supported."
exit 1
@@ -95,46 +104,62 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-# Use already present toolchain requirements
-tar xvf $CWD/avr-gcc-$GCC-avrdude-$AVRDUDE-arduino5.tar.gz \
-|| tar xvf $CWD/toolchain-avr-avr-gcc-$GCC-avrdude-$AVRDUDE-arduino5.tar.gz
-cp $CWD/avr-libc-$AVRLIBC.tar.bz2 \
- $CWD/avr8-headers-$AVRHEADERS.zip \
- $CWD/avrdude-$AVRDUDE.tar.gz \
- $CWD/binutils-$BINUTILS.tar.bz2 \
+# Prepare toolchain
+tar xvf $CWD/$GCC-atmel$AVR-$AVR_BUILD.tar.gz
+cp $CWD/autoconf-$AUTOCONF.tar.bz2 \
+ $CWD/automake-$AUTOMAKE.tar.bz2 \
+ $CWD/avr-binutils.tar.bz2 \
$CWD/gmp-$GMP.tar.bz2 \
$CWD/mpfr-$MPFR.tar.bz2 \
$CWD/mpc-$MPC.tar.gz \
- $CWD/gcc-$GCC.tar.bz2 \
- $CWD/gdb-$GDB.tar.xz \
- $CWD/libusb-$LIBUSB.tar.bz2 \
- $CWD/libusb-compat-$LIBUSBCOMPAT.tar.bz2 \
- $CWD/autoconf-$AUTOCONF.tar.bz2 \
- $CWD/automake-$AUTOMAKE.tar.bz2 \
- toolchain-avr-avr-gcc-$GCC-avrdude-$AVRDUDE-arduino5/
+ $CWD/avr-gcc.tar.bz2 \
+ $CWD/avr-libc.tar.bz2 \
+ $CWD/avr8-headers.zip \
+ $CWD/avr-gdb.tar.bz2 \
+ toolchain-avr-$GCC-atmel$AVR-$AVR_BUILD/
+
+cp $CWD/patches/avr-gcc6-fix.patch \
+ toolchain-avr-$GCC-atmel$AVR-$AVR_BUILD/avr-gcc-patches/
# Build toolchain
-( cd toolchain-avr-avr-gcc-$GCC-avrdude-$AVRDUDE-arduino5 ; ./build.all.bash )
+( cd toolchain-avr-$GCC-atmel$AVR-$AVR_BUILD
+ ./tools.bash
+ ./binutils.build.bash
+ ./gcc.build.bash
+ ./avr-libc.build.bash
+ ./gdb.build.bash
+ rm -rf objdir/{info,man,share}
+)
# Copy toolchain to where it can be found (`mv` will preserve some space)
-mkdir -p build/linux/work/hardware/tools/
-mv toolchain-avr-avr-gcc-$GCC-avrdude-$AVRDUDE-arduino5/avr/ \
- build/linux/work/hardware/tools/
-cp -r toolchain-avr-avr-gcc-$GCC-avrdude-$AVRDUDE-arduino5/avrdude-$AVRDUDE/* \
+mkdir -p build/linux/work/hardware/tools/avr/
+mv toolchain-avr-$GCC-atmel$AVR-$AVR_BUILD/objdir/* \
build/linux/work/hardware/tools/avr/
-echo -e "arduino.avrdude=$AVRDUDE-arduino5\narduino.avr-gcc=$GCC-arduino5" \
- > build/linux/work/hardware/tools/avr/builtin_tools_versions.txt
+
+# AVRDUDE build script was removed :-/
+tar --strip 1 -C build/linux/work/hardware/tools/avr/ \
+ -xvf $CWD/avrdude-$AVRDUDE-$AVRDUDEARCH-pc-linux-gnu.tar.bz2
+
+# ArduinoOTA ships binary as well
+tar --strip 1 -C build/linux/work/hardware/tools/avr/ \
+ -xvf $CWD/arduinoOTA-$ARDUINOOTA-linux_amd64.tar.bz2
+
+# Builder needs to know about the stuff we put above
+cat > build/linux/work/hardware/tools/avr/builtin_tools_versions.txt <<EOF
+arduino.avrdude=$AVRDUDE
+arduino.arduinoOTA=$ARDUINOOTA
+arduino.avr-gcc=$GCC-atmel$AVR-$AVR_BUILD
+EOF
# Use already present toolchain and library bundles
sed -e '/<antcall target="avr-toolchain-bundle">/,/<\/antcall>/d' \
- -e '/<delete file=".*_index.json.gz"\/>/d' \
- -e 's/skipexisting="false"/skipexisting="true"/' \
-i build/build.xml
-# Copy documentation and help
+# Copy documentation, help files and other shared packages
cp $CWD/reference-$REFERENCE.zip \
$CWD/Galileo_help_files-$GALILEO.zip \
- $CWD/Edison_help_files-$EDISON.zip build/shared/
+ $CWD/Edison_help_files-$EDISON.zip \
+ $CWD/WiFi101-Updater-ArduinoIDE-Plugin-${WIFI101UPDATER}.zip build/shared/
# Copy libraries
cp $CWD/Firmata-$FIRMATA.zip \
@@ -147,30 +172,26 @@ cp $CWD/Firmata-$FIRMATA.zip \
$CWD/Esplora-$ESPLORA.zip \
$CWD/Mouse-$MOUSE.zip \
$CWD/Keyboard-$KEYBOARD.zip \
+ $CWD/SD-$SD.zip \
+ $CWD/Servo-$SERVO.zip \
+ $CWD/Adafruit_CircuitPlayground-$ADAFRUIT.zip \
$CWD/libastylej-$LIBASTYLEJ.zip \
$CWD/liblistSerials-$LIBLISTSERIALS.zip \
$CWD/arduino-builder-linux$LIB-$ARDUINOBUILDER.tar.bz2 build/
-# Copy library bundles
-mkdir -p build/linux/work/dist/
-cp $CWD/{library,package}_index.json.* build/linux/work/dist/
-
# Finally, build Arduino
( cd build ; ant )
# Our files are here
cd build/linux/work/
-# Clean up
-rm dist/{library,package}_index.json.gz
-
# Manual install ensues
mkdir -p $PKG/opt/$PRGNAM
-mv arduino{,-builder} dist examples hardware lib libraries reference \
+mv arduino{,-builder} examples hardware lib libraries reference \
tools{,-builder} $PKG/opt/$PRGNAM
# Ownership fixup
-chown -R root:root $PKG/opt/Arduino/tools-builder
+chown -R root:root $PKG/opt/$PRGNAM/tools-builder
# Make it a bit more user friendly
mkdir -p $PKG/usr/{bin,share/applications}
@@ -178,9 +199,6 @@ sed "s/FULL_PATH/\/opt\/$PRGNAM/" $CWD/arduino.desktop \
> $PKG/usr/share/applications/$PRGNAM.desktop
ln -s /opt/$PRGNAM/arduino $PKG/usr/bin/$PRGNAM
-# Fix perms
-chmod 755 $PKG/opt/$PRGNAM/reference/*
-
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a revisions.txt $TMP/$PRGNAM-$VERSION/{README.md,license.txt} \
$PKG/usr/doc/$PRGNAM-$VERSION
diff --git a/development/Arduino/Arduino.info b/development/Arduino/Arduino.info
index c6ae212f54..a03b6814f9 100644
--- a/development/Arduino/Arduino.info
+++ b/development/Arduino/Arduino.info
@@ -1,142 +1,82 @@
PRGNAM="Arduino"
-VERSION="1.6.9"
+VERSION="1.8.3"
HOMEPAGE="https://www.arduino.cc/"
-DOWNLOAD="https://github.com/arduino/Arduino/archive/1.6.9/Arduino-1.6.9.tar.gz \
+DOWNLOAD="https://github.com/arduino/Arduino/archive/1.8.3/Arduino-1.8.3.tar.gz \
http://downloads.arduino.cc/reference-1.6.6-3.zip \
http://downloads.arduino.cc/Galileo_help_files-1.6.2.zip \
http://downloads.arduino.cc/Edison_help_files-1.6.2.zip \
- https://github.com/arduino-libraries/Firmata/archive/2.5.2/Firmata-2.5.2.zip \
- https://github.com/arduino-libraries/Bridge/archive/1.6.2/Bridge-1.6.2.zip \
- https://github.com/arduino-libraries/Robot_Control/archive/1.0.2/Robot_Control-1.0.2.zip \
+ https://github.com/arduino-libraries/Firmata/archive/2.5.6/Firmata-2.5.6.zip \
+ https://github.com/arduino-libraries/Bridge/archive/1.6.3/Bridge-1.6.3.zip \
+ https://github.com/arduino-libraries/Robot_Control/archive/1.0.3/Robot_Control-1.0.3.zip \
https://github.com/arduino-libraries/Robot_Motor/archive/1.0.2/Robot_Motor-1.0.2.zip \
https://github.com/arduino-libraries/RobotIRremote/archive/1.0.2/RobotIRremote-1.0.2.zip \
- https://github.com/arduino-libraries/SpacebrewYun/archive/1.0.0/SpacebrewYun-1.0.0.zip \
- https://github.com/arduino-libraries/Temboo/archive/1.1.5/Temboo-1.1.5.zip \
+ https://github.com/arduino-libraries/SpacebrewYun/archive/1.0.1/SpacebrewYun-1.0.1.zip \
+ https://github.com/arduino-libraries/Temboo/archive/1.2.1/Temboo-1.2.1.zip \
https://github.com/arduino-libraries/Esplora/archive/1.0.4/Esplora-1.0.4.zip \
https://github.com/arduino-libraries/Mouse/archive/1.0.1/Mouse-1.0.1.zip \
https://github.com/arduino-libraries/Keyboard/archive/1.0.1/Keyboard-1.0.1.zip \
+ https://github.com/arduino-libraries/SD/archive/1.1.1/SD-1.1.1.zip \
+ https://github.com/arduino-libraries/Servo/archive/1.1.2/Servo-1.1.2.zip \
+ https://github.com/Adafruit/Adafruit_CircuitPlayground/archive/1.6.4/Adafruit_CircuitPlayground-1.6.4.zip \
+ https://github.com/arduino-libraries/WiFi101-FirmwareUpdater-Plugin/releases/download/v0.9.1/WiFi101-Updater-ArduinoIDE-Plugin-0.9.1.zip
http://downloads.arduino.cc/libastylej-2.05.1-3.zip \
- http://downloads.arduino.cc/liblistSerials/liblistSerials-1.1.0.zip \
- http://mirror.slackware.hr/sources/Arduino/package_index.json.gz \
- http://mirror.slackware.hr/sources/Arduino/package_index.json.sig \
- http://mirror.slackware.hr/sources/Arduino/library_index.json.gz \
- http://downloads.arduino.cc/tools/arduino-builder-linux32-1.3.18.tar.bz2 \
- https://github.com/arduino/toolchain-avr/archive/avr-gcc-4.8.1-avrdude-6.0.1-arduino5.tar.gz \
- http://download.savannah.gnu.org/releases/avr-libc/old-releases/avr-libc-1.8.0.tar.bz2 \
- http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.4.5/avr8-headers-6.2.0.469.zip \
- http://download.savannah.gnu.org/releases/avrdude/avrdude-6.0.1.tar.gz \
- http://mirror.switch.ch/ftp/mirror/gnu/binutils/binutils-2.24.tar.bz2 \
+ http://downloads.arduino.cc/liblistSerials/liblistSerials-1.4.0.zip \
+ http://downloads.arduino.cc/tools/arduino-builder-linux32-1.3.25.tar.bz2 \
+ http://downloads.arduino.cc/tools/arduino-builder-linux64-1.3.25.tar.bz2 \
+ http://downloads.arduino.cc/tools/avrdude-6.3.0-arduino9-i686-pc-linux-gnu.tar.bz2 \
+ http://downloads.arduino.cc/tools/avrdude-6.3.0-arduino9-x86_64-pc-linux-gnu.tar.bz2 \
+ http://downloads.arduino.cc/tools/arduinoOTA-1.1.1-linux_386.tar.bz2 \
+ http://downloads.arduino.cc/tools/arduinoOTA-1.1.1-linux_amd64.tar.bz2 \
+ https://github.com/arduino/toolchain-avr/archive/4.9.2-atmel3.5.3-arduino2.tar.gz \
+ http://mirror.switch.ch/ftp/mirror/gnu/autoconf/autoconf-2.64.tar.bz2 \
+ http://mirror.switch.ch/ftp/mirror/gnu/automake/automake-1.11.1.tar.bz2 \
+ http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.5.3/avr-binutils.tar.bz2 \
http://mirror.switch.ch/ftp/mirror/gnu/gmp/gmp-5.0.2.tar.bz2 \
http://mirror.switch.ch/ftp/mirror/gnu/mpfr/mpfr-3.0.0.tar.bz2 \
http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz \
- http://mirror.switch.ch/ftp/mirror/gnu/gcc/gcc-4.8.1/gcc-4.8.1.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/gdb/gdb-7.8.tar.xz \
- http://download.sourceforge.net/project/libusb/libusb-1.0/libusb-1.0.18/libusb-1.0.18.tar.bz2 \
- http://download.sourceforge.net/project/libusb/libusb-compat-0.1/libusb-compat-0.1.5/libusb-compat-0.1.5.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/autoconf/autoconf-2.64.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/automake/automake-1.11.1.tar.bz2"
-MD5SUM="b1f205208db0065286013e544ecbf48f \
+ http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.5.3/avr-gcc.tar.bz2 \
+ http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.5.3/avr-libc.tar.bz2 \
+ http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.5.3/avr8-headers.zip \
+ http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.5.3/avr-gdb.tar.bz2"
+MD5SUM="c07a888c3333ff69ae244064d151b5c2 \
f04dadd797e5e57149bce626defc7be4 \
dfa93daedbe9188f20f00308f64f4908 \
c97d466ee23021ffb0d57c222d93e96f \
- 194079377a3c310a7de8e1099a763fdf \
- c9460b9fa60d6e338ad537debfa9bf2a \
- 4ed4c60f01e02eb5b28da260ad0e75ae \
+ a8e59560c2eb157ab86279f5bf16ff42 \
+ 1907c0c1428737804b01f37e50952c6b \
+ a6e07c38f564ed7445e361a2c2b691d9 \
f5b648b60c76a3f2ead085b613279d11 \
47ff47fab7b44e482dff47b11148d67f \
- 9bdcbdfa1669fada84e4b5d29cecd092 \
- e771ef7cb110ef6d1a24a227b5c154d4 \
+ 9a05b22d1977bd48ec33c20dbaad5ef8 \
+ 385252899ccd98f3655b98656a35b72a \
b066c4b117cd035b4e941016e04617af \
39018b239c31f89e97cab344c0d42fca \
d07885c5f18c6ead722c5e28e60bebde \
+ 0ed3ff686c2146c4e9b14b2f657d33aa \
+ 51b6efddceb1a4a7ae2728f5a081f64c \
+ 206edaa76a48c2c358db305b58d4424a \
+ 6883392f3731a274a8b15c9fd91b3eec \
3f6fd60bfe51ce7a7543671cb638ffbb \
- 01ad823406ab79d33aefe5b02add96c2 \
- 1fcd648258ad7edb3103c9ea80939df6 \
- 4c99664d041242971f3268475ccb7e69 \
- 5e71ce1fd82c17953019a31de41d2350 \
- 86ec280cd3e764641ea696ce5f6a2165 \
- 573b7840861c311e8eafbf07e37c0786 \
- 54c71798f24c96bab206be098062344f \
- 3719aca9af4d0d3a0855a8d43c92a4ae \
- 346ec2e46393a54ac152b95abf1d9850 \
- e0f71a7b2ddab0f8612336ac81d9636b \
+ 997fe95d59d38c2e5f8cc112f528e515 \
+ ebbf050c20f1be71831330c91df329f8 \
+ 8551f97123df2f31ec05a45551ca79b5 \
+ ce891cbe1bf01f6a11e4f5833e7ff8df \
+ 723125fb4b9d59b8e9c8ee5fb843911e \
+ 28427f1fe98686211d9fdc2b51c593f7 \
+ 1b437df1df2fef78a5375c9c62ff313a \
+ 1f9cb13309a421e43379dcfc38707395 \
+ ef400d672005e0be21e0d20648169074 \
+ c2972c4d9b3e29c03d5f2af86249876f \
+ 4f3a24017a083e1bc13ebe0cd868b032 \
0bbaedc82fb30315b06b1588b9077cd3 \
f45bac3584922c8004a10060ab1a8f9f \
0d6acab8d214bd7d1fbbc593e83dd00d \
- 3b2386c114cd74185aa3754b58a79304 \
- bd958fe9019d7c7896f29f6724a764ed \
- 4a6d049923efc6496f1d383054dac1a6 \
- 2780b6a758a1e2c2943bdbf7faf740e4 \
- ef400d672005e0be21e0d20648169074 \
- c2972c4d9b3e29c03d5f2af86249876f"
-DOWNLOAD_x86_64="https://github.com/arduino/Arduino/archive/1.6.9/Arduino-1.6.9.tar.gz \
- http://downloads.arduino.cc/reference-1.6.6-3.zip \
- http://downloads.arduino.cc/Galileo_help_files-1.6.2.zip \
- http://downloads.arduino.cc/Edison_help_files-1.6.2.zip \
- https://github.com/arduino-libraries/Firmata/archive/2.5.2/Firmata-2.5.2.zip \
- https://github.com/arduino-libraries/Bridge/archive/1.6.2/Bridge-1.6.2.zip \
- https://github.com/arduino-libraries/Robot_Control/archive/1.0.2/Robot_Control-1.0.2.zip \
- https://github.com/arduino-libraries/Robot_Motor/archive/1.0.2/Robot_Motor-1.0.2.zip \
- https://github.com/arduino-libraries/RobotIRremote/archive/1.0.2/RobotIRremote-1.0.2.zip \
- https://github.com/arduino-libraries/SpacebrewYun/archive/1.0.0/SpacebrewYun-1.0.0.zip \
- https://github.com/arduino-libraries/Temboo/archive/1.1.5/Temboo-1.1.5.zip \
- https://github.com/arduino-libraries/Esplora/archive/1.0.4/Esplora-1.0.4.zip \
- https://github.com/arduino-libraries/Mouse/archive/1.0.1/Mouse-1.0.1.zip \
- https://github.com/arduino-libraries/Keyboard/archive/1.0.1/Keyboard-1.0.1.zip \
- http://downloads.arduino.cc/libastylej-2.05.1-3.zip \
- http://downloads.arduino.cc/liblistSerials/liblistSerials-1.1.0.zip \
- http://mirror.slackware.hr/sources/Arduino/package_index.json.gz \
- http://mirror.slackware.hr/sources/Arduino/package_index.json.sig \
- http://mirror.slackware.hr/sources/Arduino/library_index.json.gz \
- http://downloads.arduino.cc/tools/arduino-builder-linux64-1.3.18.tar.bz2 \
- https://github.com/arduino/toolchain-avr/archive/avr-gcc-4.8.1-avrdude-6.0.1-arduino5.tar.gz \
- http://download.savannah.gnu.org/releases/avr-libc/old-releases/avr-libc-1.8.0.tar.bz2 \
- http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.4.5/avr8-headers-6.2.0.469.zip \
- http://download.savannah.gnu.org/releases/avrdude/avrdude-6.0.1.tar.gz \
- http://mirror.switch.ch/ftp/mirror/gnu/binutils/binutils-2.24.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/gmp/gmp-5.0.2.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/mpfr/mpfr-3.0.0.tar.bz2 \
- http://www.multiprecision.org/mpc/download/mpc-0.9.tar.gz \
- http://mirror.switch.ch/ftp/mirror/gnu/gcc/gcc-4.8.1/gcc-4.8.1.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/gdb/gdb-7.8.tar.xz \
- http://download.sourceforge.net/project/libusb/libusb-1.0/libusb-1.0.18/libusb-1.0.18.tar.bz2 \
- http://download.sourceforge.net/project/libusb/libusb-compat-0.1/libusb-compat-0.1.5/libusb-compat-0.1.5.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/autoconf/autoconf-2.64.tar.bz2 \
- http://mirror.switch.ch/ftp/mirror/gnu/automake/automake-1.11.1.tar.bz2"
-MD5SUM_x86_64="b1f205208db0065286013e544ecbf48f \
- f04dadd797e5e57149bce626defc7be4 \
- dfa93daedbe9188f20f00308f64f4908 \
- c97d466ee23021ffb0d57c222d93e96f \
- 194079377a3c310a7de8e1099a763fdf \
- c9460b9fa60d6e338ad537debfa9bf2a \
- 4ed4c60f01e02eb5b28da260ad0e75ae \
- f5b648b60c76a3f2ead085b613279d11 \
- 47ff47fab7b44e482dff47b11148d67f \
- 9bdcbdfa1669fada84e4b5d29cecd092 \
- e771ef7cb110ef6d1a24a227b5c154d4 \
- b066c4b117cd035b4e941016e04617af \
- 39018b239c31f89e97cab344c0d42fca \
- d07885c5f18c6ead722c5e28e60bebde \
- 3f6fd60bfe51ce7a7543671cb638ffbb \
- 01ad823406ab79d33aefe5b02add96c2 \
- 1fcd648258ad7edb3103c9ea80939df6 \
- 4c99664d041242971f3268475ccb7e69 \
- 5e71ce1fd82c17953019a31de41d2350 \
- ad303f624e06b4793c75fb8a82ccc214 \
- 573b7840861c311e8eafbf07e37c0786 \
- 54c71798f24c96bab206be098062344f \
- 3719aca9af4d0d3a0855a8d43c92a4ae \
- 346ec2e46393a54ac152b95abf1d9850 \
- e0f71a7b2ddab0f8612336ac81d9636b \
- 0bbaedc82fb30315b06b1588b9077cd3 \
- f45bac3584922c8004a10060ab1a8f9f \
- 0d6acab8d214bd7d1fbbc593e83dd00d \
- 3b2386c114cd74185aa3754b58a79304 \
- bd958fe9019d7c7896f29f6724a764ed \
- 4a6d049923efc6496f1d383054dac1a6 \
- 2780b6a758a1e2c2943bdbf7faf740e4 \
- ef400d672005e0be21e0d20648169074 \
- c2972c4d9b3e29c03d5f2af86249876f"
+ 61446b033b5d9f37b71a03dd6eb8db8f \
+ 1ce93dad526aab4d564462d9301f2b62 \
+ 5a96c01db89ccdc98e7b7c56267d252d \
+ 97a8ec640265cc5ff8a50e599ab55367"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
REQUIRES="apache-ant jdk"
MAINTAINER="Mario Preksavec"
EMAIL="mario at slackware dot hr"
diff --git a/development/Arduino/patches/avr-gcc6-fix.patch b/development/Arduino/patches/avr-gcc6-fix.patch
new file mode 100644
index 0000000000..89579566c5
--- /dev/null
+++ b/development/Arduino/patches/avr-gcc6-fix.patch
@@ -0,0 +1,117 @@
+--- gcc/cp/Make-lang.in
++++ gcc/cp/Make-lang.in
+@@ -112,7 +112,7 @@ else
+ # deleting the $(srcdir)/cp/cfns.h file.
+ $(srcdir)/cp/cfns.h:
+ endif
+- gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L ANSI-C \
++ gperf -o -C -E -k '1-6,$$' -j1 -D -N 'libc_name_p' -L C++ \
+ $(srcdir)/cp/cfns.gperf --output-file $(srcdir)/cp/cfns.h
+
+ #
+--- gcc/cp/cfns.gperf
++++ gcc/cp/cfns.gperf
+@@ -1,3 +1,5 @@
++%language=C++
++%define class-name libc_name
+ %{
+ /* Copyright (C) 2000-2016 Free Software Foundation, Inc.
+
+@@ -16,14 +18,6 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ %}
+ %%
+ # The standard C library functions, for feeding to gperf; the result is used
+--- gcc/cp/cfns.h
++++ gcc/cp/cfns.h
+@@ -1,5 +1,5 @@
+-/* ANSI-C code produced by gperf version 3.0.3 */
+-/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L ANSI-C cfns.gperf */
++/* C++ code produced by gperf version 3.0.4 */
++/* Command-line: gperf -o -C -E -k '1-6,$' -j1 -D -N libc_name_p -L C++ --output-file cfns.h cfns.gperf */
+
+ #if !((' ' == 32) && ('!' == 33) && ('"' == 34) && ('#' == 35) \
+ && ('%' == 37) && ('&' == 38) && ('\'' == 39) && ('(' == 40) \
+@@ -28,7 +28,7 @@
+ #error "gperf generated tables don't work with this execution character set. Please report a bug to <bug-gnu-gperf@gnu.org>."
+ #endif
+
+-#line 1 "cfns.gperf"
++#line 3 "cfns.gperf"
+
+ /* Copyright (C) 2000-2016 Free Software Foundation, Inc.
+
+@@ -47,25 +47,18 @@ for more details.
+ You should have received a copy of the GNU General Public License
+ along with GCC; see the file COPYING3. If not see
+ <http://www.gnu.org/licenses/>. */
+-#ifdef __GNUC__
+-__inline
+-#endif
+-static unsigned int hash (const char *, unsigned int);
+-#ifdef __GNUC__
+-__inline
+-#endif
+-const char * libc_name_p (const char *, unsigned int);
+ /* maximum key range = 391, duplicates = 0 */
+
+-#ifdef __GNUC__
+-__inline
+-#else
+-#ifdef __cplusplus
+-inline
+-#endif
+-#endif
+-static unsigned int
+-hash (register const char *str, register unsigned int len)
++class libc_name
++{
++private:
++ static inline unsigned int hash (const char *str, unsigned int len);
++public:
++ static const char *libc_name_p (const char *str, unsigned int len);
++};
++
++inline unsigned int
++libc_name::hash (register const char *str, register unsigned int len)
+ {
+ static const unsigned short asso_values[] =
+ {
+@@ -122,14 +115,8 @@ hash (register const char *str, register unsigned int len)
+ return hval + asso_values[(unsigned char)str[len - 1]];
+ }
+
+-#ifdef __GNUC__
+-__inline
+-#ifdef __GNUC_STDC_INLINE__
+-__attribute__ ((__gnu_inline__))
+-#endif
+-#endif
+ const char *
+-libc_name_p (register const char *str, register unsigned int len)
++libc_name::libc_name_p (register const char *str, register unsigned int len)
+ {
+ enum
+ {
+--- gcc/cp/except.c
++++ gcc/cp/except.c
+@@ -1040,7 +1040,8 @@ nothrow_libfn_p (const_tree fn)
+ unless the system headers are playing rename tricks, and if
+ they are, we don't want to be confused by them. */
+ id = DECL_NAME (fn);
+- return !!libc_name_p (IDENTIFIER_POINTER (id), IDENTIFIER_LENGTH (id));
++ return !!libc_name::libc_name_p (IDENTIFIER_POINTER (id),
++ IDENTIFIER_LENGTH (id));
+ }
+
+ /* Returns nonzero if an exception of type FROM will be caught by a