summaryrefslogtreecommitdiff
path: root/dev-embedded/arduino-builder
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-10-22 11:09:47 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-10-22 11:09:47 +0100
commit64e107b9b6058580ff0432107eb37cefb0b2a7d8 (patch)
tree9a44e603e2ae365e2b1fe35ac37f73e830cdee1d /dev-embedded/arduino-builder
parent957235cf19a691360c720f7913672adda4258ed0 (diff)
gentoo resync : 22.10.2018
Diffstat (limited to 'dev-embedded/arduino-builder')
-rw-r--r--dev-embedded/arduino-builder/Manifest14
-rw-r--r--dev-embedded/arduino-builder/arduino-builder-1.3.25.ebuild5
-rw-r--r--dev-embedded/arduino-builder/arduino-builder-1.4.1.ebuild71
-rw-r--r--dev-embedded/arduino-builder/files/arduino-builder-1.3.25-skip-tests.patch109
-rw-r--r--dev-embedded/arduino-builder/files/arduino-builder-1.4.1-platform-paths.patch19
-rw-r--r--dev-embedded/arduino-builder/files/arduino-builder-1.4.1-skip-tests.patch129
6 files changed, 344 insertions, 3 deletions
diff --git a/dev-embedded/arduino-builder/Manifest b/dev-embedded/arduino-builder/Manifest
index d275e2c9bb50..eda424cb8d2c 100644
--- a/dev-embedded/arduino-builder/Manifest
+++ b/dev-embedded/arduino-builder/Manifest
@@ -1,7 +1,19 @@
AUX arduino-builder-1.3.25-platform-paths.patch 982 BLAKE2B 9bc9d1d7cb12fe4f1e0539a2a548bbeb9ecc596e03fd9e7757d2d011e15b72a176095311063f0c58db2572db5912f6fbf8da493a83395f16f806ccd8a1c8de7a SHA512 8a2055cb6fdc0141701db908ca26c390d1f5992234eae5410b828a84972fcb0c2645b4062242064e37118ed20bad75b08fe044110a65a7b10c9662f62c3f44e7
+AUX arduino-builder-1.3.25-skip-tests.patch 5030 BLAKE2B ab80714f3168a61cb8d0787014e9710328319448e68f7d39758aa36227337a0f1609ffe43dc9c8104a831e96bccb81e4045c61a00137f4471ac9a575ecb797b8 SHA512 fe5730a5ff1bed4b214096840498613cf41e95fd700690bc1f45596b290c360b53458aab43d4a6bb6e3402724e6debcce8be47aa8e1d55731b9b213324d2fdfe
+AUX arduino-builder-1.4.1-platform-paths.patch 952 BLAKE2B 806ac4d6a0c1b2319d8ac3e76034893b809d21b84bf984c2ea73a935aa9c24613f2f48b11825611d6dac5c1c7ae413eae27bb1ba3b3144b8747bd3fa91e3090c SHA512 7d2acbaf5c4efd9773da7bf8e513cae4f013ffd016b84189981af839e1f4d518b8522049f07daf3e08c787d5f72ca307566bb1fd60ac3da86947f36ad29e8c27
+AUX arduino-builder-1.4.1-skip-tests.patch 5635 BLAKE2B 1aa9cd5a6826df30172cdb34b4bf71c553579c3f891abc4f630662e530d2b959f73225b0022e26b01b35306901e05498e11430a392115f53212959f2ebf7ac8e SHA512 09acfb0abfb02dba7d76641c7056a2f6b9e151cd43ffd8d8ceb0e0d692f35b372c9271456a6095b21dafd7971f64d9afb11af52720fffdc81e6035efc1e922d3
DIST arduino-builder-1.3.25.tar.gz 206905 BLAKE2B 6770b89607c1563b68a79d34e6e214586106c63a4b3c854b4f85a4b9eb2fc24ce5d4a97c29b0c05c19b6834e103f3c3c574bd8cefed0eb684d8aab7e4c71ee7f SHA512 3740530800f8a3cfe1fe20a91579e6b632b76c2c4ace68c7b178a2d234032d5887abee3d0360c3039f2fec912a0d5cabe948bf930a7d9ea23221625456ad5357
+DIST arduino-builder-1.4.1.tar.gz 220058 BLAKE2B b993ad508b81b3f05bb24747a63ac7b826739265aabc0437be403ca7154e6f3b580dacf235979fa4b395c6cc8c978e2cbdcab072822bd8fe61e42074ca4323e8 SHA512 d72f63d4235531310c412b096d154977d7d6ea2746e8703c8208e33e7bf3cac416817ccb5fbc47248bfe4a5858fa3a91117919b8cb636261c5cec28b8bc415bc
+DIST github.com-arduino-go-paths-helper-751652ddd9f0a98650e681673c2c73937002e889.tar.gz 14609 BLAKE2B f8a5b54f9898db7ea02d8aad779fc32cb6b21e430c84c5f77b985f9a23dc62de95a6a366956b7861b6b4b261ff5f30d3b20c92e51b256ed6f223a309a644302d SHA512 6116531448270b502187cd91d2a0847a8791c53b65729766291f1ddaa9bc2ce95b0d24a54dc895ad62e2d04c092081ce46300101b9f371db78b0204a541c8252
+DIST github.com-arduino-go-properties-map-ad37f0cfeff29fadeabe6b2f7f852d8db1fb5c41.tar.gz 16406 BLAKE2B f6afeb160114bfb221c882d1b2c8e7f6d6841585affbf349c82c421500d28cf2b09b28bef960048c357fac69ef5432cecc0a0098f7a4929aa0d3d566cbe56bd1 SHA512 5327e207b4a1a978585345d498f4af39bdd716686c058dacebada113cc07066834ebe19eb8f4d8388d400755dca7e8656bc053e7d8804a1d7e04a1cc6c4414ea
+DIST github.com-arduino-go-timeutils-d1dd9e313b1bfede35fe0bbf46d612e16a50e04e.tar.gz 8086 BLAKE2B d2e558b3c88e084c99cd0dd0ccaa0859e21b53671d4d28f57cce505f7fda0f89fdde7a08bcf7d2e4d8b57e4a760bdc608e97f0c27542fd0a396a548494bb7351 SHA512 e573f448c4b0b17882be98516abcdbbc4174e3ab041ce1390bc7e3e365932f1a4c7fe63cebf4e82b43bec5d5f4748511fa608a777a0cbc18b29e224041884fb8
+DIST github.com-fsnotify-fsnotify-c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9.tar.gz 31164 BLAKE2B 8ed43520ed7df3f52585b41358e2c89c55cd9bcea78affbf76d11cb2d3660e2de63d2debd91cd4da7c1a1fde3afac1086e616ab632460389cd4f10cc633a3e81 SHA512 809a90dcfbf565d335514257b577150a367e16ef871e2f44584a13fe3bc3ac87cbd789f7c7882a76cf7a7c546740c6552ec7382b4a6d18c4f0e845bcc3a7b0c8
DIST github.com-go-errors-errors-a41850380601eeb43f4350f7d17c6bbd8944aaf8.tar.gz 7835 BLAKE2B f4092b4ef5ebf996cb3c20183868dbdd154ea7cf02a4fd5a3375a3193e9ccacad08f0b6681b456786524b729ffb8c0b5c8af6ceec630eec22326d0fe1e00eb22 SHA512 b1d5e7c6f30f94f8a41b10d32b7f4ce7de8394f74ede6c14fb1f267a0514b24bc3bc7659c3baf6eacf424cea8451e7e57f5f72acc568342e90a447bd02f3e262
+DIST github.com-golang-protobuf-aa810b61a9c79d51363740d207bb46cf8e620ed5.tar.gz 332903 BLAKE2B b05fa3e3316bd6adbad623ab239795172ee70c38380873ee52a32c10f8f3e750c26b27fc43da4a290d82eda5723fd56063bffe01fdedb2d3a65bf5349abdb376 SHA512 80407835aef3553f655c35e89aa884038c90a3667460af1db60b069ae31e870efc59d6907743ee080d85e167c20d778440b9a6d19ff79f9055bc666c8314fe30
+DIST github.com-google-go-genproto-af9cb2a35e7f169ec875002c1829c9b315cddc04.tar.gz 2323831 BLAKE2B a614c74b60f8e347b47c8686807228ea76b021a918fc732b69293c8b59c1bc5396e320cbce6db87ab43b9a4fd649d19779874934bdd667f7cabf03165439c54a SHA512 a6524f31e8c4775195c245ffbe54c7f770591d46663ea86b8120ffd8efb3cf9269569fbf457b0d0272dc47177ccf3b413e858c2b437ee9892b5ac6698d07ed4d
+DIST github.com-grpc-grpc-go-8dea3dc473e90c8179e519d91302d0597c0ca1d1.tar.gz 506815 BLAKE2B 498909d0704b46d54571ad1f87d7636fafdf48f11fbf53e5e8ec6cd16aa6cd57cdfaedd8a7c00cd33ff60c99b0ab0dbf3f9c8df28155c75b2ceeaada3afabf92 SHA512 37970d20ce358d5186a9a152b1a0b1af816f7d53de8f2c35c901e8533e8191125e08ca60e1177bbab5e2585a1fa6e0fa9785ac70caadc5aa0fa58c189d26ca95
DIST github.com-jstemmer-go-junit-report-833f8ea2b99d36d5f018698333834f3df200a0c2.tar.gz 6901 BLAKE2B 6138ac40810ad000a4336ffbca3bc5c1d0e96854c7918fb2aad9f7b2596ac66f285ac8c519e30b6e97cdb0009b31ab73b83ff2e1db2f464c2d88f2c1045a6bd9 SHA512 00f38f51c5f761b5a3e60a6e6b602f1246a746f081f2d8946d01387234270544692c6af54d0e69919c1af8aa753f848eeecc4421f2ddf881f21522ccf5545d75
DIST github.com-stretchr-testify-1661650f989674e3e5bcdcb805536e5d31481526.tar.gz 81099 BLAKE2B 592a7c114b01bc5b1982135f310aa8619c2888ac36ccb5d876a38655a13f7dc4d468a7a42a44cf9cf69fc7bd6769a9ba010b48089d5ce866dcd564e20487e04a SHA512 f10255b0f47237c7583626a3bb213ca67d0db92c2a1531cc31dac089cdb13139b01647809503313a26f3e53a64a98cebc3bf9c4e1bd1ed975d9b81aa516ab5af
-EBUILD arduino-builder-1.3.25.ebuild 2767 BLAKE2B c8ac8f94cffe79ff009aee2dbcefba7a5e282bde90c58f4254fe9dec7564e8e41fa56c61071f475ae5db660f090134cf7f55a0810b940952c78d9a6402820e0b SHA512 adda2529e4cf3fd8be368d3c026ca52970d5e30be7ec0233108a943715c014dadb4e37be79109b7cfdb6ab5746d83aa353afcddc6f1349475c83a48614f7eebe
+EBUILD arduino-builder-1.3.25.ebuild 2825 BLAKE2B cc4ec18475e9ecf08e317356bd613b0706e5aa455a22b2d6d1807228609afeb1e95e1e45e0fea2ae5e7651f2db163632d27a5d7212bbbe30b14e25cb61e5c358 SHA512 b121e4c06899ed675897cfa29d12f6b2879a43402bd2c02135e9ae5f54615385e55ec315492ebc43af7ad8ab9c0e2252b743abb5a76d7b53c46b98a784e22bc6
+EBUILD arduino-builder-1.4.1.ebuild 2478 BLAKE2B 85a284b161b9e98260c52fd5338db7c8f3afe1063f00306fa73e1ef7f0ce2cbf0cdfc07ec75729d89b8ceed995671dc96c62c0c90581edccb38a52ae367b1533 SHA512 0deb62c9ebaa1089f0b2e021e871a29a2994edc167a6f9cdb01ddb9fab38f2bd8a640759627adfa2c5d068b47afd0d6ac77520c5c40f6245aaaed0fef33d7233
MISC metadata.xml 339 BLAKE2B 8353146b638f77f9846c37e1717f19e9d3eff24a88a8299bb43d6118e47c5159a53ed8612681f5f849269a8d250d99b9dc57030452d96ed81975196b3faedfb1 SHA512 3a107172d306efee35994af117181d4a08388883d4efeb48dd270f8a711deae39d68e1bd38423e0a71d91f708d4c1877d300ed4823e43fda8a924bd98b8f37c7
diff --git a/dev-embedded/arduino-builder/arduino-builder-1.3.25.ebuild b/dev-embedded/arduino-builder/arduino-builder-1.3.25.ebuild
index 0930e5240c01..fbf0e5e82916 100644
--- a/dev-embedded/arduino-builder/arduino-builder-1.3.25.ebuild
+++ b/dev-embedded/arduino-builder/arduino-builder-1.3.25.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -19,7 +19,7 @@ SRC_URI="https://github.com/arduino/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
${EGO_VENDOR_URI}"
LICENSE="GPL-2"
SLOT="0"
-KEYWORDS="~amd64 ~x86"
+KEYWORDS="~amd64 x86"
RDEPEND="sys-devel/crossdev
dev-embedded/avrdude
@@ -48,6 +48,7 @@ src_prepare() {
# path paths so that they point to system ctags and avrdude
eapply "${FILESDIR}/arduino-builder-1.3.25-platform-paths.patch"
+ eapply "${FILESDIR}/arduino-builder-1.3.25-skip-tests.patch"
default
}
diff --git a/dev-embedded/arduino-builder/arduino-builder-1.4.1.ebuild b/dev-embedded/arduino-builder/arduino-builder-1.4.1.ebuild
new file mode 100644
index 000000000000..078347f52348
--- /dev/null
+++ b/dev-embedded/arduino-builder/arduino-builder-1.4.1.ebuild
@@ -0,0 +1,71 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+EGO_PN="github.com/arduino/arduino-builder/..."
+
+EGO_VENDOR=(
+ "github.com/arduino/go-properties-map ad37f0cfeff29fadeabe6b2f7f852d8db1fb5c41"
+ "github.com/arduino/go-timeutils d1dd9e313b1bfede35fe0bbf46d612e16a50e04e"
+ "github.com/arduino/go-paths-helper 751652ddd9f0a98650e681673c2c73937002e889"
+ "github.com/fsnotify/fsnotify c2828203cd70a50dcccfb2761f8b1f8ceef9a8e9"
+ "github.com/go-errors/errors a41850380601eeb43f4350f7d17c6bbd8944aaf8"
+ "github.com/golang/protobuf aa810b61a9c79d51363740d207bb46cf8e620ed5"
+ "github.com/jstemmer/go-junit-report 833f8ea2b99d36d5f018698333834f3df200a0c2"
+ "github.com/stretchr/testify 1661650f989674e3e5bcdcb805536e5d31481526"
+ "google.golang.org/grpc 8dea3dc473e90c8179e519d91302d0597c0ca1d1 github.com/grpc/grpc-go"
+ "google.golang.org/genproto af9cb2a35e7f169ec875002c1829c9b315cddc04 github.com/google/go-genproto"
+)
+
+inherit golang-build golang-vcs-snapshot
+
+DESCRIPTION="A command line tool for compiling Arduino sketches"
+HOMEPAGE="https://github.com/arduino/arduino-builder"
+SRC_URI="https://github.com/arduino/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz
+ ${EGO_VENDOR_URI}"
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="sys-devel/crossdev
+ dev-embedded/avrdude
+ dev-embedded/arduino-ctags"
+
+DEPEND=">=dev-lang/go-1.9.2
+ dev-go/go-net
+ dev-go/go-text"
+
+PATCHES=(
+ "${FILESDIR}/arduino-builder-1.4.1-platform-paths.patch"
+ "${FILESDIR}/arduino-builder-1.4.1-skip-tests.patch"
+)
+
+src_unpack() {
+ golang-vcs-snapshot_src_unpack
+}
+
+src_install() {
+ # we unfortunately have to copy/paste the contents of golang-build_src_install() here because
+ # we *don't* want to call golang_install_pkgs() which installs all static libraries we've
+ # built. All we want is to install the final executable.
+
+ set -- env GOPATH="${WORKDIR}/${P}:$(get_golibdir_gopath)" \
+ go install -v -work -x ${EGO_BUILD_FLAGS} "${EGO_PN}"
+ echo "$@"
+ "$@" || die
+
+ # END OF COPY/PASTE
+
+ dobin bin/arduino-builder
+ # In addition to the binary, we also want to install these two files below. They are needed by
+ # the dev-embedded/arduino which copies those files in its "hardware" folder.
+ insinto "/usr/share/${PN}"
+ cd "src/github.com/arduino/arduino-builder/hardware" || die
+ doins "platform.txt"
+ doins "platform.keys.rewrite.txt"
+}
+
+pkg_postinst() {
+ [ ! -x /usr/bin/avr-gcc ] && ewarn "Missing avr-gcc; you need to crossdev -s4 avr"
+}
diff --git a/dev-embedded/arduino-builder/files/arduino-builder-1.3.25-skip-tests.patch b/dev-embedded/arduino-builder/files/arduino-builder-1.3.25-skip-tests.patch
new file mode 100644
index 000000000000..4ed170061c16
--- /dev/null
+++ b/dev-embedded/arduino-builder/files/arduino-builder-1.3.25-skip-tests.patch
@@ -0,0 +1,109 @@
+Skip tests that can't run on Gentoo because of the network sandbox
+diff --git a/src/arduino.cc/builder/test/hardware_loader_test.go b/src/arduino.cc/builder/test/hardware_loader_test.go
+index c9ea1d5..e7c68d2 100644
+--- a/src/arduino.cc/arduino-builder/src/arduino.cc/builder/test/hardware_loader_test.go
++++ b/src/arduino.cc/arduino-builder/src/arduino.cc/builder/test/hardware_loader_test.go
+@@ -41,6 +41,7 @@ import (
+ )
+
+ func TestLoadHardware(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_hardware", filepath.Join("..", "hardware"), "hardware"},
+ }
+@@ -85,6 +86,7 @@ func TestLoadHardware(t *testing.T) {
+ }
+
+ func TestLoadHardwareMixingUserHardwareFolder(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_hardware", filepath.Join("..", "hardware"), "hardware", "user_hardware"},
+ }
+@@ -155,6 +157,7 @@ func TestLoadHardwareMixingUserHardwareFolder(t *testing.T) {
+ }
+
+ func TestLoadHardwareWithBoardManagerFolderStructure(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_board_manager_stuff"},
+ }
+@@ -203,6 +206,7 @@ func TestLoadHardwareWithBoardManagerFolderStructure(t *testing.T) {
+ }
+
+ func TestLoadLotsOfHardware(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_board_manager_stuff", "downloaded_hardware", filepath.Join("..", "hardware"), "hardware", "user_hardware"},
+ }
+diff --git a/src/arduino.cc/builder/test/helper_tools_downloader.go b/src/arduino.cc/builder/test/helper_tools_downloader.go
+index 3642510..e6391b6 100644
+--- a/src/arduino.cc/arduino-builder/src/arduino.cc/builder/test/helper_tools_downloader.go
++++ b/src/arduino.cc/arduino-builder/src/arduino.cc/builder/test/helper_tools_downloader.go
+@@ -83,6 +83,7 @@ type Core struct {
+ }
+
+ func DownloadCoresAndToolsAndLibraries(t *testing.T) {
++ t.Skip("Gentoo skips tests requiring network");
+ cores := []Core{
+ Core{Maintainer: "arduino", Arch: "avr", Version: "1.6.10"},
+ Core{Maintainer: "arduino", Arch: "sam", Version: "1.6.7"},
+@@ -165,6 +166,7 @@ func patchFiles(t *testing.T) {
+ }
+
+ func download(t *testing.T, cores, boardsManagerCores, boardsManagerRedBearCores []Core, tools, toolsMultipleVersions, boardsManagerTools, boardsManagerRFduinoTools []Tool, libraries []Library) {
++ t.Skip("Gentoo skips tests requiring network");
+ allCoresDownloaded, err := allCoresAlreadyDownloadedAndUnpacked(HARDWARE_FOLDER, cores)
+ NoError(t, err)
+ if allCoresDownloaded &&
+diff --git a/src/arduino.cc/builder/test/target_board_resolver_test.go b/src/arduino.cc/builder/test/target_board_resolver_test.go
+index 274eb92..d6973e3 100644
+--- a/src/arduino.cc/arduino-builder/src/arduino.cc/builder/test/target_board_resolver_test.go
++++ b/src/arduino.cc/arduino-builder/src/arduino.cc/builder/test/target_board_resolver_test.go
+@@ -39,6 +39,7 @@ import (
+ )
+
+ func TestTargetBoardResolverUno(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:avr:uno",
+@@ -64,6 +65,7 @@ func TestTargetBoardResolverUno(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverDue(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:sam:arduino_due_x",
+@@ -89,6 +91,7 @@ func TestTargetBoardResolverDue(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverMega1280(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:avr:mega:cpu=atmega1280",
+@@ -115,6 +118,7 @@ func TestTargetBoardResolverMega1280(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverMega2560(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:avr:mega:cpu=atmega2560",
+@@ -141,6 +145,7 @@ func TestTargetBoardResolverMega2560(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverCustomYun(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware", "user_hardware"},
+ FQBN: "my_avr_platform:avr:custom_yun",
+@@ -167,6 +172,7 @@ func TestTargetBoardResolverCustomYun(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverCustomCore(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware", "user_hardware"},
+ FQBN: "watterott:avr:attiny841:core=spencekonde,info=info",
diff --git a/dev-embedded/arduino-builder/files/arduino-builder-1.4.1-platform-paths.patch b/dev-embedded/arduino-builder/files/arduino-builder-1.4.1-platform-paths.patch
new file mode 100644
index 000000000000..be1f2b5edda1
--- /dev/null
+++ b/dev-embedded/arduino-builder/files/arduino-builder-1.4.1-platform-paths.patch
@@ -0,0 +1,19 @@
+diff --git a/src/arduino.cc/builder/hardware/platform.txt b/src/arduino.cc/builder/hardware/platform.txt
+index ca8df1f..17ce03f 100644
+--- a/src/github.com/arduino/arduino-builder/hardware/platform.txt
++++ b/src/github.com/arduino/arduino-builder/hardware/platform.txt
+@@ -1,11 +1,11 @@
+ # ctags
+ # ------------------------------
+-tools.ctags.path={runtime.tools.ctags.path}
+-tools.ctags.cmd.path={path}/ctags
++tools.ctags.path=/usr/bin
++tools.ctags.cmd.path={path}/arduino-ctags
+ tools.ctags.pattern="{cmd.path}" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "{source_file}"
+
+ # additional entries
+-tools.avrdude.path={runtime.tools.avrdude.path}
++tools.avrdude.path=/usr/bin
+
+ preproc.macros.flags=-w -x c++ -E -CC
+ #preproc.macros.compatibility_flags={build.mbed_api_include} {build.nRF51822_api_include} {build.ble_api_include} {compiler.libsam.c.flags} {compiler.arm.cmsis.path} {build.variant_system_include}
diff --git a/dev-embedded/arduino-builder/files/arduino-builder-1.4.1-skip-tests.patch b/dev-embedded/arduino-builder/files/arduino-builder-1.4.1-skip-tests.patch
new file mode 100644
index 000000000000..f66e829e4b01
--- /dev/null
+++ b/dev-embedded/arduino-builder/files/arduino-builder-1.4.1-skip-tests.patch
@@ -0,0 +1,129 @@
+Skip tests that can't run on Gentoo because of the network sandbox
+diff --git a/test/hardware_loader_test.go b/test/hardware_loader_test.go
+index 147396e..da6c8ef 100644
+--- a/src/github.com/arduino/arduino-builder/test/hardware_loader_test.go
++++ b/src/github.com/arduino/arduino-builder/test/hardware_loader_test.go
+@@ -41,6 +41,7 @@ import (
+ )
+
+ func TestLoadHardware(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_hardware", filepath.Join("..", "hardware"), "hardware"},
+ }
+@@ -85,6 +86,7 @@ func TestLoadHardware(t *testing.T) {
+ }
+
+ func TestLoadHardwareMixingUserHardwareFolder(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_hardware", filepath.Join("..", "hardware"), "hardware", "user_hardware"},
+ }
+@@ -155,6 +157,7 @@ func TestLoadHardwareMixingUserHardwareFolder(t *testing.T) {
+ }
+
+ func TestLoadHardwareWithBoardManagerFolderStructure(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_board_manager_stuff"},
+ }
+@@ -203,6 +206,7 @@ func TestLoadHardwareWithBoardManagerFolderStructure(t *testing.T) {
+ }
+
+ func TestLoadLotsOfHardware(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{"downloaded_board_manager_stuff", "downloaded_hardware", filepath.Join("..", "hardware"), "hardware", "user_hardware"},
+ }
+diff --git a/test/helper_tools_downloader.go b/test/helper_tools_downloader.go
+index 49aa847..ba77a57 100644
+--- a/src/github.com/arduino/arduino-builder/test/helper_tools_downloader.go
++++ b/src/github.com/arduino/arduino-builder/test/helper_tools_downloader.go
+@@ -83,6 +83,7 @@ type Core struct {
+ }
+
+ func DownloadCoresAndToolsAndLibraries(t *testing.T) {
++ t.Skip("Gentoo skips tests requiring network");
+ cores := []Core{
+ Core{Maintainer: "arduino", Arch: "avr", Version: "1.6.10"},
+ Core{Maintainer: "arduino", Arch: "sam", Version: "1.6.7"},
+@@ -177,6 +178,7 @@ func patchFiles(t *testing.T) {
+ }
+
+ func download(t *testing.T, cores, boardsManagerCores, boardsManagerRedBearCores []Core, tools, toolsMultipleVersions, boardsManagerTools, boardsManagerRFduinoTools []Tool, libraries []Library) {
++ t.Skip("Gentoo skips tests requiring network");
+ allCoresDownloaded, err := allCoresAlreadyDownloadedAndUnpacked(HARDWARE_FOLDER, cores)
+ NoError(t, err)
+ if allCoresDownloaded &&
+diff --git a/test/target_board_resolver_test.go b/test/target_board_resolver_test.go
+index 49e0abe..7a50fe1 100644
+--- a/src/github.com/arduino/arduino-builder/test/target_board_resolver_test.go
++++ b/src/github.com/arduino/arduino-builder/test/target_board_resolver_test.go
+@@ -39,6 +39,7 @@ import (
+ )
+
+ func TestTargetBoardResolverUno(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:avr:uno",
+@@ -64,6 +65,7 @@ func TestTargetBoardResolverUno(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverDue(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:sam:arduino_due_x",
+@@ -89,6 +91,7 @@ func TestTargetBoardResolverDue(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverMega1280(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:avr:mega:cpu=atmega1280",
+@@ -115,6 +118,7 @@ func TestTargetBoardResolverMega1280(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverMega2560(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware"},
+ FQBN: "arduino:avr:mega:cpu=atmega2560",
+@@ -141,6 +145,7 @@ func TestTargetBoardResolverMega2560(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverCustomYun(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware", "user_hardware"},
+ FQBN: "my_avr_platform:avr:custom_yun",
+@@ -167,6 +172,7 @@ func TestTargetBoardResolverCustomYun(t *testing.T) {
+ }
+
+ func TestTargetBoardResolverCustomCore(t *testing.T) {
++ t.Skip("Can't run on Gentoo")
+ ctx := &types.Context{
+ HardwareFolders: []string{filepath.Join("..", "hardware"), "hardware", "downloaded_hardware", "user_hardware"},
+ FQBN: "watterott:avr:attiny841:core=spencekonde,info=info",
+diff --git a/test/wipeout_build_path_if_build_options_changed_test.go b/test/wipeout_build_path_if_build_options_changed_test.go
+index 51bfe80..8501fb6 100644
+--- a/src/github.com/arduino/arduino-builder/test/wipeout_build_path_if_build_options_changed_test.go
++++ b/src/github.com/arduino/arduino-builder/test/wipeout_build_path_if_build_options_changed_test.go
+@@ -42,6 +42,7 @@ import (
+ )
+
+ func TestWipeoutBuildPathIfBuildOptionsChanged(t *testing.T) {
++ t.Skip("Can't run in Gentoo")
+ ctx := &types.Context{}
+
+ buildPath := SetupBuildPath(t, ctx)
+@@ -73,6 +74,7 @@ func TestWipeoutBuildPathIfBuildOptionsChanged(t *testing.T) {
+ }
+
+ func TestWipeoutBuildPathIfBuildOptionsChangedNoPreviousBuildOptions(t *testing.T) {
++ t.Skip("Can't run in Gentoo")
+ ctx := &types.Context{}
+
+ buildPath := SetupBuildPath(t, ctx)