Difference between revisions of "Mythplugins-svn-rpmbuild.spec"

From MythTV Official Wiki
Redirect page
Jump to: navigation, search
Line 1: Line 1:
This spec is for building MythPlugin RPM packages from a subversion checkout.
+
#REDIRECT [[Mythplugins-svn-rpmbuild.spec]]
 
+
It works with both modular (FC5 and later) and non-modular versions of X.
+
Please read the documentation at the top of the file before using it.
+
 
+
<pre>
+
#
+
# Specfile for building MythTV RPMs from a subversion checkout.
+
#
+
# by:  Chris Petersen <rpm@forevermore.net>
+
#
+
#  Modified/Extended from the great (non-svn based) work of:
+
#    David Bussenschutt <buzz@oska.com>
+
#    Axel Thimm <Axel.Thimm@ATrpms.net>
+
#    and others; see changelog at bottom for details.
+
#
+
# The latest version of this file can be found at:
+
#
+
#    http://www.mythtv.org/wiki/index.php/Mythplugins-svn-rpmbuild.spec
+
#
+
# Note:
+
#
+
#    This spec relies upon several files included in the ATRPMS mythplugins
+
#    src.rpm file.  Please install it into your build tree before trying to
+
#    build anything with this spec.
+
#
+
# Explanation of options:
+
#
+
# --with(out) modular_x    Override the default detection code for modular X.org
+
#
+
# # All plugins get built by default, but you can disable them as you wish:
+
#
+
# --without mytharchive
+
# --without mythbrowser
+
# --without mythcontrols
+
# --without mythflix
+
# --without mythgallery
+
# --without mythgame
+
# --without mythmovies
+
# --without mythmusic
+
# --without mythnews
+
# --without mythphone
+
# --without mythvideo
+
# --without mythweather
+
#
+
# The following options are disabled by default.  Use these options to enable:
+
#
+
# --with festival          Enable festival/festvox support in MythPhone
+
# --with transcode          Enable transcode support in MythVideo
+
#
+
# The following options are enabled by default.  Use these options to disable:
+
#
+
# --without opengl          Disable OpenGL support in MythMusic and MythGallery
+
# --without exif            Disable EXIF support in MythGallery
+
# --without aac            Enable AAC support in MythMusic
+
# --without fftw            Disable FFTW support in MythMusic
+
# --without libvisual      Disable libvisual plugin support in MythMusic
+
# --without sdl            Disable SDL support in MythMusic
+
# --without vcd            Enable VideoCD support in MythVideo
+
#
+
 
+
# Edit the following path to point to where you keep your SVN checkout.  Among
+
# others, it will contain both the mythtv/ and mythplugins/ subdirectories.
+
%define _svn_root '/usr/src/mythtv-svn/'
+
 
+
################################################################################
+
# The only thing below here that you should feel the need to edit is the
+
# Version tag, which should be set to the *next* MythTV release.
+
################################################################################
+
 
+
# Are we running modular Xorg?  Default is to auto-detect FC5 or later, but you
+
# can also specify --with modular_x or --without modular_x to override.
+
%define _modular_x %(if [ "%{?_with_modular_x}" ]; then echo 1; elif [ "%{?_without_modular_x}" ]; then echo 0; elif [ `rpm -q --queryformat='%{VERSION}' fedora-release` -ge 5 ]; then echo 1; else echo 0; fi)
+
 
+
# This script verifies that there is a mythtv SVN checkout at %{_svn_root} and
+
# if there isn't one, performs an anonymous checkout.  If the checkout already
+
# exists, it grabs the latest update.  The return value is the current SVN
+
# revision or a blank string (which will be checked below for errors).
+
%define _svn_rev %( if [ ! -d '%{_svn_root}/.svn' ] ; then REL=`svn co http://svn.mythtv.org/svn/trunk/ '%{_svn_root}'` ; else REL=`svn update '%{_svn_root}'`; fi; if [ $? != 0 ]; then echo '' ; else echo "$REL" | grep -i revision | sed -e 's/[^0-9]\\+//g'; fi )
+
 
+
#
+
# Basic descriptive tags for this package:
+
#
+
Name:          mythplugins
+
Version:        0.21
+
Release:        0.%{_svn_rev}.svn
+
Summary:        Main plugins to accompany the MythTV DVR.
+
 
+
URL:            http://www.mythtv.org/
+
License:        GPL
+
Group:          Applications/Multimedia
+
 
+
# The following options are enabled by default.  Use --without to disable them
+
# OpenGL for MythMusic and MythGallery
+
%define with_opengl        %{?_without_opengl:  0} %{!?_without_opengl:  1}
+
 
