[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