blob: 33393e990e9c73699a7aafa7fb24dea26888fb40 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
|
# Maintainer (Arch): NicoHood <aur {at} nicohood {dot} de>
# Contributor (Arch): Christopher Loen <christopherloen at gmail dot com>
# Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe>
# Contributor: Luke Shumaker <lukeshu@parabola.nu>
pkgname=arduino
pkgver=1.6.8
pkgrel=1.parabola1
epoch=1
pkgdesc="Arduino prototyping platform SDK"
arch=('i686' 'x86_64')
url="https://github.com/arduino/Arduino"
license=('GPL' 'LGPL')
depends=('gtk2' 'desktop-file-utils' 'shared-mime-info' 'java-runtime=8' 'arduino-builder'
'bcpg' 'bcprov' 'java-batik' 'java-commons-codec' 'java-commons-compress' 'java-commons-exec'
'java-commons-lang3' 'java-commons-logging' 'java-commons-net' 'java-jackson-annotations'
'java-jackson-core' 'java-jackson-databind' 'java-jackson-module-mrbean' 'java-jsch'
'java-rsyntaxtextarea' 'java-semver' 'jmdns' 'jssc' 'astyle=3.0.1')
makedepends=('java-environment=8' 'apache-ant' 'unzip')
optdepends=('arduino-docs: Offline documentation for arduino'
'arduino-avr-core: AVR core with upstream avr-gcc and avrdude'
'python2: Intel Galileo Board installation')
options=(!strip)
install="arduino.install"
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/arduino/Arduino/archive/${pkgver}.tar.gz"
'http://downloads.arduino.cc/packages/package_index.json.gz'
'http://downloads.arduino.cc/libraries/library_index.json.gz'
'arduino-build.patch'
'arduino-macosx.patch'
'arduino-use-system-astyle.patch'
'arduino.sh')
sha256sums=('5b2e8b3115000986f12ebdc126162d22c2dc85b3ca9732b8f8966e6dcdf2edad'
'e21d1946346893fa0f40e12bd16027d84173c5edec0b9856be38555b97706f8a'
'f984d81816751d6872566890611c863ddc3d13f9bfe1b6242aeefe4fa4070d08'
'e15fe37f6b575c65d2546afb96f215112295f99856ca2bee91a2ca9963c37f8e'
'2ef32c994f44e6667136c02ecddaf86e9dd9009fd89b8d697257c0121d5f41cd'
'a5bfb3ba51f8ff30eb121e6d4fa6292db2a3f8aa5ca8c33b8b57a451d4c8f4f9'
'6a0a2f12440f90df39ae244dd74baf40f30e3f06c0e5eca33e16d6d54324e0bf')
prepare() {
cd "${srcdir}/Arduino-${pkgver}"
rm -v $(find . -name \*.exe)
rm -v $(find . -name \*.hex)
rm -v $(find . -name \*.jar)
#rm -v $(find . -name \*.so)
#rm -v $(find . -name \*.swp)
#rm -f build/linux/dist/tools/avrdude*
rm -rfv hardware/arduino/avr/firmwares/wifishield
rm -rfv $(find . -type d -name 'macosx')
rm -rfv $(find . -type d -name 'windows')
cp -v ../{library_index,package_index}.json .
# Patch arduino build process.
#patch -Np1 -i ../arduino-avrtools.patch"
patch -Np1 -i ../arduino-build.patch
patch -Np1 -i ../arduino-macosx.patch
patch -Np1 -i ../arduino-use-system-astyle.patch
cd "${srcdir}/Arduino-${pkgver}/arduino-core/lib"
_link_jars
cd "${srcdir}/Arduino-${pkgver}/app/lib"
_link_jars
}
_link_jars() {
for jar in rxtx/RXTXcomm.jar antlr2.jar ecj.jar jna.jar batik-transcoder.jar bcpg.jar bcprov.jar commons-codec.jar commons-compress.jar commons-exec.jar commons-lang3.jar commons-logging.jar commons-net.jar jackson-annotations.jar jackson-core.jar jackson-databind.jar jackson-module-mrbean.jar java-semver.jar jmdns.jar jsch.jar jssc.jar rsyntaxtextarea.jar; do
ln -sf /usr/share/java/$jar .
done
}
build() {
cd "Arduino-${pkgver}/build"
# Compile with java8
export PATH=/usr/lib/jvm/java-8-openjdk/jre/bin/:$PATH
# Do not include their avr-core + tools and no docs. We build them seperately
ant linux-clean dist -Dversion=${pkgver} build -Dlight_bundle=true \
-Dno_docs=true \
-Dlocal_sources=true \
-Dno_arduino_builder=true
}
package() {
cd "$srcdir/Arduino-$pkgver/build/linux/work"
# Create directories
install -dm755 "${pkgdir}/usr/share/"{doc,icons/hicolor,applications,mime/packages}
# copy the whole SDK
cp -a . "${pkgdir}/usr/share/arduino"
# Create wrapper for java8 + buider and documentation symlink
install -Dm755 "${srcdir}/arduino.sh" "${pkgdir}/usr/bin/arduino"
# Arduino-builder
ln -s /usr/bin/arduino-builder "${pkgdir}/usr/share/arduino/arduino-builder"
install -dm755 "${pkgdir}/usr/share/arduino/tools-builder"
rm -r "${pkgdir}/usr/share/arduino/reference"
ln -s /usr/share/doc/arduino "${pkgdir}/usr/share/arduino/reference"
# Install desktop icons (keep a symlink for the arduino binary)
cp -a lib/icons/* "${pkgdir}/usr/share/icons/hicolor"
rm -rf "${pkgdir}/usr/share/arduino/lib/icons"
ln -s /usr/share/icons/hicolor "${pkgdir}/usr/share/arduino/lib/icons"
# Create desktop file using existing template
sed "s,<BINARY_LOCATION>,arduino %U,g;s,<ICON_NAME>,arduino,g" "lib/desktop.template" \
> "${pkgdir}/usr/share/applications/arduino.desktop"
# Install Arduino mime type
ln -s /usr/share/arduino/lib/arduino-arduinoide.xml "${pkgdir}/usr/share/mime/packages/arduino.xml"
}
|