+
# All plugins get built by default, but you can disable them as you wish
+
%define with_mytharchive    %{?_without_mytharchive:    0} %{!?_without_mytharchive:    1}
+
%define with_mythbrowser    %{?_without_mythbrowser:    0} %{!?_without_mythbrowser:    1}
+
%define with_mythcontrols  %{?_without_mythcontrols:  0} %{!?_without_mythcontrols:    1}
+
%define with_mythflix      %{?_without_mythflix:      0} %{!?_without_mythflix:        1}
+
%define with_mythgallery    %{?_without_mythgallery:    0} %{!?_without_mythgallery:    1}
+
%define with_mythgame      %{?_without_mythgame:      0} %{!?_without_mythgame:        1}
+
%define with_mythmovies    %{?_without_mythmovies:    0} %{!?_without_mythmovies:      1}
+
%define with_mythmusic      %{?_without_mythmusic:      0} %{!?_without_mythmusic:      1}
+
%define with_mythnews      %{?_without_mythnews:      0} %{!?_without_mythnews:        1}
+
%define with_mythphone      %{?_without_mythphone:      0} %{!?_without_mythphone:      1}
+
%define with_mythvideo      %{?_without_mythvideo:      0} %{!?_without_mythvideo:      1}
+
%define with_mythweather    %{?_without_mythweather:    0} %{!?_without_mythweather:    1}
+
%define with_mythzoneminder %{?_without_mythzoneminder: 0} %{!?_without_mythzoneminder:  1}
+
 
+
# MythGallery
+
%define with_exif          %{?_without_exif:        0} %{!?_without_exif:        1}
+
# MythMusic
+
%define with_fftw          %{?_without_fftw:        0} %{!?_without_fftw:        1}
+
%define with_sdl            %{?_without_sdl:          0} %{!?_without_sdl:          1}
+
%define with_aac            %{?_without_aac:          0} %{!?_without_aac:          1}
+
%define with_libvisual      %{?_without_libvisual:    0} %{!?_without_libvisual:    1}
+
# MythVideo
+
%define with_vcd            %{?_without_vcd:          0} %{!?_without_vcd:          1}
+
 
+
# The following options are disabled by default.  Use --with to enable them
+
 
+
# MythPhone
+
%define with_festival      %{?_with_festival:        1} %{!?_with_festival:        0}
+
# MythVideo
+
%define with_transcode      %{?_with_transcode:      1} %{!?_with_transcode:      0}
+
 
+
################################################################################
+
 
+
# This directory isn't defined in rpm's own macro library
+
%define _varlibdir    %{_localstatedir}/lib
+
 
+
################################################################################
+
 
+
Source0:        http://www.mythtv.org/mc/%{name}-%{version}.tar.bz2
+
 
+
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
+
 
+
################################################################################
+
 
+
# Global build requirements
+
BuildRequires:  gcc-c++
+
BuildRequires:  qt-devel >= 3
+
 
+
# Yeah. we do need subversion, don't we...
+
BuildRequires:  subversion
+
 
+
# The modular version of Xorg requires a different set of build packages
+
%if %{_modular_x}
+
BuildRequires:  mesa-libGLU-devel
+
BuildRequires:  libXv-devel
+
BuildRequires:  libXxf86vm-devel
+
BuildRequires:  libXmu-devel
+
%else
+
BuildRequires:  XFree86-devel
+
%endif
+
 
+
%if %{with_opengl}
+
BuildRequires:  /usr/include/GL/gl.h
+
%endif
+
 
+
%if %{with_mythbrowser}
+
Requires:      mythbrowser      >= %{version}
+
BuildRequires:  libmyth-devel    >= %{version}
+
BuildRequires:  kdelibs-devel
+
%endif
+
 
+
%if %{with_transcode}
+
BuildRequires:  transcode        >= 0.6.8
+
%endif
+
 
+
%if %{with_mythgallery}
+
Requires:      mythgallery      >= %{version}
+
BuildRequires:  libtiff-devel
+
BuildRequires:  libexif-devel
+
%endif
+
 
+
%if %{with_mythgame}
+
Requires:      mythgame        >= %{version}
+
BuildRequires:  zlib-devel
+
%endif
+
 
+
%if %{with_mythmusic}
+
Requires:      mythmusic    >= %{version}
+
BuildRequires:  libmad-devel
+
BuildRequires:  taglib-devel
+
BuildRequires:  libvorbis-devel >= 1.0
+
BuildRequires:  flac-devel >= 1.0.4
+
BuildRequires:  libcdaudio-devel >= 0.99.6
+
BuildRequires:  cdparanoia-devel
+
BuildRequires:  lame-devel
+
%endif
+
%if %{with_fftw}
+
BuildRequires:  fftw2-devel >= 2.1.3
+
BuildRequires:  fftw2-devel < 3
+
%endif
+
%if %{with_sdl}
+
BuildRequires:  SDL-devel
+
%endif
+
%if %{with_aac}
+
BuildRequires:  faad2-devel
+
%endif
+
%if %{with_libvisual}
+
BuildRequires:  libvisual-devel
+
%endif
+
 
