From f221d9dfd0f7df43847203ac45d1cb6535e717fb Mon Sep 17 00:00:00 2001
From: Evan Deaubl <evan@deaubl.name>
Date: Sun, 8 Jan 2017 01:36:07 -0700
Subject: [PATCH] arduino: update to 1.8.0 (#5436)

---
 .../patches/disable-dependency-build.patch    | 133 +++++++++++++-----
 srcpkgs/arduino/template                      |   6 +-
 2 files changed, 102 insertions(+), 37 deletions(-)

diff --git a/srcpkgs/arduino/patches/disable-dependency-build.patch b/srcpkgs/arduino/patches/disable-dependency-build.patch
index 390da3c3695..e9d3faec67f 100644
--- a/srcpkgs/arduino/patches/disable-dependency-build.patch
+++ b/srcpkgs/arduino/patches/disable-dependency-build.patch
@@ -1,11 +1,11 @@
---- build/build.xml.orig	2016-03-27 18:18:08.681227463 -0700
-+++ build/build.xml	2016-03-27 18:19:28.096229351 -0700
-@@ -425,17 +425,6 @@
+--- build/build.xml.orig	2016-12-29 08:09:30.185309472 -0700
++++ build/build.xml	2016-12-29 08:11:41.992661097 -0700
+@@ -449,17 +449,6 @@
      </antcall>
  
      <antcall target="unzip">
--      <param name="archive_file" value="./libastylej-2.05.1.zip" />
--      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1.zip" />
+-      <param name="archive_file" value="./libastylej-2.05.1-3.zip" />
+-      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1-3.zip" />
 -      <param name="final_folder" value="${staging_folder}/libastylej-2.05.1" />
 -      <param name="dest_folder" value="${staging_folder}" />
 -    </antcall>
@@ -15,16 +15,33 @@
 -    <chmod perm="755" file="macosx/work/${staging_hardware_folder}/../lib/libastylej.dylib" />
 -
 -    <antcall target="unzip">
-       <param name="archive_file" value="./liblistSerials-1.0.5.zip" />
-       <param name="archive_url" value="http://downloads.arduino.cc/liblistSerials/liblistSerials-1.0.5.zip" />
-       <param name="final_folder" value="${staging_folder}/liblistSerials-1.0.5" />
-@@ -625,15 +614,6 @@
-         <fileset dir="linux/work" includes="**/*.sh" />
-     </chmod>
+       <param name="archive_file" value="./liblistSerials-${LIBLISTSERIAL-VERSION}.zip" />
+       <param name="archive_url" value="http://downloads.arduino.cc/liblistSerials/liblistSerials-${LIBLISTSERIAL-VERSION}.zip" />
+       <param name="final_folder" value="${staging_folder}/liblistSerials-${LIBLISTSERIAL-VERSION}" />
+@@ -491,16 +480,6 @@
  
+   <!-- Unzip AVR tools -->
+   <target name="macosx-build-avr-toolchain" unless="light_bundle">
+-    <antcall target="avr-toolchain-bundle">
+-      <param name="unpack_target" value="untar"/>
+-      <param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i386-apple-darwin11.tar.bz2"/>
+-      <param name="gcc_version" value="${AVRGCC-VERSION}"/>
+-      <param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i386-apple-darwin11.tar.bz2"/>
+-      <param name="avrdude_version" value="${AVRDUDE-VERSION}"/>
+-      <param name="arduinoOTA_archive_file" value="arduinoOTA-${arduinoOTA-VERSION}-osx.tar.bz2"/>
+-      <param name="arduinoOTA_version" value="${arduinoOTA-VERSION}"/>
+-    </antcall>
+-
+     <chmod perm="+x">
+       <fileset dir="${staging_folder}/work/${staging_hardware_folder}/tools" includes="**/bin/*"/>
+       <fileset dir="${staging_folder}/work/${staging_hardware_folder}/tools" includes="**/libexec/gcc/avr/4.8.1/*"/>
+@@ -648,15 +627,6 @@
+   </target>
+ 
+   <target name="linux-libastyle-x86" depends="linux-build" description="Download libastyle.so for x86/x64 arch">
 -    <antcall target="unzip">
--      <param name="archive_file" value="./libastylej-2.05.1.zip" />
--      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1.zip" />
+-      <param name="archive_file" value="./libastylej-2.05.1-3.zip" />
+-      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1-3.zip" />
 -      <param name="final_folder" value="${staging_folder}/libastylej-2.05.1" />
 -      <param name="dest_folder" value="${staging_folder}" />
 -    </antcall>
@@ -34,44 +51,76 @@
      <antcall target="portable-${portable}">
        <param name="parentdir" value="linux/work" />
      </antcall>
-@@ -670,15 +650,6 @@
+@@ -673,15 +643,6 @@
+   </target>
+ 
+   <target name="linux-libastyle-arm" depends="linux-build" description="Download libastyle.so for ARM">
+-    <antcall target="unzip">
+-      <param name="archive_file" value="./libastylej-2.05.1-3.zip" />
+-      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1-3.zip" />
+-      <param name="final_folder" value="${staging_folder}/libastylej-2.05.1" />
+-      <param name="dest_folder" value="${staging_folder}" />
+-    </antcall>
+-    <copy file="linux/libastylej-2.05.1/libastylej_arm.so" tofile="linux/work/lib/libastylej.so" />
+-    <chmod perm="755" file="linux/work/lib/libastylej.so" />
+-
+     <antcall target="portable-${portable}">
+       <param name="parentdir" value="linux/work" />
+     </antcall>
+@@ -718,15 +679,6 @@
+     </copy>
+     <delete dir="${staging_folder}/arduino-builder-arm" includeemptydirs="true"/>
+ 
+-    <antcall target="avr-toolchain-bundle">
+-      <param name="unpack_target" value="untar"/>
+-      <param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-armhf-pc-linux-gnu.tar.bz2"/>
+-      <param name="gcc_version" value="${AVRGCC-VERSION}"/>
+-      <param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-armhf-pc-linux-gnu.tar.bz2"/>
+-      <param name="avrdude_version" value="${AVRDUDE-VERSION}"/>
+-      <param name="arduinoOTA_archive_file" value="arduinoOTA-${arduinoOTA-VERSION}-linuxarm.tar.bz2"/>
+-      <param name="arduinoOTA_version" value="${arduinoOTA-VERSION}"/>
+-    </antcall>
+   </target>
+ 
+   <target name="linux32-build" depends="linux-libastyle-x86" description="Build linux (32-bit) version">
+@@ -750,15 +702,6 @@
      </copy>
      <delete dir="${staging_folder}/arduino-builder-linux32" includeemptydirs="true"/>
  
 -    <antcall target="avr-toolchain-bundle">
 -      <param name="unpack_target" value="untar"/>
--      <param name="gcc_archive_file" value="avr-gcc-4.8.1-arduino5-i686-pc-linux-gnu.tar.bz2"/>
--      <param name="gcc_version" value="4.8.1-arduino5"/>
--      <param name="avrdude_archive_file" value="avrdude-6.0.1-arduino5-i686-pc-linux-gnu.tar.bz2"/>
--      <param name="avrdude_version" value="6.0.1-arduino5"/>
+-      <param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i686-pc-linux-gnu.tar.bz2"/>
+-      <param name="gcc_version" value="${AVRGCC-VERSION}"/>
+-      <param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i686-pc-linux-gnu.tar.bz2"/>
+-      <param name="avrdude_version" value="${AVRDUDE-VERSION}"/>
+-      <param name="arduinoOTA_archive_file" value="arduinoOTA-${arduinoOTA-VERSION}-linux32.tar.bz2"/>
+-      <param name="arduinoOTA_version" value="${arduinoOTA-VERSION}"/>
 -    </antcall>
--
--    <antcall target="package-library-index-json-bundle"/>
    </target>
  
-   <target name="linux64-build" depends="linux-build" description="Build linux (64-bit) version">
-@@ -702,15 +673,6 @@
+   <target name="linux64-build" depends="linux-libastyle-x86" description="Build linux (64-bit) version">
+@@ -782,15 +725,6 @@
      </copy>
      <delete dir="${staging_folder}/arduino-builder-linux64" includeemptydirs="true"/>
  
 -    <antcall target="avr-toolchain-bundle">
 -      <param name="unpack_target" value="untar"/>
--      <param name="gcc_archive_file" value="avr-gcc-4.8.1-arduino5-x86_64-pc-linux-gnu.tar.bz2"/>
--      <param name="gcc_version" value="4.8.1-arduino5"/>
--      <param name="avrdude_archive_file" value="avrdude-6.0.1-arduino5-x86_64-pc-linux-gnu.tar.bz2"/>
--      <param name="avrdude_version" value="6.0.1-arduino5"/>
+-      <param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-x86_64-pc-linux-gnu.tar.bz2"/>
+-      <param name="gcc_version" value="${AVRGCC-VERSION}"/>
+-      <param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-x86_64-pc-linux-gnu.tar.bz2"/>
+-      <param name="avrdude_version" value="${AVRDUDE-VERSION}"/>
+-      <param name="arduinoOTA_archive_file" value="arduinoOTA-${arduinoOTA-VERSION}-linux64.tar.bz2"/>
+-      <param name="arduinoOTA_version" value="${arduinoOTA-VERSION}"/>
 -    </antcall>
--
--    <antcall target="package-library-index-json-bundle"/>
    </target>
  
    <target name="linux-jvm-noop"/>
-@@ -898,16 +860,6 @@
+@@ -987,16 +921,6 @@
      <antcall target="windows-build-avr-toolchain" />
  
      <antcall target="unzip">
--      <param name="archive_file" value="./libastylej-2.05.1.zip" />
--      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1.zip" />
+-      <param name="archive_file" value="./libastylej-2.05.1-3.zip" />
+-      <param name="archive_url" value="http://downloads.arduino.cc/libastylej-2.05.1-3.zip" />
 -      <param name="final_folder" value="${staging_folder}/libastylej-2.05.1" />
 -      <param name="dest_folder" value="${staging_folder}" />
 -    </antcall>
@@ -80,6 +129,22 @@
 -    <copy file="windows/msvcr100.dll" todir="windows/work" />
 -
 -    <antcall target="unzip">
-       <param name="archive_file" value="./liblistSerials-1.0.5.zip" />
-       <param name="archive_url" value="http://downloads.arduino.cc/liblistSerials/liblistSerials-1.0.5.zip" />
-       <param name="final_folder" value="${staging_folder}/liblistSerials-1.0.5" />
+       <param name="archive_file" value="./liblistSerials-${LIBLISTSERIAL-VERSION}.zip" />
+       <param name="archive_url" value="http://downloads.arduino.cc/liblistSerials/liblistSerials-${LIBLISTSERIAL-VERSION}.zip" />
+       <param name="final_folder" value="${staging_folder}/liblistSerials-${LIBLISTSERIAL-VERSION}" />
+@@ -1070,15 +994,6 @@
+   </target>
+ 
+   <target name="windows-build-avr-toolchain">
+-    <antcall target="avr-toolchain-bundle">
+-      <param name="unpack_target" value="unzip"/>
+-      <param name="gcc_archive_file" value="avr-gcc-${AVRGCC-VERSION}-i686-mingw32.zip"/>
+-      <param name="gcc_version" value="${AVRGCC-VERSION}"/>
+-      <param name="avrdude_archive_file" value="avrdude-${AVRDUDE-VERSION}-i686-w64-mingw32.zip"/>
+-      <param name="avrdude_version" value="${AVRDUDE-VERSION}"/>
+-      <param name="arduinoOTA_archive_file" value="arduinoOTA-${arduinoOTA-VERSION}-windows.zip"/>
+-      <param name="arduinoOTA_version" value="${arduinoOTA-VERSION}"/>
+-    </antcall>
+   </target>
+ 
+   <target name="windows-run" depends="build,start"/>
diff --git a/srcpkgs/arduino/template b/srcpkgs/arduino/template
index e7b0aeb1036..92b6387af30 100644
--- a/srcpkgs/arduino/template
+++ b/srcpkgs/arduino/template
@@ -1,6 +1,6 @@
 # Template file for 'arduino'
 pkgname=arduino
-version=1.6.8
+version=1.8.0
 revision=1
 hostmakedepends="apache-ant unzip ImageMagick openjdk"
 depends="virtual?java-runtime avr-binutils avr-gcc avr-libc avrdude"
@@ -11,7 +11,7 @@ homepage="http://arduino.cc/"
 distfiles="
  https://github.com/arduino/Arduino/archive/${version}.tar.gz
  ${SOURCEFORGE_SITE}/astyle/astyle_2.05.1_linux.tar.gz"
-checksum="5b2e8b3115000986f12ebdc126162d22c2dc85b3ca9732b8f8966e6dcdf2edad
+checksum="221a81f6bafeb49c5a97e3e87e7be7d47afb038c819a4261459d1bc1cc693817
  fbdfc6f1966a972d19a215927266c76d4183eee235ed1e2bd7ec551c2a270eac"
 nostrip=yes
 wrksrc=Arduino-$version
@@ -34,7 +34,7 @@ do_build() {
 		x86_64*) LINUX_BUILD=linux64-build ;;
 		*) LINUX_BUILD=linux-build ;;
 	esac
-	ant $LINUX_BUILD package-library-index-json-bundle
+	ant $LINUX_BUILD
 	sed -i -e "s#{runtime\.tools\.[^.]*\.path}#/usr#g" \
 		-e "s#\(tools\.avrdude\.config\.path=\).*#\1/etc/avrdude.conf#" \
 		linux/work/hardware/arduino/avr/platform.txt