Bug 213529 - [NEW PORT] devel/arduino-tools: Formalize tools Arduino 1.6 depends on, create proper tools-builder/ structure
Summary: [NEW PORT] devel/arduino-tools: Formalize tools Arduino 1.6 depends on, creat...
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Boris Samorodov
URL:
Keywords:
Depends on: 213466
Blocks:
  Show dependency treegraph
 
Reported: 2016-10-16 03:47 UTC by Kyle Evans
Modified: 2016-10-19 20:54 UTC (History)
1 user (show)

See Also:


Attachments
shar(1) archive of devel/arduino-tools (4.23 KB, application/x-shar)
2016-10-16 22:42 UTC, Kyle Evans
no flags Details
Updated shar(1) archive of devel/arduino-tools (3.58 KB, text/plain)
2016-10-17 20:09 UTC, Kyle Evans
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kyle Evans freebsd_committer freebsd_triage 2016-10-16 03:47:20 UTC
Whoo! This should be the last step. devel/arduino-tools formally requires the tools that Arduino 1.6 depends on, and creates the proper file structure for a tools/ (tools-builder/, in reality) directory that uses the tools required (with exception to devel/arduino-ctags, which creates its own tools-builder/ path properly).

This is ideal over having devel/arduino16 do all of this because this bit could also be used independently by devel/arduino-builder (it's not required, though!) to build Arduino projects without the IDE. In fact, I already have plans to do this on a RasPi with no X/Window Manager that I'd rather not install Java on.

Things of note:

1.) This is mostly a metaport, but not enough of a metaport to USES= metaport. It still installs files (well, symlinks), so NO_INSTALL and NO_MTREE are not actually appropriate.

2.) This might be sketchy, so feel free to reject/request revision: tools-builder/*/.pkg files are created with the contents "Used for dependency management -- please do not delete this file" because I can't force a RUN_DEPENDS on the path existing, but that's really all devel/arduino16 and devel/arduino-builder needs to autodetect installation locations. devel/arduino16 will formally require these ".pkg" files to exist so that pkg(8) will actually register the dependency on devel/arduino-tools.
Comment 1 Boris Samorodov freebsd_committer freebsd_triage 2016-10-16 19:11:46 UTC
Take.
Comment 2 Boris Samorodov freebsd_committer freebsd_triage 2016-10-16 22:06:18 UTC
Hey, seems there is no attachment. ;-)
Comment 3 Kyle Evans freebsd_committer freebsd_triage 2016-10-16 22:42:35 UTC
Created attachment 175839 [details]
shar(1) archive of devel/arduino-tools

Well, this time it's just a shame on me. =)
Comment 4 Kyle Evans freebsd_committer freebsd_triage 2016-10-17 20:09:16 UTC
Created attachment 175877 [details]
Updated shar(1) archive of devel/arduino-tools

This is a better version that gets around the .pkg file mess based on me learning more about DEPENDS stuff. =P
Comment 5 commit-hook freebsd_committer freebsd_triage 2016-10-19 20:53:22 UTC
A commit references this bug:

Author: bsam
Date: Wed Oct 19 20:53:14 UTC 2016
New revision: 424290
URL: https://svnweb.freebsd.org/changeset/ports/424290

Log:
  arduino-tools is mostly a meta-port to ensure installation of the tools
  required by Arduino 1.6. It does some installation to properly structure
  the arduino/tools-builder/ structure in such a way that we may use
  all of the tools available from ports while not requiring modifications
  to devel/arduino-builder to auto-detect the tools.

  PR:		213529
  Submitted by:	bsdports@kyle-evans.net

Changes:
  head/devel/Makefile
  head/devel/arduino-tools/
  head/devel/arduino-tools/Makefile
  head/devel/arduino-tools/pkg-descr
  head/devel/arduino-tools/pkg-plist
Comment 6 Boris Samorodov freebsd_committer freebsd_triage 2016-10-19 20:54:29 UTC
Committed, thanks!