summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Sapp <nixphoeni@gentoo.org>2009-04-18 16:50:55 +0000
committerJoe Sapp <nixphoeni@gentoo.org>2009-04-18 16:50:55 +0000
commitb0cbc6c7b4974864712f88775c2b5837d899e5fb (patch)
tree0a4015ded9adf9a48714a752eeab602f591af8d0 /dev-embedded/arduino
parentStable on alpha, bug #264604 (diff)
downloadgentoo-2-b0cbc6c7b4974864712f88775c2b5837d899e5fb.tar.gz
gentoo-2-b0cbc6c7b4974864712f88775c2b5837d899e5fb.tar.bz2
gentoo-2-b0cbc6c7b4974864712f88775c2b5837d899e5fb.zip
Fixed for amd64 systems and potential security bug (see related bug #189249).
(Portage version: 2.1.6.11/cvs/Linux x86_64)
Diffstat (limited to 'dev-embedded/arduino')
-rw-r--r--dev-embedded/arduino/ChangeLog10
-rw-r--r--dev-embedded/arduino/arduino-0011.ebuild44
-rw-r--r--dev-embedded/arduino/arduino-0015-r1.ebuild (renamed from dev-embedded/arduino/arduino-0015.ebuild)16
3 files changed, 22 insertions, 48 deletions
diff --git a/dev-embedded/arduino/ChangeLog b/dev-embedded/arduino/ChangeLog
index f1db2a2ce894..bd65e6d20338 100644
--- a/dev-embedded/arduino/ChangeLog
+++ b/dev-embedded/arduino/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-embedded/arduino
# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-embedded/arduino/ChangeLog,v 1.2 2009/04/14 22:00:18 solar Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-embedded/arduino/ChangeLog,v 1.3 2009/04/18 16:50:55 nixphoeni Exp $
+
+*arduino-0015-r1 (18 Apr 2009)
+
+ 18 Apr 2009; Joe Sapp <nixphoeni@gentoo.org> -arduino-0011.ebuild,
+ -arduino-0015.ebuild, +arduino-0015-r1.ebuild:
+ Fix for amd64 systems - use system libraries instead of upstream-provided
+ libraries. Check for avr-g++ since that's what the IDE will complain
+ about. Also fixed potential security bug (see related bug #189249).
*arduino-0015 (14 Apr 2009)
diff --git a/dev-embedded/arduino/arduino-0011.ebuild b/dev-embedded/arduino/arduino-0011.ebuild
deleted file mode 100644
index 5e27c204fc04..000000000000
--- a/dev-embedded/arduino/arduino-0011.ebuild
+++ /dev/null
@@ -1,44 +0,0 @@
-# Copyright 2008-2008 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-embedded/arduino/arduino-0011.ebuild,v 1.1 2008/09/21 05:03:06 solar Exp $
-
-inherit eutils
-
-DESCRIPTION="Arduino is an open-source AVR electronics prototyping platform"
-HOMEPAGE="http://arduino.cc/"
-SRC_URI="http://www.arduino.cc/files/${P}-linux.tgz"
-LICENSE="GPL-2 LGPL-2 CCPL-Attribution-ShareAlike-3.0"
-SLOT="0"
-KEYWORDS="~x86 ~amd64"
-RESTRICT="strip binchecks"
-IUSE="java"
-RDEPEND="dev-embedded/avrdude"
-DEPEND="${RDEPEND} sys-devel/crossdev java? ( virtual/jre dev-embedded/uisp dev-java/jikes dev-java/rxtx )"
-
-pkg_setup() {
- [ ! -x /usr/bin/avr-gcc ] && ewarn "You need to crossdev -s4 avr"
-}
-
-pkg_postinst() {
- pkg_setup
- einfo "Copy /usr/share/${P}/hardware/cores/arduino/Makefile and edit it to suit the project"
-}
-
-src_unpack() {
- unpack ${A}
- cd "${S}"
- epatch "${FILESDIR}"/Makefile-${PV}.patch
- rm -rf hardware/tools/
- if ! use java; then
- rm -rf lib
- rm -f arduino
- fi
-}
-
-src_install() {
- mkdir -p "${D}/usr/share/${P}/" "${D}/usr/bin"
- cp -a "${S}" "${D}/usr/share/"
- chown root:uucp "${D}/usr/share/${P}/hardware" -R
- use java && ( sed -e s@__PN__@${P}@g < "${FILESDIR}"/arduino > "${D}/usr/bin/arduino"; chmod +x "${D}/usr/bin/arduino" )
-
-}
diff --git a/dev-embedded/arduino/arduino-0015.ebuild b/dev-embedded/arduino/arduino-0015-r1.ebuild
index e7412c60171d..9efa334eed42 100644
--- a/dev-embedded/arduino/arduino-0015.ebuild
+++ b/dev-embedded/arduino/arduino-0015-r1.ebuild
@@ -1,6 +1,6 @@
# Copyright 2008-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-embedded/arduino/arduino-0015.ebuild,v 1.1 2009/04/14 22:00:18 solar Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-embedded/arduino/arduino-0015-r1.ebuild,v 1.1 2009/04/18 16:50:55 nixphoeni Exp $
inherit eutils
@@ -13,10 +13,10 @@ KEYWORDS="~x86 ~amd64"
RESTRICT="strip binchecks"
IUSE="java"
RDEPEND="dev-embedded/avrdude"
-DEPEND="${RDEPEND} sys-devel/crossdev java? ( virtual/jre dev-embedded/uisp dev-java/jikes dev-java/rxtx )"
+DEPEND="${RDEPEND} sys-devel/crossdev java? ( virtual/jre dev-embedded/uisp dev-java/jikes dev-java/rxtx dev-java/antlr )"
pkg_setup() {
- [ ! -x /usr/bin/avr-gcc ] && ewarn "You need to crossdev -s4 avr"
+ [ ! -x /usr/bin/avr-g++ ] && ewarn "Missing avr-g++; you need to crossdev -s4 avr"
}
pkg_postinst() {
@@ -43,6 +43,16 @@ src_install() {
sed -e s@__PN__@${P}@g < "${FILESDIR}"/arduino > "${D}/usr/bin/arduino"
chmod +x "${D}/usr/bin/arduino"
+ # get rid of libraries provided by other packages
+ rm -f "${D}/usr/share/${P}/lib/RXTXcomm.jar"
+ rm -f "${D}/usr/share/${P}/lib/antlr.jar"
+
+ # fix the provided arduino script to call out the right libraries
+ sed -i -e 's@lib/antlr\.jar@$(java-config -dp antlr)@g' \
+ -e 's@lib/RXTXcomm\.jar@$(java-config -dp rxtx-2)@g' "${D}/usr/share/${P}/arduino"
+ # and fix its reference to LD_LIBRARY_PATH (see bug #189249)
+ sed -i -e 's@^LD_LIBRARY_PATH=.*@LD_LIBRARY_PATH=$(java-config -di rxtx-2)${LD_LIBRARY_PATH+:$LD_LIBRARY_PATH}@' "${D}/usr/share/${P}/arduino"
+
# use system avrdude
# patching class files is too hard
dosym /usr/bin/avrdude "/usr/share/${P}/hardware/tools/avrdude"