+
%if %{with_mythnews}
+
Requires:      mythnews        >= %{version}
+
%endif
+
 
+
%if %{with_mythphone}
+
Requires:      mythphone        >= %{version}
+
BuildRequires:  libmyth-devel    >= %{version}
+
BuildRequires:  libtermcap-devel
+
%endif
+
%if %{with_festival}
+
BuildRequires:  festival-devel
+
%endif
+
 
+
%if %{with_mythvideo}
+
Requires:      mythvideo        >= %{version}
+
Requires:      perl-XML-Simple
+
BuildRequires:  libdvdread-devel >= 0.9.4
+
BuildRequires:  nasm
+
BuildRequires:  mjpegtools-devel >= 1.6.1
+
BuildRequires:  xvidcore-devel  >= 0.9.1
+
BuildRequires:  a52dec-devel
+
BuildRequires:  libfame-devel    >= 0.9.0
+
BuildRequires:  libdvdcss-devel  >= 1.2.7
+
%endif
+
 
+
%if %{with_mythweather}
+
Requires:      mythweather      >= %{version}
+
%endif
+
 
+
%if %{with_mythzoneminder}
+
Requires:      mythzoneminder  >= %{version}
+
%endif
+
 
+
%description
+
This is a consolidation of all the official MythTV plugins that used to be
+
distributed as separate downloads from mythtv.org.
+
 
+
################################################################################
+
%if %{with_mytharchive}
+
 
+
%package -n mytharchive
+
Summary:    A plugin to archive your recordings to DVD
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
Requires:  python >= 2.3.5
+
Requires:  python-imaging
+
Requires:  mjpegtools
+
Requires:  ffmpeg
+
Requires:  dvdauthor >= 0.6.11
+
Requires:  mkisofs  >= 2.01.01.0.a03
+
Requires:  growisofs
+
 
+
%description -n mytharchive
+
MythArchive is a MythTV style plugin that uses the Mythburn Script to
+
create and burn DVD's from MythTV recordings, MythVideo files or any
+
video files available on a MythTV system. It can also export recordings
+
to a native archive format that can then be imported back into a mythtv
+
system restoring all the associated metadata.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythbrowser}
+
 
+
%package -n mythbrowser
+
Summary:    A small web browser module for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythbrowser
+
MythBrowser is a full fledged web-browser (multiple tabs) to display
+
webpages in full-screen mode. Simple page navigation is
+
possible. Starting with version 0.13 it also has full support for
+
mouse driven navigation (right mouse opens and clos es the popup
+
menu).
+
 
+
MythBrowser also contains a BookmarkManager to manage the website
+
links in a simple mythplugin.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythcontrols}
+
 
+
%package -n mythcontrols
+
Summary:    A key control editor plugin for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythcontrols
+
A key control editor plugin for MythTV.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythflix}
+
 
+
%package -n mythflix
+
Summary:    A Netflix module for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythflix
+
MyhtFlix is a MythTV plugin for adding movies to your Netflix queue. It
+
currently supports the ablity to view your queue and add movies to your queue.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythgallery}
+
 
+
%package -n mythgallery
+
Summary:    A gallery/slideshow module for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythgallery
+
A gallery/slideshow module for MythTV.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythgame}
+
 
+
%package -n mythgame
+
Summary:    A game frontend (xmame, nes, snes, pc) for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythgame
+
A game frontend (xmame, nes, snes, pc) for MythTV.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythmovies}
+
 
+
%package -n mythmovies
+
Summary:    A movie-times listing plugin for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythmovies
+
A plugin for MythTV that provides information about local movie/theatre listings.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythmusic}
+
 
+
%package -n mythmusic
+
Summary:    The music player add-on module for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythmusic
+
Music add-on for mythtv.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythnews}
+
 
+
%package -n mythnews
+
Summary:    An RSS news feed plugin for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythnews
+
An RSS news feed plugin for MythTV.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythphone}
+
 
+
%package -n mythphone
+
Summary:    A video conferencing module for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythphone
+
Mythphone is a phone and videophone capability on MYTH using the
+
standard SIP protocol.  It is compatible with Microsoft XP Messenger
+
and with SIP Service Providers such as Free World Dialup
+
(fwd.pulver.com).
+
 
+
%endif
+
################################################################################
+
%if %{with_mythvideo}
+
 
+
%package -n mythvideo
+
Summary:    A generic video player frontend module for MythTV.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
Requires:  mplayer
+
 
+
%description -n mythvideo
+
A generic video player frontend module for MythTV.  This module also supports
+
playback of DVD files, and (optionally) rip DVDs and transcode their video and
+
audio content to other (generally smaller) formats.  Transcoding is based on
+
and derived from the excellent transcode package.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythweather}
+
 
