Changeset 98186


Ignore:
Timestamp:
Sep 27, 2012, 10:02:07 PM (12 years ago)
Author:
pixilla@…
Message:

multimedia/mythtv-core.25:

  • Update to version 0.25.2-Fixes-20120918.
  • Blacklist llvm-gcc-4.2, macports-llvm-gcc-4.2, macports-clang-3.1, dragonegg-3.0 and dragonegg-3.1. Closes 35934.
  • Specify libpng and p5.12-datemanip dependencies.
  • Handle libdvdnav build conflict.
  • logrotate to manage myth log files.
  • Fix patching of internet content scripts.
  • Unambiguous qmake.
  • Respect distcc and ccache settings.
  • Fix directory permissions.
  • Force working themepainter for mythtv-setup.
Location:
trunk/dports/multimedia/mythtv-core.25
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/dports/multimedia/mythtv-core.25/Portfile

    r98178 r98186  
    55PortGroup           github 1.0
    66PortGroup           qt4 1.0
    7 
    8 set shorthash       46cab935
    9 # set fullhash      46cab93562429cd19029402a2387f63a72aeb898
     7PortGroup           conflicts_build 1.0
     8
     9set shorthash       099533da
     10# set fullhash      099533dacc0faef47aadfbe7b45ab93ff57f5125
    1011set majorversion    .25
    1112set minorversion    .2
    12 github.setup        MythTV mythtv ${shorthash} v
     13github.setup        MythTV mythtv ${shorthash}
    1314name                mythtv-core${majorversion}
    14 version             0${majorversion}${minorversion}-Fixes-20120731
    15 revision            1
     15version             0${majorversion}${minorversion}-Fixes-20120918
    1616categories          multimedia
    1717platforms           darwin
     
    3030
    3131homepage            http://www.mythtv.org/
    32 checksums           rmd160  b8c21681d02085f6b541e307a9e4c2a7ee0fe6e9 \
    33                     sha256  a829b7abc0c3860700427b3a73be44ac0c8a0b3d10d56992c7214f59a7b0b61d
     32checksums           rmd160  b68e1bbe4364dc2d4fbba49c412aee644455053f \
     33                    sha256  79cb7a1c2242c8b0c1a9e349117b85b58a7205e0a3ef1e49b2fa1a5ef72b21c6
    3434
    3535set nick            mythtv
     
    5858                    port:x264 \
    5959                    port:qt4-mac-${mysqlver}-plugin \
     60                    port:libpng \
    6061                    port:${pymodver}-mysql \
    6162                    port:${pymodver}-lxml \
     
    6566                    port:${perlmodver}-lwp-useragent-determined \
    6667                    port:${perlmodver}-io-socket-inet6 \
     68                    port:${perlmodver}-datemanip \
    6769                    port:${perlmodver}-net-upnp
    6870
    69 depends_build       port:yasm
     71depends_build       port:yasm  port:pkgconfig
     72
     73conflicts_build     libdvdnav
     74
     75depends_run         port:logrotate
    7076
    7177patchfiles          patch-bindings-python-mythtv-utility.diff \
     
    7379                    patch-util-osx-objC.diff
    7480
    75 # http://trac.macports.org/ticket/35934
    76 compiler.blacklist macports-clang-3.1 llvm-gcc-4.2
     81# Run time failures with XCode 4.4.x and 4.5.0
     82# See https://trac.macports.org/ticket/35934
     83compiler.blacklist  llvm-gcc-4.2 macports-llvm-gcc-4.2 macports-clang-3.1 \
     84                    dragonegg-3.0 dragonegg-3.1
    7785compiler.fallback-append macports-clang-3.0
    7886if {[vercmp $xcodeversion 4.4] >= 0} {
    79     compiler.blacklist-append clang
    80 }
    81 
    82 # TODO: This should be done by base
    83 # https://trac.macports.org/ticket/32542
    84 if {${configure.compiler} == "macports-clang-3.0"} {
    85     depends_build-append port:macports-clang-3.0
     87    depends_build-append port:clang-3.0
     88    configure.compiler=macports-clang-3.0
    8689    depends_skip_archcheck-append macports-clang-3.0
    8790}
     
    9396    }
    9497    copy ${filespath}/${plistfile} ${worksrcpath}/macports/${plistfile}
     98    copy ${filespath}/logrotate.mythtv ${worksrcpath}/macports/logrotate.mythtv
    9599}
    96100
     
    98102    set sedPath ${worksrcpath}/mythtv/
    99103    ui_info "Make Myth utils use MacPorts Perl"
     104    reinplace -locale C "s|#!/usr/bin/env perl|#!${perlbin}|" \
     105        ${sedPath}programs/scripts/internetcontent/topdocumentaryfilm.pl  \
     106        ${sedPath}programs/scripts/internetcontent/twit.tv.pl
     107   
    100108    reinplace -locale C "s|#!/usr/bin/perl|#!${perlbin}|" \
    101109        ${sedPath}bindings/perl/Makefile.PL  \
    102110        ${sedPath}bindings/perl/MythTV.pm  \
    103         ${sedPath}programs/scripts/internetcontent/topdocumentaryfilm.pl  \
    104         ${sedPath}programs/scripts/internetcontent/twit.tv.pl  \
    105111        ${sedPath}contrib/maintenance/optimize_mythdb.pl  \
    106112        ${sedPath}contrib/user_jobs/mythlink.pl  \
     
    130136    reinplace -locale C "s|@MYTHTVLOGDIR@|${mythtvlogdir}|" ${worksrcpath}/macports/${plistfile}
    131137    reinplace -locale C "s|@MYTHTVPIDFILE@|${mythtvpidfile}|" ${worksrcpath}/macports/${plistfile}
     138    reinplace -locale C "s|@MYTHTVLOGDIR@|${mythtvlogdir}|g" ${worksrcpath}/macports/logrotate.mythtv
    132139    reinplace -locale C "s|xxxyyyzzz|${mythtvpidfile}|" ${worksrcpath}/mythtv/configure
    133140}
     
    138145                    --cc=${configure.cc} \
    139146                    --cxx=${configure.cxx} \
     147                    --qmake=${qt_qmake_cmd} \
    140148                    --extra-ldflags='-F/System/Library/Frameworks' \
    141149                    --python=${pythonbin} \
     
    145153                    --enable-libmp3lame --enable-libx264
    146154
     155if {${configure.ccache} != "yes"} {
     156    configure.args-append --disable-ccache
     157}
     158
     159if {${configure.distcc} != "yes"} {
     160    configure.args-append --disable-distcc
     161}
     162
    147163build.dir           ${worksrcpath}/mythtv
    148164
     
    161177
    162178post-destroot {
     179# make some directories myth will need
     180    xinstall -d -m 666 ${destroot}${mythtvhomedir}
     181    xinstall -d -m 666 ${destroot}${mythtvlogdir}
     182    xinstall -d -m 666 ${destroot}${mythtvlogdir}/old
     183    xinstall -d -m 666 ${destroot}${prefix}/etc/logrotate.d
     184    xinstall -d -m 644 ${destroot}${mythtvrundir}
     185
     186    destroot.keepdirs \
     187        ${destroot}${mythtvhomedir} \
     188        ${destroot}${mythtvlogdir} \
     189        ${destroot}${mythtvlogdir}/old \
     190        ${destroot}${mythtvrundir}
     191
     192# install logrotate.mythtv
     193    xinstall -m 400 ${worksrcpath}/macports/logrotate.mythtv ${destroot}${prefix}/etc/logrotate.d/
     194
    163195# install the launchd plist for the backend
    164196    ui_info "Installing startupitem/launchd plist..."
     
    192224    copy -force ${configure.dir}/programs/mythfrontend/mythfrontend.icns ${destroot}${applications_dir}/MythTV/Myth_Frontend.app/Contents/Resources/applet.icns
    193225    copy -force ${configure.dir}/programs/mythfrontend/mythfrontend.icns ${destroot}${applications_dir}/MythTV/Myth_Stop_Start.app/Contents/Resources/applet.icns
    194 
    195 # make other directories myth will need
    196     xinstall -d -m 755 ${destroot}${mythtvhomedir}
    197     xinstall -d -m 755 ${destroot}${mythtvlogdir}
    198     xinstall -d -m 755 ${destroot}${mythtvrundir}
    199 
    200     destroot.keepdirs \
    201         ${destroot}${mythtvhomedir} \
    202         ${destroot}${mythtvlogdir} \
    203         ${destroot}${mythtvrundir}
    204226
    205227# Fix up library entries in dylibs and executables ...
     
    291313
    292314post-activate {
    293 
     315        # delete leftover file, if any
     316        if [file exists /Library/LaunchDaemons/${plistfile}] {
     317                file delete -force /Library/LaunchDaemons/${plistfile}
     318        }
    294319    # The startupitem.install keyword does not exist in MacPorts < 2.1.
    295320    if {![info exists startupitem.install]} {
  • trunk/dports/multimedia/mythtv-core.25/files/Myth_Setup.applescript

    r96917 r98186  
    44Myth Version: 0.25.0
    55Modified: 2012May17
     6          2012Sep08 Force working themepainter
    67
    78*)
    89property MSUappPath : "@PREFIX@/bin/mythtv-setup"
    9 property MSUlogArg : "--logpath @MYTHTVLOGDIR@"
     10property MSUlogArg : "-O ThemePainter=qt --logpath @MYTHTVLOGDIR@"
    1011property MSUlogLevel : "info" -- single string
    1112property MSUverboseLevel : {"general"} -- a list, can be multiple strings
  • trunk/dports/multimedia/mythtv-core.25/files/Myth_Stop_Start.applescript

    r96917 r98186  
    22For use with MacPorts install of Myth
    33Author:  Craig Treleaven, ctreleaven at cogeco.ca
    4 Version: 0.25.1
    5 Modified: 2012Jul11
     4Version: 0.25.2
     5Modified: 2012Jul11 - new
     6           2012Sep21 - log rotation
    67
    78NB - if mbe is running, we only stop it if it was launched under launchd
    89*)
    910set mysqld to " not running on this machine.  Is it on another machine on your network?"
     11set rotatorStatus to ""
     12set logrotButton to ""
    1013set mythbackend to ""
    1114set mythbackendButton to "Donno"
    12 --set mythmaintenance to " stopped."
    1315set newline to "
    1416"
     
    1719
    1820repeat until (myResult contains "Close")
     21        if (do shell script "sudo launchctl list" with administrator privileges) contains ".logrotate" then
     22                set rotatorStatus to "runs daily"
     23                set logrotButton to "Disable log rotation"
     24        else
     25                set rotatorStatus to "is not scheduled"
     26                set logrotButton to "Schedule log rotation"
     27        end if
     28       
    1929        set processes to do shell script "ps -Ac"
    2030        if the processes contains "mysqld" then
     
    3545        end if
    3646       
    37         set myResult to display dialog "Simple tool to start and stop some Myth's background processes" & newline & newline & "Currently... " & ¬
    38                 newline & newline & indent & "MySQL is" & mysqld & ¬
    39                 newline & indent & "MythBackend is" & mythbackend & newline ¬
    40                 with icon note with title ¬
    41                 "Stop/Start Myth-related programs" buttons {mythbackendButton, "Close"} ¬
     47        set myResult to display dialog newline & "Simple tool to start and stop Myth's background processes" & Â
     48                newline & newline & newline & "Currently... " & Â
     49                newline & newline & indent & "Log rotation " & rotatorStatus & Â
     50                newline & newline & indent & "MySQL is" & mysqld & Â
     51                newline & newline & indent & "MythBackend is" & mythbackend & newline & newline Â
     52                with icon note with title Â
     53                "Stop/Start Myth-related programs" buttons {logrotButton, mythbackendButton, "Close"} Â
    4254                default button "Close" -- cancel button "Close"
    4355        set myResult to button returned of myResult
     
    5264                end if
    5365                set myResult to "Close"
     66        else if myResult contains "Schedule log rotation" then
     67                --check for existence of
     68                if (FileExists("@PREFIX@/etc/logrotate.conf") and Â
     69                        FileExists("@PREFIX@/etc/logrotate.d/logrotate.mythtv")) then
     70                        do shell script "sudo launchctl load -w /Library/LaunchDaemons/org.macports.logrotate.plist" with administrator privileges
     71                else
     72                        display dialog "logrotate is not configured.  Please see http://www.mythtv.org/wiki/MacPorts for instructions." buttons {"Close"}
     73                        set myResult to "Close"
     74                end if
     75        else if myResult contains "Disable log rotation" then
     76                do shell script "sudo launchctl unload -w /Library/LaunchDaemons/org.macports.logrotate.plist" with administrator privileges
    5477        end if
    5578end repeat
     79
     80on FileExists(theFile) -- (String) as Boolean
     81        tell application "System Events" to return (exists file theFile)
     82end FileExists
Note: See TracChangeset for help on using the changeset viewer.