summaryrefslogtreecommitdiff
path: root/devel/arduino-builder
diff options
context:
space:
mode:
authorBoris Samorodov <bsam@FreeBSD.org>2016-10-24 22:59:22 +0000
committerBoris Samorodov <bsam@FreeBSD.org>2016-10-24 22:59:22 +0000
commite64e1388685e1e94c129a9959a08779feb9a4323 (patch)
treed63d2315b0f2b312ca5a4883e66f6a43c2f20161 /devel/arduino-builder
parentBring in upstream commit ec165c392ca54317dbe3064a8c200de6531e89ad: (diff)
Alright, this should be the last fundamental change for
devel/arduino-builder. =) Right now, there's two possible configurations for building and flashing Arduino projects: 1.) Use devel/arduino16 -- this pulls in devel/arduino-builder and devel/arduino-tools itself, and uses its own method (as it turns out, completely different from arduino-builder's discovery mechanism =() for finding the proper utility for flashing (devel/bossa vs. devel/avrdude) 2.) Use devel/arduino-builder + devel/arduino-tools directly, flash the result yourself -- this has the pro of not requiring Java to build a project, but the con that you do have to figure out how to flash the board (w/ devel/bossa or devel/avrdude) yourself. I suspect that #1 will be the most commonly used configuration, but #2 is nice for "advanced" (or not-so-advanced) applications (such as using a Raspberry Pi to compile+flash firmware for a 3D printer =)). As such, we add an OPTION to make this a more straightforward process of install devel/arduino-builder and then Just Do It. This option will also add in a file at arduino/arduino-builder.options that can be passed into arduino-builder through the -build-options-file. This removes the need for -hardware, -libraries, and -tools flags based on the defaults for devel/arduino-tools. This also auto-populates the core version ("runtime.ide.version", -ide-version/-core-api-version, and the ARDUINO #define) with the minimally supported version (see: _COMPAT_VER, _IDE_VER -- these should be kept in sync, and correspond to versions of devel/arduino-{core,tools}) PR: 213749 Submitted by: Kyle Evans <bsdports@kyle-evans.net> (maintainer)
Notes
Notes: svn path=/head/; revision=424593
Diffstat (limited to 'devel/arduino-builder')
-rw-r--r--devel/arduino-builder/Makefile20
1 files changed, 19 insertions, 1 deletions
diff --git a/devel/arduino-builder/Makefile b/devel/arduino-builder/Makefile
index 9fb4d259bb96..d8a1fa3c5507 100644
--- a/devel/arduino-builder/Makefile
+++ b/devel/arduino-builder/Makefile
@@ -2,7 +2,7 @@
PORTNAME= arduino-builder
PORTVERSION= 1.3.21
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= devel
MAINTAINER= bsdports@kyle-evans.net
@@ -20,13 +20,28 @@ GH_TUPLE= go-errors:errors:a418503:goerrors/src/github.com/go-errors/errors \
stretchr:testify:v1.1.3:stretchr/src/github.com/stretchr/testify \
jstemmer:go-junit-report:833f8ea:jstemmer/src/github.com/jstemmer/go-junit-report
+OPTIONS_DEFINE= TOOLS
+OPTIONS_DEFAULT=TOOLS
+
+TOOLS_DESC= Add arduino-tools for a standalone build setup
+TOOLS_RUN_DEPENDS= arduino-tools>=${_COMPAT_VER}:devel/arduino-tools
+TOOLS_PLIST_FILES= arduino/arduino-builder.options
+
GO_ENV+= GOPATH=${WRKSRC}
STRIP= # stripping can break go binaries
+_COMPAT_VER= 1.6.12
+_IDE_VER= 10612
PLIST_FILES= arduino/hardware/platform.keys.rewrite.txt \
arduino/hardware/platform.txt \
bin/${PORTNAME}
+do-patch-TOOLS-on:
+ ${CP} ${FILESDIR}/arduino-builder.options.in ${WRKSRC}/arduino-builder.options
+ ${REINPLACE_CMD} -e 's|%%IDEVER%%|${_IDE_VER}|' \
+ -e 's|%%PREFIX%%|${PREFIX}|' \
+ ${WRKSRC}/arduino-builder.options
+
do-build:
@( cd ${WRKSRC} ; ${SETENV} ${GO_ENV} go build arduino.cc/arduino-builder )
@@ -34,4 +49,7 @@ do-install:
${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/${PORTNAME}
(cd ${WRKSRC}/src/arduino.cc/builder && ${COPYTREE_SHARE} "hardware" ${STAGEDIR}${PREFIX}/arduino ${FIND_EXPR})
+do-install-TOOLS-on:
+ ${INSTALL_DATA} ${WRKSRC}/arduino-builder.options ${STAGEDIR}${PREFIX}/arduino/arduino-builder.options
+
.include <bsd.port.mk>