[MacPorts] #45364: faustlive-devel: new port
MacPorts
noreply at macports.org
Mon Oct 13 20:08:24 PDT 2014
#45364: faustlive-devel: new port
------------------------------+--------------------------
Reporter: aggraef@… | Owner: ryandesign@…
Type: submission | Status: assigned
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords: haspatch
Port: faustlive-devel |
------------------------------+--------------------------
Comment (by aggraef@…):
Replying to [comment:8 ryandesign@…]:
> You've declared faust2-devel as a build dependency, and I see that the
build system copies faust2-devel's sound2faust program into
FaustLive.app's Contents/MacOS directory. This means every time
faust2-devel is updated, we have to have everyone rebuild faustlive-devel
as well. To avoid that, I would rather have a sound2faust symlink in the
Contents/MacOS directory and make faust2-devel a library dependency. Any
objections to that?
No, I wouldn't do that. The idea of FaustLive (and one of its major design
goals) is precisely that it is self-contained and *can* be run
independently from the full faust2 compiler toolchain. That's why the port
pushes faust2-devel into the build dependencies, includes its own
sound2faust executable (which doesn't depend on any of the Faust
libraries, only on libsndfile and friends) and links against libfaust and
the other Faust libraries statically. So, in principle, once the package
has been built and installed, it can be run alongside any Faust version or
without any Faust installation at all.
Consequently, there's no need to rebuild faustlive-devel if faust2-devel
changes, although faust2-devel is needed to build faustlive-devel. In fact
it's the opposite: A specific git revision of faustlive usually depends on
a specific faust2 git revision (typically the one that's current at the
time the faustlive snapshot is taken).
So we should really make the specific MP version of faust2-devel needed to
build a given MP version of faustlive-devel a build dependency of that
version. But I'm not sure how to do that in a MP Portfile; the MP guide
doesn't mention a syntax of `port:` dependency for requiring a specific
version of the dependency. Unfortunately libfaust.a from faust2 doesn't
carry a version number right now, so a `lib:` dependency doesn't help
either.
I hope that I explained that well enough. The bottom line is that
faust2-devel intentionally is a build time dependency only and that, if
possible, a specific version of faustlive-devel should be made to depend
on a specific faust2-devel version in its build dependencies.
--
Ticket URL: <https://trac.macports.org/ticket/45364#comment:9>
MacPorts <http://www.macports.org/>
Ports system for OS X
More information about the macports-tickets
mailing list