+
%package -n mythweather
+
Summary:    A MythTV module that displays a weather forcast.
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythweather
+
A MythTV module that displays a weather forcast.
+
 
+
%endif
+
################################################################################
+
%if %{with_mythzoneminder}
+
 
+
%package -n mythzoneminder
+
Summary:    A MythTV module to interact with ZoneMinder
+
Group:      Applications/Multimedia
+
Requires:  mythtv-frontend-api = %(echo %{version} | awk -F. '{print $1 "." $2}')
+
 
+
%description -n mythzoneminder
+
A MythTV module to interact with ZoneMinder
+
 
+
%endif
+
################################################################################
+
 
+
%prep
+
 
+
# If there was a problem getting the svn revision, we need to alert the user.
+
%if !%{_svn_rev}
+
    echo -e "\n\nThere was a problem determing the current SVN revision."  \
+
            "\nAny subversion errors should be listed a few lines above"    \
+
            "\nthis error message.  Please resolve them and try again.\n\n"
+
    exit 1
+
%endif
+
 
+
# Since we'll be copying the files from the repository checkout instead of
+
# extracting a tarball (-T), we only need to create the target directory (-c).
+
%setup -q -T -c
+
 
+
# Copy the checkout to the rpm build directory.
+
    rsync -a --cvs-exclude              \
