[MacPorts] #33906: Request MythTV port
MacPorts
noreply at macports.org
Thu Apr 5 08:02:01 PDT 2012
#33906: Request MythTV port
----------------------------------+-----------------------------------------
Reporter: ctreleaven@… | Owner: macports-tickets@…
Type: request | Status: new
Priority: Normal | Milestone:
Component: ports | Version: 2.0.4
Keywords: | Port:
----------------------------------+-----------------------------------------
Comment(by ctreleaven@…):
= More details =
== Why ==
For a full-featured backend on OS X. MythTV is developed 'Linux-first'.
The current OS X packaging method puts the backend and all required
libraries, etc, in an .app bundle. (Even though the backend .app bundle
is *not* a double-clickable Mac application.) Features, like metadata
lookup, don't work because they depend on the Python bindings. These
bindings, Perl and Python, aren't installed in a usable fashion.
Also, a MacPorts installation would be able to automatically create a
userid to run the backend, install the launchd plist for automatic running
and otherwise simplify the install process.
Status
Attached Portfile is broken. It fails at the build phase with "ld: -L
must be immediately followed by a directory path (no space)". Unable to
determine why configure creates these illegal blank -L parameters. Tried
to do mass search and replace to eliminate them but qmake is also run
during the build phase and creates more Makefiles with the same problem.
Was able to patch manually once the resulting binaries did at least
display a help message.
== To do ==
I believe mythtv/configure is probably looking in the wrong place (under
MacPorts) for some expected library and thus creating the blank -L path.
If this can be fixed, then the port should be extended as follows.
== Ideally ==
Ports - There should be three ports in short term: myth25, myth25-fixes,
and myth-devel. Myth25 should build the tagged MythTV 0.25 release
(expected 9 April 2012). It would be updated to 0.25.1/0.25.2 when they
are released. (Major releases happen slowly. Myth has taken 5+ years to
go from 0.21 to 0.25.) Several additional libraries will be required as
dependents in order to activate the Perl and Python bindings. Output from
configure lists the currently missing requirements.
A myth25-fixes port would build off the git fixes/0.25 branch (when
created, shortly after 0.25 release). The myth project regularly fixes
bugs and applies them to the fixes branches. Users are strongly
encouraged to use up-to-date versions of the fixes branch. Note that this
would involve using a git.fetch which is currently very inefficient as it
clones the entire git repository each time.
A variant should be developed to install mysql5-server. If the user wants
to run the backend, the most common configuration is to have the database
server on the same machine. A further variant would be to install
MythWeb.
Note--myth backends and frontends must be on the same major release. IE
all 0.24.x or 0.25.x. The mysql database (mythconverg) schema virtually
always changes during a major release and older clients are refused access
to the newer database. Myth provides provides automatic schema upgrades
but the only way to revert is to drop the database and restore from a pre-
upgrade backup.
Finally, a myth-devel port may also be desirable. It would also need to
pull from git. Note that pre-requisite libraries have been added and
dropped in the last couple of releases so the dependants may vary quite a
bit from myth25 over time.
Another issue to think about is mythtv's plug-ins. In 0.25, the following
plugins may make sense for Mac users: MythGallery, MythMusic, MythNews,
MythWeather and maybe MythNetvision (which also relies on the Python
bindings). I think these would be additional ports (myth25-plugins,
myth25-fixes-plugins, myth-devel-plugins) that depend on the corresponding
myth core ports. MythWeather especially requires several additional Perl
dependencies.
== Resources ==
There is an OS X MythTV buildbot that regularly tests the build of the
master branch, currently Snow Leopard. Right now (April 2012), the
buildbot provides a very close parallel to what we want to achieve with
MacPorts. See:
http://code.mythtv.org/buildbot/builders/master-osx-snow-leopard
Buildbot notable differences: building against Qt 4.6.3 v. our 4.7.4.
Buildbot configure output indicates "# Video Output Support: Quartz video
- yes". Unable to determine why Quartz video is not enabled under
MacPorts.
Craig Treleaven
--
Ticket URL: <https://trac.macports.org/ticket/33906#comment:1>
MacPorts <http://www.macports.org/>
Ports system for Mac OS
More information about the macports-tickets
mailing list