diff --git a/dev-embedded/arduino/additional-files/arduino-bin.rdef.in b/dev-embedded/arduino/additional-files/arduino-bin.rdef.in new file mode 100644 index 000000000..7952ccfa2 --- /dev/null +++ b/dev-embedded/arduino/additional-files/arduino-bin.rdef.in @@ -0,0 +1,57 @@ + +resource app_flags B_MULTIPLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "Arduino IDE", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource vector_icon { + $"6E636966040300969C03FDFEFE050004007A0B0009BEC0B3EABEC0B3EAC1D2B3" + $"A4C74DB6B5C4FBB4ABC9B8B8C1CB52BF04CB35BBD9CB7CC1E6C89BC704CA77C4" + $"D0C6BFC93AC12BCB11C40BCAB9BD99CB92B75BC7A3B9DBCA3AB4F7C537B41DBE" + $"4EB3C0C1B2B46CBB2AB89EB648B61AB830BA5FB4EABEC0B3EABC88B418BEC0B3" + $"EA0208BB37BB6ABD16BB53B94EBB75B73BBED5B788BCF0B6CFC0E2BA45C388B8" + $"40C30ABC6B4BBFB8C10CBE99C2D8C0B347C433C3A6C257C3C550C3ADC837C043" + $"C7E9C227C896BE65C5A6BBB9C771BC60C36EBAC8BFB8BE0CC0E9BC19BEBFBC8B" + $"0005BB12BCE9BB12BCE9BCCDBCB6BEE7BF89BE2BBE20BE33C116BAB5C21CBC88" + $"C297B918C1CFB8E8BE60B816BFD3B953BD92BB12BCE9BA2ABCFEBB12BCE90204" + $"BA36BF21BB0DBF1FBA30BF68BA35BFF7BA34BFB0BB11BFFABCCABFF7BBEDBFF8" + $"BCBFBFB4BCBABF22BCE43FBBE4BF1D0005C3D3BCE9C3D3BCE9C585BCABC6C6C0" + $"0FC72DBE5CC67CC18DC359C21CC4CCC288C20FC1CDC08ABF8FC125C0ACC129BE" + $"49C3D3BCE9C250BD05C3D3BCE9020CC382BE49C3C9BE46C37EBE8FC37FBF1EC3" + $"82BED8C338BF23C2A8BF2148BF1EC2A3BF68C2A8BFF6C2A6BFB048BFFAC37FBF" + $"F9C337BFF6C38CC042C38FC0DCC369C09DC3D2C0DFC456C0DCC414C0DFC45BC0" + $"91C458BFF9C455C045C4A1BFF5C530BFF7C4E8BFF9C534BFB0C530BF22C532BF" + $"68C4E9BF1DC459BF1EC4A1BF22C455BED8C457BE49C459BE90C40FBE440009BB" + $"37BB6ABB37BB6ABD16BB53BFB8BE0CBEBFBC8BC0E9BC19C5A6BBB9C36EBAC8C7" + $"71BC60C837C043C896BE65C7E9C227C433C3A650C3ADC257C3C5BFB8C10CC0B3" + $"47BE99C2D8BA45C388BC6B4BB840C30AB73BBED5B6CFC0E2B788BCF0BB37BB6A" + $"B94EBB75BB37BB6A0005BB12BCE9BB12BCE9BA2ABCFEB8E8BE60B953BD92B816" + $"BFD3BAB5C21CB918C1CFBC88C297BEE7BF89BE33C116BE2BBE20BB12BCE9BCCD" + $"BCB6BB12BCE90204C3D3BCE9C585BCABC250BD05C08ABF8FC129BE49C125C0AC" + $"C359C21CC20FC1CDC4CCC288C6C6C00FC67CC18DC72DBE5C020CC382BE49C37E" + $"BE8FC3C9BE46C457BE49C40FBE44C459BE90C459BF1EC455BED8C4A1BF22C530" + $"BF22C4E9BF1DC532BF68C530BFF7C534BFB0C4E8BFF9C458BFF9C4A1BFF5C455" + $"C045C456C0DCC45BC091C414C0DFC38FC0DCC3D2C0DFC369C09DC37FBFF9C38C" + $"C042C337BFF6C2A8BFF648BFFAC2A6BFB0C2A8BF21C2A3BF6848BF1EC37FBF1E" + $"C338BF23C382BED80204BA36BF21BA30BF68BB0DBF1FBCBABF22BBE4BF1DBCE4" + $"3FBCCABFF7BCBFBFB4BBEDBFF8BA35BFF7BB11BFFABA34BFB00A0A0302000102" + $"4013B1000000000000400A6A3F1C0F41B9BA0A02020001123FBE660000000000" + $"003FCED4420ADF42025A01178400040A00020001023FBE660000000000003FCE" + $"D4420ADF42025A0A00020203023FBE660000000000003FCED4420ADF42025A0A" + $"00020405023FBE660000000000003FCED4420ADF42025A0A0203060708123FBE" + $"660000000000003FCED4420ADF42025A01178300040A0103060708023FBE6600" + $"00000000003FCED4420ADF42025A0A0202090A123FBE660000000000003FCED4" + $"420ADF42025A01178300040A010109023FBE660000000000003FCED4420ADF42" + $"025A0A01010A023FBE660000000000003FCED4420ADF42025A" +}; diff --git a/dev-embedded/arduino/additional-files/arduino.rdef.in b/dev-embedded/arduino/additional-files/arduino.rdef.in new file mode 100644 index 000000000..898edaf1a --- /dev/null +++ b/dev-embedded/arduino/additional-files/arduino.rdef.in @@ -0,0 +1,62 @@ + +resource app_flags B_MULTIPLE_LAUNCH; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "Arduino IDE", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + +resource file_types message { + "types" = "text/x-arduino", + "types" = "text/x-source-code" +}; + +resource vector_icon { + $"6E636966040300969C03FDFEFE050004007A0B0009BEC0B3EABEC0B3EAC1D2B3" + $"A4C74DB6B5C4FBB4ABC9B8B8C1CB52BF04CB35BBD9CB7CC1E6C89BC704CA77C4" + $"D0C6BFC93AC12BCB11C40BCAB9BD99CB92B75BC7A3B9DBCA3AB4F7C537B41DBE" + $"4EB3C0C1B2B46CBB2AB89EB648B61AB830BA5FB4EABEC0B3EABC88B418BEC0B3" + $"EA0208BB37BB6ABD16BB53B94EBB75B73BBED5B788BCF0B6CFC0E2BA45C388B8" + $"40C30ABC6B4BBFB8C10CBE99C2D8C0B347C433C3A6C257C3C550C3ADC837C043" + $"C7E9C227C896BE65C5A6BBB9C771BC60C36EBAC8BFB8BE0CC0E9BC19BEBFBC8B" + $"0005BB12BCE9BB12BCE9BCCDBCB6BEE7BF89BE2BBE20BE33C116BAB5C21CBC88" + $"C297B918C1CFB8E8BE60B816BFD3B953BD92BB12BCE9BA2ABCFEBB12BCE90204" + $"BA36BF21BB0DBF1FBA30BF68BA35BFF7BA34BFB0BB11BFFABCCABFF7BBEDBFF8" + $"BCBFBFB4BCBABF22BCE43FBBE4BF1D0005C3D3BCE9C3D3BCE9C585BCABC6C6C0" + $"0FC72DBE5CC67CC18DC359C21CC4CCC288C20FC1CDC08ABF8FC125C0ACC129BE" + $"49C3D3BCE9C250BD05C3D3BCE9020CC382BE49C3C9BE46C37EBE8FC37FBF1EC3" + $"82BED8C338BF23C2A8BF2148BF1EC2A3BF68C2A8BFF6C2A6BFB048BFFAC37FBF" + $"F9C337BFF6C38CC042C38FC0DCC369C09DC3D2C0DFC456C0DCC414C0DFC45BC0" + $"91C458BFF9C455C045C4A1BFF5C530BFF7C4E8BFF9C534BFB0C530BF22C532BF" + $"68C4E9BF1DC459BF1EC4A1BF22C455BED8C457BE49C459BE90C40FBE440009BB" + $"37BB6ABB37BB6ABD16BB53BFB8BE0CBEBFBC8BC0E9BC19C5A6BBB9C36EBAC8C7" + $"71BC60C837C043C896BE65C7E9C227C433C3A650C3ADC257C3C5BFB8C10CC0B3" + $"47BE99C2D8BA45C388BC6B4BB840C30AB73BBED5B6CFC0E2B788BCF0BB37BB6A" + $"B94EBB75BB37BB6A0005BB12BCE9BB12BCE9BA2ABCFEB8E8BE60B953BD92B816" + $"BFD3BAB5C21CB918C1CFBC88C297BEE7BF89BE33C116BE2BBE20BB12BCE9BCCD" + $"BCB6BB12BCE90204C3D3BCE9C585BCABC250BD05C08ABF8FC129BE49C125C0AC" + $"C359C21CC20FC1CDC4CCC288C6C6C00FC67CC18DC72DBE5C020CC382BE49C37E" + $"BE8FC3C9BE46C457BE49C40FBE44C459BE90C459BF1EC455BED8C4A1BF22C530" + $"BF22C4E9BF1DC532BF68C530BFF7C534BFB0C4E8BFF9C458BFF9C4A1BFF5C455" + $"C045C456C0DCC45BC091C414C0DFC38FC0DCC3D2C0DFC369C09DC37FBFF9C38C" + $"C042C337BFF6C2A8BFF648BFFAC2A6BFB0C2A8BF21C2A3BF6848BF1EC37FBF1E" + $"C338BF23C382BED80204BA36BF21BA30BF68BB0DBF1FBCBABF22BBE4BF1DBCE4" + $"3FBCCABFF7BCBFBFB4BBEDBFF8BA35BFF7BB11BFFABA34BFB00A0A0302000102" + $"4013B1000000000000400A6A3F1C0F41B9BA0A02020001123FBE660000000000" + $"003FCED4420ADF42025A01178400040A00020001023FBE660000000000003FCE" + $"D4420ADF42025A0A00020203023FBE660000000000003FCED4420ADF42025A0A" + $"00020405023FBE660000000000003FCED4420ADF42025A0A0203060708123FBE" + $"660000000000003FCED4420ADF42025A01178300040A0103060708023FBE6600" + $"00000000003FCED4420ADF42025A0A0202090A123FBE660000000000003FCED4" + $"420ADF42025A01178300040A010109023FBE660000000000003FCED4420ADF42" + $"025A0A01010A023FBE660000000000003FCED4420ADF42025A" +}; diff --git a/dev-embedded/arduino/arduino-1.7.11.recipe b/dev-embedded/arduino/arduino-1.7.11.recipe index f1be23014..2ac37efd6 100644 --- a/dev-embedded/arduino/arduino-1.7.11.recipe +++ b/dev-embedded/arduino/arduino-1.7.11.recipe @@ -6,25 +6,29 @@ used to write and upload computer code to the board." HOMEPAGE="http://arduino.org" COPYRIGHT="2016 Arduino S.r.l. - Italy" LICENSE="GNU GPL v2" -REVISION="1" -SOURCE_URI="http://download.arduino.org/IDE/1.7.11/arduino-1.7.11.org-linux32.tar.xz" -CHECKSUM_SHA256="a71bcc0c4e1a314551461af13e0ddac80f0664ca1bcf1418eeb45bce91984a58" -SOURCE_DIR="arduino-1.7.11-linux32" +REVISION="2" +SOURCE_URI="https://github.com/arduino-cli/arduino-version/releases/download/$portVersion/arduino-$portVersion-linux32.zip" +CHECKSUM_SHA256="c80560935109121c4a8db6b34404bbdeb45e421584a895ca2277babc468f3b6a" +SOURCE_DIR="arduino-$portVersion-linux32" SOURCE_URI_2="https://github.com/scream3r/java-simple-serial-connector/archive/f5564869f8a70503c29c0d24609245321ba39b2c.tar.gz" CHECKSUM_SHA256_2="3d874fbf2afa60f6c21db7da6d89cc584f42e6ff01b63238bf235776699379e6" SOURCE_DIR_2="java-simple-serial-connector-f5564869f8a70503c29c0d24609245321ba39b2c" SOURCE_URI_3="https://github.com/arduino-org/Arduino/archive/4f0efcc55f1adb750fbf29b50fc4d96195f26ced.tar.gz" -CHECKSUM_SHA256_3="0e86b814b24395259e61d7c79625387885b70f8873f05f89c609c3e14380fe21" +CHECKSUM_SHA256_3="5346a8cff057c454ff0cdbb84919636639985621ca8a73438002a780fc461eed" SOURCE_DIR_3="Arduino-4f0efcc55f1adb750fbf29b50fc4d96195f26ced/app/src/processing/app" SOURCE_URI_4="https://github.com/arduino-org/Arduino/archive/4f0efcc55f1adb750fbf29b50fc4d96195f26ced.tar.gz" -CHECKSUM_SHA256_4="0e86b814b24395259e61d7c79625387885b70f8873f05f89c609c3e14380fe21" +CHECKSUM_SHA256_4="5346a8cff057c454ff0cdbb84919636639985621ca8a73438002a780fc461eed" SOURCE_DIR_4="Arduino-4f0efcc55f1adb750fbf29b50fc4d96195f26ced/arduino-core/src/processing" -PATCHES="arduino-1.7.11.patchset" +PATCHES="arduino-$portVersion.patchset" PATCHES_2="jssc_2.8.0.patchset" -PATCHES_3="JFileChooser-1.7.11.patchset" -PATCHES_4="SettingsFolder-1.7.11.patchset" +PATCHES_3="JFileChooser-$portVersion.patchset" +PATCHES_4="SettingsFolder-$portVersion.patchset" +ADDITIONAL_FILES=" + arduino.rdef.in + arduino-bin.rdef.in + " -ARCHITECTURES="!x86_gcc2 x86 ?x86_64" +ARCHITECTURES="!x86_gcc2 x86 x86_64" SECONDARY_ARCHITECTURES="x86" DISABLE_SOURCE_PACKAGE="yes" @@ -37,20 +41,19 @@ REQUIRES=" avr_binutils$secondaryArchSuffix avr_gcc$secondaryArchSuffix avr_libc$secondaryArchSuffix - openjdk$secondaryArchSuffix cmd:avrdude$secondaryArchSuffix + java:runtime >= 8 " BUILD_REQUIRES=" haiku${secondaryArchSuffix}_devel - openjdk$secondaryArchSuffix + openjdk8$secondaryArchSuffix " BUILD_PREREQUIRES=" cmd:gcc$secondaryArchSuffix - cmd:jar - cmd:java - cmd:java_config - cmd:javac + cmd:jar >= 1.8 + cmd:java >= 1.8 + cmd:javac >= 1.8 cmd:make " @@ -74,16 +77,15 @@ BUILD() fi gcc -shared \ - -I/boot/system/lib/openjdk/include \ - -I/boot/system/lib/x86/openjdk/include \ - -I/boot/system/lib/openjdk/include/haiku \ - -I/boot/system/lib/x86/openjdk/include/haiku \ + -I/system/lib/openjdk8/include \ + -I/system/lib/x86/openjdk8/include \ + -I/system/lib/openjdk8/include/haiku \ + -I/system/lib/x86/openjdk8/include/haiku \ $sourceDir2/src/cpp/_nix_based/jssc.cpp \ -l$STDLIB \ - -o $sourceDir2/build/libs/haiku/libjSSC-2.8_x86.so + -o $sourceDir2/build/libs/haiku/libjSSC-2.8_x86_64.so cp -r $sourceDir2/src/java/libs/* $sourceDir2/build/libs - cd $sourceDir2/build jar cf jssc-2.8.0.jar jssc libs @@ -94,18 +96,19 @@ BUILD() sed -i '/import java.util.regex.Pattern;/a import jssc.SerialNativeInterface;' \ $sourceDir2/build/processing/app/SerialPortList.java - javac -encoding ISO-8859-1 -cp ./jssc-2.8.0.jar:$sourceDir/lib/arduino-core.jar \ + javac -target 7 -source 1.7 -encoding ISO-8859-1 -cp ./jssc-2.8.0.jar:$sourceDir/lib/arduino-core.jar \ $sourceDir2/build/processing/app/SerialPortList.java rm $sourceDir2/build/processing/app/SerialPortList.java cd $sourceDir - javac -encoding ISO-8859-1 -cp java/lib/rt.jar:java/lib/tools.jar:./lib/pde.jar:./lib/arduino-core.jar \ + javac -target 7 -source 1.7 -encoding ISO-8859-1 -cp java/lib/rt.jar:java/lib/tools.jar:./lib/pde.jar:./lib/arduino-core.jar \ $sourceDir3/Base.java $sourceDir3/Sketch.java + mkdir -p $sourceDir3/processing/app cp -f $sourceDir3/*.class $sourceDir3/processing/app - javac -encoding ISO-8859-1 \ + javac -target 7 -source 1.7 -encoding ISO-8859-1 \ -cp java/lib/rt.jar:java/lib/tools.jar:./lib/pde.jar:./lib/arduino-core.jar:./lib/jna.jar \ $sourceDir4/app/Platform.java @@ -116,15 +119,9 @@ BUILD() INSTALL() { arduinoDir=$appsDir/Arduino - mkdir -p $arduinoDir - - cp -r examples $arduinoDir - cp -r libraries $arduinoDir - cp -r reference $arduinoDir - cp -r lib $arduinoDir - cp -r tools $arduinoDir - mkdir -p $arduinoDir/hardware/arduino + + cp -r {examples,libraries,reference,lib,tools} $arduinoDir cp -r hardware/arduino/avr $arduinoDir/hardware/arduino #Patch for AVR tools @@ -190,15 +187,44 @@ done export CLASSPATH LD_LIBRARY_PATH=`pwd`/lib${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} export LD_LIBRARY_PATH -java processing.app.Base "$@" +export PATH="/system/lib/openjdk8/bin:${PATH}" +export JAVA_HOME="/system/lib/openjdk8" +Arduino processing.app.Base "$@" ' > $arduinoDir/arduino.sh chmod +x $arduinoDir/arduino.sh #Copy binary launcher cp "haiku/Arduino IDE" $arduinoDir + mkdir -p $libDir/openjdk8/bin + cp /system/lib/openjdk8/bin/java $libDir/openjdk8/bin/Arduino cp revisions.txt $arduinoDir + local APP_SIGNATURE="application/x-vnd.arduino" + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" + local LONG_INFO="$SUMMARY" + sed \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + $portDir/additional-files/arduino.rdef.in > arduino.rdef + + addResourcesToBinaries arduino.rdef "$arduinoDir/Arduino IDE" + + local APP_SIGNATURE="application/x-vnd.arduino-bin" + sed \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + $portDir/additional-files/arduino-bin.rdef.in > arduino-bin.rdef + addResourcesToBinaries arduino-bin.rdef $libDir/openjdk8/bin/Arduino + addAppDeskbarSymlink "$arduinoDir/Arduino IDE" } diff --git a/dev-embedded/arduino/patches/JFileChooser-1.7.11.patchset b/dev-embedded/arduino/patches/JFileChooser-1.7.11.patchset index 9d123130c..6b498a2d7 100644 --- a/dev-embedded/arduino/patches/JFileChooser-1.7.11.patchset +++ b/dev-embedded/arduino/patches/JFileChooser-1.7.11.patchset @@ -1,4 +1,4 @@ -From f874d3a990ad31b6a50c2b0696cfe4faabdc0b22 Mon Sep 17 00:00:00 2001 +From be2b430a99273bcbab22f716fb33a07ea8ee2be8 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Thu, 11 Jun 2015 18:25:51 +1000 Subject: Use JFileChooser instead of FileDialog for open files @@ -84,10 +84,10 @@ index ca8d13c..a937988 100644 // now do the work of adding the file boolean result = addFile(sourceFile); -- -2.7.0 +2.21.0 -From d55081ebf35f57b0055f3d3f21602bc9e888e5cf Mon Sep 17 00:00:00 2001 +From a94ad93405daab4738a230691c4428d58187307e Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Fri, 7 Apr 2017 00:31:04 +0000 Subject: Use JFileChooser instead of FileDialog for save @@ -142,5 +142,36 @@ index a937988..23fe2c4 100644 File newFolder = new File(newParentDir, newName); -- -2.7.0 +2.21.0 + + +From eeab0c20120f4b45baa9fdeabc2d444371202485 Mon Sep 17 00:00:00 2001 +From: Gerasim Troeglazov <3dEyes@gmail.com> +Date: Wed, 17 Jul 2019 19:39:27 +1000 +Subject: Fix build + + +diff --git a/Base.java b/Base.java +index f0e5e0d..8980f98 100644 +--- a/Base.java ++++ b/Base.java +@@ -31,7 +31,6 @@ import processing.app.helpers.filefilters.OnlyDirs; + import processing.app.helpers.filefilters.OnlyFilesWithExtension; + import processing.app.javax.swing.filechooser.FileNameExtensionFilter; + import processing.app.legacy.PApplet; +-import processing.app.macosx.ThinkDifferent; + import processing.app.packages.Library; + import processing.app.packages.LibraryList; + import processing.app.tools.MenuScroller; +@@ -199,8 +198,6 @@ public class Base { + + public Base(String[] args) throws Exception { + getPlatform().init(); +- if (OSUtils.isMacOS()) +- ThinkDifferent.init(this); + + String sketchbookPath = BaseNoGui.getSketchbookPath(); + +-- +2.21.0 diff --git a/dev-embedded/arduino/patches/arduino-1.7.11.patchset b/dev-embedded/arduino/patches/arduino-1.7.11.patchset index 6adcdf0da..514c02625 100644 --- a/dev-embedded/arduino/patches/arduino-1.7.11.patchset +++ b/dev-embedded/arduino/patches/arduino-1.7.11.patchset @@ -1,4 +1,4 @@ -From 28c4ea802381f2ebc3955215720bf684edf7d916 Mon Sep 17 00:00:00 2001 +From 25fc9bd1d8880fcbc1f26d8c521e20ccdb468f42 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Wed, 10 Jun 2015 23:31:37 +1000 Subject: Add binary launcher @@ -419,10 +419,10 @@ index 0000000..b795392 +}; + -- -2.7.0 +2.21.0 -From da067783d7fe50a05351a344d1c9cd2cd45816ee Mon Sep 17 00:00:00 2001 +From 1555ad1aeae85e15427d5ecad337e6af11603e49 Mon Sep 17 00:00:00 2001 From: Gerasim Troeglazov <3dEyes@gmail.com> Date: Fri, 7 Apr 2017 00:37:59 +0000 Subject: Cleanup code and set actual version @@ -465,5 +465,5 @@ index b795392..f174d8b 100644 variety = B_APPV_DEVELOPMENT, internal = 0, -- -2.7.0 +2.21.0