+
          %{_svn_root}/%{name}/*        \
+
          %{_builddir}/%{name}-%{version}/
+
 
+
# Replace static lib paths with %{_lib} so we build properly on x86_64
+
# systems, where the libs are actually in lib64.
+
    if [ "%{_lib}" != "lib" ]; then
+
        grep -rl '"lib"' . | xargs sed -i -e 's,/lib/,/%{_lib}/,g'
+
        grep -rl /lib/  . | xargs sed -i -e 's,/lib/,/%{_lib}/,g'
+
        grep -rl /lib$  . | xargs sed -i -e 's,/lib$,/%{_lib},'
+
        grep -rl '/lib ' . | xargs sed -i -e 's,/lib ,/%{_lib} ,g'
+
    fi
+
 
+
# MythMusic fix:  /mnt/store -> /var/lib/mythmusic
+
%if %{with_mythmusic}
+
sed -i -e 's#/mnt/store/music#%{_varlibdir}/mythmusic#' mythmusic/mythmusic/globalsettings.cpp
+
%endif
+
 
+
# MythVideo fix:  /mnt/store -> /var/lib/mythvideo
+
%if %{with_mythvideo}
+
sed -i -e 's#/var/\w\+/mythdvd/temp#%{_varlibdir}/mythvideo#' mythvideo/mythvideo/globalsettings.cpp
+
%endif
+
 
+
# Add some include paths
+
#cat >> settings.pro << EOF
+
#INCLUDEPATH += %{_includedir}/mythtv
+
#INCLUDEPATH += %{_includedir}/speech_tools
+
#EOF
+
 
+
#%if %{with_festival}
+
#cat >> settings.pro << EOF
+
#INCLUDEPATH += %{_includedir}/festival
+
#EOF
+
#%endif
+
 
+
# Prevent all of those nasty installs to ../../../../../bin/whatever
+
echo "QMAKE_PROJECT_DEPTH = 0" >> mythtv.pro
+
echo "QMAKE_PROJECT_DEPTH = 0" >> settings.pro
+
 
+
################################################################################
+
 
+
%build
+
# Need to set $QTDIR?
+
[ -n "$QTDIR" ] || . %{_sysconfdir}/profile.d/qt.sh
+
 
+
# Initialize the options string
+
OPTS=""
+
 
+
# Enable OpenGL (for MythMusic and MythGallery)
+
%if %{with_opengl}
+
    OPTS="$OPTS --enable-opengl"
+
%else
+
    OPTS="$OPTS --disable-opengl"
+
%endif
+
 
+
# Disable any of the plugins?
+
%if !%{with_mythmusic}
+
    OPTS="$OPTS --disable-mythmusic"
+
%endif
+
%if !%{with_mytharchive}
+
  --disable-mytharchive
+
%endif
+
%if !%{with_mythbrowser}
+
    OPTS="$OPTS --disable-mythbrowser"
+
%endif
+
%if !%{with_mythcontrols}
+
    OPTS="$OPTS --disable-mythcontrols"
+
%endif
+
%if !%{with_mythflix}
+
    OPTS="$OPTS --disable-mythflix"
+
%endif
+
%if !%{with_mythgallery}
+
    OPTS="$OPTS --disable-mythgallery"
+
%endif
+
%if !%{with_mythgame}
+
    OPTS="$OPTS --disable-mythgame"
+
%endif
+
%if !%{with_mythmovies}
+
    OPTS="$OPTS --disable-mythmovies"
+
%endif
+
%if !%{with_mythmusic}
+
    OPTS="$OPTS --disable-mythmusic"
+
%endif
+
%if !%{with_mythnews}
+
    OPTS="$OPTS --disable-mythnews"
+
%endif
+
%if !%{with_mythphone}
+
    OPTS="$OPTS --disable-mythphone"
+
%endif
+
%if !%{with_mythvideo}
+
    OPTS="$OPTS --disable-mythvideo"
+
%endif
+
%if !%{with_mythweather}
+
    OPTS="$OPTS --disable-mythweather"
+
%endif
+
%if !%{with_mythzoneminder}
+
    OPTS="$OPTS --disable-mythzoneminder"
+
%endif
+
 
+
# MythGallery options
+
%if %{with_exif}
+
    OPTS="$OPTS --enable-exif"
+
%else
+
    OPTS="$OPTS --disable-exif"
+
%endif
+
 
+
# MythMusic options
+
%if %{with_aac}
+
    OPTS="$OPTS --enable-aac"
+
%else
+
    OPTS="$OPTS --disable-aac"
+
%endif
+
%if %{with_fftw}
+
    OPTS="$OPTS --enable-fftw"
+
%else
+
    OPTS="$OPTS --disable-fftw"
+
%endif
+
%if %{with_sdl}
+
    OPTS="$OPTS --enable-sdl"
+
%else
+
    OPTS="$OPTS --disable-sdl"
+
%endif
+
%if %{with_libvisual}
+
    OPTS="$OPTS --enable-libvisual"
+
%else
+
    OPTS="$OPTS --disable-libvisual"
+
%endif
+
 
+
# MythPhone options
+
%if %{with_festival}
+
    OPTS="$OPTS --enable-festival"
+
%else
+
    OPTS="$OPTS --disable-festival"
+
%endif
+
 
+
# MythVideo options
+
%if %{with_transcode}
+
    OPTS="$OPTS --enable-transcode"
+
%else
+
    OPTS="$OPTS --disable-transcode"
+
%endif
+
%if %{with_vcd}
+
    OPTS="$OPTS --enable-vcd"
+
%else
+
    OPTS="$OPTS --disable-vcd"
+
%endif
+
 
+
# Configure
+
./configure \
+
    --prefix=%{_prefix}            \
+
    --libdir-name=%{_lib}          \
+
    --libdir=%{_libdir}            \
+
    --mandir=%{_mandir}            \
+
    $OPTS
+
 
+
# Make
+
#qmake mythplugins.pro
+
make
+
 
+
################################################################################
+
 
+
%install
+
rm -rf %{buildroot}
+
make install INSTALL_ROOT=%{buildroot}
+
 
+
# Create some directories that are specific to the rpm installation
+
 
+
%if %{with_mythgallery}
+
mkdir -p %{buildroot}%{_varlibdir}/pictures
+
%endif
+
 
+
%if %{with_mythgame}
+
mkdir -p %{buildroot}%{_datadir}/mythtv/games/nes/{roms,screens}
+
mkdir -p %{buildroot}%{_datadir}/mythtv/games/snes/{roms,screens}
+
mkdir -p %{buildroot}%{_datadir}/mythtv/games/PC/screens
+
cp -a mythgame/gamelist.xml %{buildroot}%{_datadir}/mythtv/games/PC/
+
# Link MythGame's xmame directory to the main xmame one, so users can use
+
# either app.
+
mkdir -p %{buildroot}%{_datadir}/xmame/{flyers,screens}
+
ln -s %{_datadir}/xmame %{buildroot}%{_datadir}/mythtv/games/xmame
+
%endif
+
 
+
%if %{with_mythmusic}
+
mkdir -p %{buildroot}%{_varlibdir}/mythmusic
+
%endif
+
 
+
%if %{with_mythvideo}
+
mkdir -p %{buildroot}%{_varlibdir}/mythvideo
+
%endif
+
 
+
################################################################################
+
 
+
%clean
+
rm -rf %{buildroot}
+
 
+
################################################################################
+
 
+
%files
+
%defattr(-,root,root,-)
+
%doc COPYING
+
 
+
################################################################################
+
%if %{with_mytharchive}
+
 
+
%files -n mytharchive
+
%defattr(-,root,root,-)
+
%doc mytharchive/README mytharchive/COPYING mytharchive/AUTHORS
+
%{_bindir}/mytharchivehelper
+
%{_libdir}/mythtv/plugins/libmytharchive.so
+
%{_datadir}/mythtv/mytharchive
+
%{_datadir}/mythtv/archive*.xml
+
%{_datadir}/mythtv/i18n/mytharchive_*.qm
+
%{_datadir}/mythtv/themes/default/ma_*png
+
%{_datadir}/mythtv/themes/default/mytharchive-ui.xml
+
%{_datadir}/mythtv/themes/default/mythburn-ui.xml
+
%{_datadir}/mythtv/themes/default/mythnative-ui.xml
+
 
+
%endif
+
################################################################################
+
%if %{with_mythbrowser}
+
 
+
%files -n mythbrowser
+
%defattr(-,root,root,-)
+
%doc mythbrowser/README mythbrowser/COPYING mythbrowser/AUTHORS
+
%{_bindir}/mythbrowser
+
%{_libdir}/mythtv/plugins/libmythbookmarkmanager.so
+
%{_datadir}/mythtv/themes/default/webpage.png
+
%{_datadir}/mythtv/i18n/mythbrowser_*.qm
+
 
+
%endif
+
################################################################################
+
%if %{with_mythcontrols}
+
 
+
%files -n mythcontrols
+
%defattr(-,root,root,-)
+
%doc mythcontrols/AUTHORS mythcontrols/TODO mythcontrols/COPYING mythcontrols/README
+
%{_datadir}/mythtv/i18n/mythcontrols_*.qm
+
%{_libdir}/mythtv/plugins/libmythcontrols.so
+
%{_datadir}/mythtv/themes/default/controls-ui.xml
+
%{_datadir}/mythtv/themes/default/kb-button-off.png
+
%{_datadir}/mythtv/themes/default/kb-button-on.png
+
 
+
%endif
+
################################################################################
+
%if %{with_mythflix}
+
 
+
%files -n mythflix
+
%defattr(-,root,root,-)
+
%doc mythflix/README mythflix/COPYING
+
%{_datadir}/mythtv/i18n/mythflix_*
+
%{_datadir}/mythtv/mythflix/
+
%{_datadir}/mythtv/netflix_menu.xml
+
%{_datadir}/mythtv/themes/default/netflix-ui.xml
+
%{_datadir}/mythtv/themes/default/title_netflix.png
+
%{_libdir}/mythtv/plugins/libmythflix.so
+
 
+
%endif
+
################################################################################
+
%if %{with_mythgallery}
+
 
+
%files -n mythgallery
+
%defattr(-,root,root,-)
+
%doc mythgallery/README mythgallery/COPYING
+
%{_libdir}/mythtv/plugins/libmythgallery.so
+
%{_datadir}/mythtv/themes/default/gallery-*
+
%{_datadir}/mythtv/i18n/mythgallery_*.qm
+
%{_varlibdir}/pictures
+
 
+
%endif
+
################################################################################
+
%if %{with_mythgame}
+
 
+
%files -n mythgame
+
%defattr(-,root,root,-)
+
%doc mythgame/README
+
%{_libdir}/mythtv/plugins/libmythgame.so
+
%{_datadir}/mythtv/game_settings.xml
+
%{_datadir}/mythtv/themes/default/game-ui.xml
+
%{_datadir}/mythtv/i18n/mythgame_*.qm
+
# What a mess.  And all we really want to do is say that gamelist.xml is a
+
# config file.
+
%{_datadir}/mythtv/games/nes
+
%{_datadir}/mythtv/games/snes
+
%{_datadir}/mythtv/games/xmame
+
%dir %{_datadir}/mythtv/games/PC
+
%{_datadir}/mythtv/games/PC/screens
+
%config %{_datadir}/mythtv/games/PC/gamelist.xml
+
# xmame should technically own this directory, but we've installed it here
+
# so people can run xmame and mythgame from the same set of config files.
+
%{_datadir}/xmame
+
 
+
%endif
+
################################################################################
+
%if %{with_mythmovies}
+
 
+
%files -n mythmovies
+
%defattr(-,root,root,-)
+
%doc mythmovies/README mythmovies/TODO
+
%{_bindir}/ignyte
+
%{_libdir}/mythtv/plugins/libmythmovies.so
+
%{_datadir}/mythtv/themes/default/movies-ui.xml
+
 
+
%endif
+
################################################################################
+
%if %{with_mythmusic}
+
 
+
%files -n mythmusic
+
%defattr(-,root,root,-)
+
%doc mythmusic/README mythmusic/COPYING mythmusic/AUTHORS mythmusic/musicdb
+
%{_libdir}/mythtv/plugins/libmythmusic.so
+
%{_varlibdir}/mythmusic
+
%{_datadir}/mythtv/music*.xml
+
%{_datadir}/mythtv/i18n/mythmusic_*.qm
+
%{_datadir}/mythtv/themes/default/ff_button_off.png
+
%{_datadir}/mythtv/themes/default/ff_button_on.png
+
%{_datadir}/mythtv/themes/default/ff_button_pushed.png
+
%{_datadir}/mythtv/themes/default/mm_*
+
%{_datadir}/mythtv/themes/default/music*
+
%{_datadir}/mythtv/themes/default/next_button_off.png
+
%{_datadir}/mythtv/themes/default/next_button_on.png
+
%{_datadir}/mythtv/themes/default/next_button_pushed.png
+
%{_datadir}/mythtv/themes/default/pause_button_off.png
+
%{_datadir}/mythtv/themes/default/pause_button_on.png
+
%{_datadir}/mythtv/themes/default/pause_button_pushed.png
+
%{_datadir}/mythtv/themes/default/play_button_off.png
+
%{_datadir}/mythtv/themes/default/play_button_on.png
+
%{_datadir}/mythtv/themes/default/play_button_pushed.png
+
%{_datadir}/mythtv/themes/default/prev_button_off.png
+
%{_datadir}/mythtv/themes/default/prev_button_on.png
+
%{_datadir}/mythtv/themes/default/prev_button_pushed.png
+
%{_datadir}/mythtv/themes/default/rew_button_off.png
+
%{_datadir}/mythtv/themes/default/rew_button_on.png
+
%{_datadir}/mythtv/themes/default/rew_button_pushed.png
+
%{_datadir}/mythtv/themes/default/selectionbar.png
+
%{_datadir}/mythtv/themes/default/stop_button_off.png
+
%{_datadir}/mythtv/themes/default/stop_button_on.png
+
%{_datadir}/mythtv/themes/default/stop_button_pushed.png
+
%{_datadir}/mythtv/themes/default/track_info_background.png
+
 
+
%endif
+
################################################################################
+
%if %{with_mythnews}
+
 
+
%files -n mythnews
+
%defattr(-,root,root,-)
+
%doc mythnews/README mythnews/AUTHORS mythnews/COPYING
+
%{_libdir}/mythtv/plugins/libmythnews.so
+
%{_datadir}/mythtv/mythnews
+
%{_datadir}/mythtv/themes/default/enclosures.png
+
%{_datadir}/mythtv/themes/default/need-download.png
+
%{_datadir}/mythtv/themes/default/news-info-bg.png
+
%{_datadir}/mythtv/themes/default/news-ui.xml
+
%{_datadir}/mythtv/i18n/mythnews_*.qm
+
 
+
%endif
+
################################################################################
+
%if %{with_mythphone}
+
 
+
%files -n mythphone
+
%defattr(-,root,root,-)
+
%doc mythphone/README mythphone/COPYING mythphone/AUTHORS mythphone/TODO
+
%{_libdir}/mythtv/plugins/libmythphone.so
+
%{_datadir}/mythtv/themes/default/phone-ui.xml
+
%{_datadir}/mythtv/themes/default/webcam-ui.xml
+
%{_datadir}/mythtv/themes/default/mp_*.png
+
%{_datadir}/mythtv/themes/default/phone.png
+
%{_datadir}/mythtv/i18n/mythphone_*.qm
+
 
+
%endif
+
################################################################################
+
%if %{with_mythvideo}
+
 
+
%files -n mythvideo
+
%defattr(-,root,root,-)
+
%doc mythvideo/README mythvideo/COPYING mythvideo/videodb
+
%{_bindir}/mtd
+
%{_libdir}/mythtv/plugins/libmythvideo.so
+
%{_datadir}/mythtv/i18n/mythvideo_*.qm
+
%{_datadir}/mythtv/video_settings.xml
+
%{_datadir}/mythtv/videomenu.xml
+
%{_datadir}/mythtv/mythvideo/
+
%{_varlibdir}/mythvideo
+
%{_datadir}/mythtv/themes/default/video-ui.xml
+
%{_datadir}/mythtv/themes/default/mv-*.png
+
%{_datadir}/mythtv/themes/default/mv_*.png
+
%{_datadir}/mythtv/themes/default/md_*.png
+
%{_datadir}/mythtv/themes/default-wide/dvd-ui.xml
+
%{_datadir}/mythtv/themes/default-wide/video-ui.xml
+
%{_datadir}/mythtv/themes/default/dvd-ui.xml
+
 
+
%endif
+
################################################################################
+
%if %{with_mythweather}
+
 
+
%files -n mythweather
+
%defattr(-,root,root,-)
+
%doc mythweather/README mythweather/COPYING
+
%{_libdir}/mythtv/plugins/libmythweather.so
+
%{_datadir}/mythtv/i18n/mythweather_*.qm
+
%{_datadir}/mythtv/mythweather/
+
%{_datadir}/mythtv/weather_settings.xml
+
%{_datadir}/mythtv/themes/default/weather-ui.xml
+
%{_datadir}/mythtv/themes/default/cloudy.png
+
%{_datadir}/mythtv/themes/default/fair.png
+
%{_datadir}/mythtv/themes/default/flurries.png
+
%{_datadir}/mythtv/themes/default/fog.png
+
%{_datadir}/mythtv/themes/default/logo.png
+
%{_datadir}/mythtv/themes/default/lshowers.png
+
%{_datadir}/mythtv/themes/default/mcloudy.png
+
%{_datadir}/mythtv/themes/default/mw_*.png
+
%{_datadir}/mythtv/themes/default/mwmain.png
+
%{_datadir}/mythtv/themes/default/pcloudy.png
+
%{_datadir}/mythtv/themes/default/rainsnow.png
+
%{_datadir}/mythtv/themes/default/showers.png
+
%{_datadir}/mythtv/themes/default/snowshow.png
+
%{_datadir}/mythtv/themes/default/sunny.png
+
%{_datadir}/mythtv/themes/default/thunshowers.png
+
%{_datadir}/mythtv/themes/default/unknown.png
+
 
+
%endif
+
################################################################################
+
%if %{with_mythzoneminder}
+
 
+
%files -n mythzoneminder
+
%defattr(-,root,root,-)
+
%doc mythzoneminder/AUTHORS mythzoneminder/README mythzoneminder/COPYING
+
%{_bindir}/mythzmserver
+
%{_libdir}/mythtv/plugins/libmythzoneminder.so
+
%{_datadir}/mythtv/themes/default/mz_*
+
%{_datadir}/mythtv/themes/default/zoneminder-ui.xml
+
%{_datadir}/mythtv/themes/default-wide/zoneminder-ui.xml
+
%{_datadir}/mythtv/zonemindermenu.xml
+
 
+
%endif
+
################################################################################
+
 
+
%changelog
+
 
+
* Sun Sep 16 2007 Chris Petersen <rpm@forevermore.net>
+
- Add some new mythnews images
+
 
+
* Fri Sep  7 2007 Chris Petersen <rpm@forevermore.net>
+
- Add datadir/mythtv/themes/default-wide/zoneminder-ui.xml
+
- Remove mythweather mw-*png files, which have been renamed upstream
+
 
+
* Tue Jul 17 2007 Chris Petersen <rpm@forevermore.net>
+
- Add weather_settings.xml and new images to mythweather subpackage
+
- Add new mythmovies plugin
+
 
+
* Tue May  1 2007 Chris Petersen <rpm@forevermore.net>
+
- Enable libvisual in MythMusic
+
- Enable VCD support by default
+
- Attempt to enable AAC by default (requires libmp4ff, which isn't in livna)
+
- Fix MythVideo's tmpdir string replacement
+
 
+
* Thu Apr  5 2007 Chris Petersen <rpm@forevermore.net>
+
- Replace MythMusic libid3tag dependency with taglib
+
 
+
* Sat Jan 13 2007 Chris Petersen <rpm@forevermore.net>
+
- Rearrange things to account for MythDVD and MythVideo merging
+
- Fix a couple of file locations for MythGame
+
- Clean up the files section to use more wildcards
+
 
+
* Wed Nov 29 2006 Chris Petersen <rpm@forevermore.net>
+
- Add mythzoneminder
+
 
+
* Mon Sep 11 2006 Chris Petersen <rpm@forevermore.net>
+
- Update now that .20 has been released
+
- Deal with missing/changed files
+
 
+
* Wed Aug 30 2006 Chris Petersen <rpm@forevermore.net>
+
- add -i to the SVN grep to account for certain foreign languages that capitalize "Revision"
+
- Add support for mytharchive
+
 
+
* Sat Apr 01 2006 Chris Petersen <rpm@forevermore.net>
+
- Enhance SVN support so that the build doesn't fail if there were updated files in the repository.
+
- Add detection for modular X.org so we don't need two spec files.
+
- Add documentation at the top of the file for the --with and --without options.
+
 
+
* Sun Nov 27 2005 Martin Ebourne <martin@zepler.org>
+
- Added MythFlix
+
 
+
* Fri Jul 22 2005 Chris Petersen <rpm@forevermore.net>
+
- Add mythcontrols
+
- General cleanup and adding of conditionals
+
 
+
* Sat Jul 16 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Reenable mythplugins.
+
 
+
* Tue Jun  7 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Disable transcode for now until transcode catches up with ffmpeg
+
  and libquicktime.
+
 
+
* Tue May 17 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Update to 0.18.1.
+
 
+
* Thu May 12 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Update the cvs fixes.
+
 
+
* Thu Apr 21 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Add cvsfixes for 0.18.
+
 
+
* Fri Apr 15 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Update to 0.18.
+
 
+
* Thu Apr 14 2005 Axel Thimm <Axel.Thimm@ATrpms.net>
+
- Merging plugins into one build (matching the new source layout).
+
</pre>
+
 
+
[[Category:Scripts]]
+

Revision as of 23:42, 29 October 2008