Ticket #7090: rpmpatch.4.diff

File rpmpatch.4.diff, 19.5 KB (added by jtwyford@…, 16 years ago)

Backed out themes merge

  • packaging/rpm/mythtv.spec

     
    1111#
    1212# The latest version of this file can be found at:
    1313#
    14 #     http://www.mythtv.org/wiki/index.php/Mythtv-svn-rpmbuild.spec
     14#     http://svn.mythtv.org/svn/trunk/packaging/rpm/mythtv.spec
    1515#
    1616# Note:
    1717#
     
    6060%define desktop_vendor  xris
    6161
    6262# SVN Revision number and branch ID
    63 %define _svnrev r21243
     63%define _svnrev r21927
    6464%define branch trunk
    6565
    6666#
    6767# Basic descriptive tags for this package:
    6868#
    6969Name:           mythtv
    70 Summary:        A digital video recorder (DVR) application.
     70Summary:        A digital video recorder (DVR) application
    7171URL:            http://www.mythtv.org/
    7272Group:          Applications/Multimedia
    7373
     
    119119
    120120################################################################################
    121121
    122 Source0:   http://www.mythtv.org/mc/mythtv-%{version}.tar.bz2
    123 Source1:   http://www.mythtv.org/mc/mythplugins-%{version}.tar.bz2
     122Source0:   mythtv-%{version}.tar.bz2
     123Source1:   mythplugins-%{version}.tar.bz2
    124124Source10:  PACKAGE-LICENSING
    125125Source101: mythbackend.sysconfig.in
    126126Source102: mythbackend.init.in
     
    163163BuildRequires:  libXxf86vm-devel
    164164BuildRequires:  mesa-libGLU-devel
    165165BuildRequires:  xorg-x11-proto-devel
    166 %ifarch %{ix86} x86_64
    167 BuildRequires:  xorg-x11-drv-i810-devel
    168 BuildRequires:  xorg-x11-drv-openchrome-devel
    169 %endif
    170166
    171167# OpenGL video output and vsync support
    172168BuildRequires:  libGL-devel, libGLU-devel
     
    179175BuildRequires:  gsm-devel
    180176BuildRequires:  lame-devel
    181177BuildRequires:  libdca-devel
    182 # libdvdcss will be dynamically loaded if installed
    183 #BuildRequires:  libdvdcss-devel >= 1.2.7
    184178BuildRequires:  libdvdnav-devel
    185179BuildRequires:  libdvdread-devel >= 0.9.4
    186180BuildRequires:  libfame-devel >= 0.9.0
     
    193187BuildRequires:  transcode >= 0.6.8
    194188BuildRequires:  x264-devel
    195189BuildRequires:  xvidcore-devel >= 0.9.1
    196 BuildRequires:  pulseaudio-libs-devel
    197190
    198191# Audio framework support
    199192BuildRequires:  alsa-lib-devel
    200 BuildRequires:  arts-devel
    201193BuildRequires:  jack-audio-connection-kit-devel
     194BuildRequires:  pulseaudio-libs-devel
    202195
    203196# Need dvb headers to build in dvb support
    204197BuildRequires: kernel-headers
     
    328321Summary: MythTV documentation
    329322Group:   Documentation
    330323
     324Requires:  mythtv-common       = %{version}
     325
    331326%description docs
    332327The MythTV documentation, contrib files, database initialization file
    333328and miscellaneous other bits and pieces.
     
    335330################################################################################
    336331
    337332%package -n libmyth
    338 Summary:   Library providing mythtv support.
     333Summary:   Library providing mythtv support
    339334Group:     System Environment/Libraries
    340335
    341336Requires:  freetype >= 2
     
    351346################################################################################
    352347
    353348%package -n libmyth-devel
    354 Summary:   Development files for libmyth.
     349Summary:   Development files for libmyth
    355350Group:     Development/Libraries
    356351
    357352Requires:  libmyth = %{version}-%{release}
     
    369364Requires:  libXxf86vm-devel
    370365Requires:  mesa-libGLU-devel
    371366Requires:  xorg-x11-proto-devel
    372 %ifarch %{ix86} x86_64
    373 Requires:  xorg-x11-drv-i810-devel
    374 Requires:  xorg-x11-drv-openchrome-devel
    375 %endif
    376367
    377368# OpenGL video output and vsync support
    378369Requires:  libGL-devel, libGLU-devel
     
    385376Requires:  gsm-devel
    386377Requires:  lame-devel
    387378Requires:  libdca-devel
    388 #Requires:  libdvdcss-devel >= 1.2.7
    389379Requires:  libdvdnav-devel
    390380Requires:  libdvdread-devel >= 0.9.4
    391381Requires:  libfame-devel >= 0.9.0
     
    401391
    402392# Audio framework support
    403393Requires:  alsa-lib-devel
    404 Requires:  arts-devel
    405394Requires:  jack-audio-connection-kit-devel
     395Requires:  pulseaudio-libs-devel
    406396
    407397# Need dvb headers for dvb support
    408398Requires:  kernel-headers
     
    517507# Wish we could do this:
    518508#BuildArch:      noarch
    519509
     510Requires:  mythtv-common       = %{version}
    520511Requires:       perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
    521512Requires:       perl(DBD::mysql)
    522 # Disabled because there are no RPM packages for these yet,
    523 # and RPM doesn't seem to be picking up on CPAN versions
    524 #Requires:       perl(Net::UPnP)
    525 #Requires:       perl(Net::UPnP::ControlPoint)
     513Requires:       perl(Net::UPnP)
     514Requires:       perl(Net::UPnP::ControlPoint)
    526515
    527516%description -n perl-MythTV
    528517Provides a perl-based interface to interacting with MythTV.
     
    539528# Wish we could do this:
    540529#BuildArch:      noarch
    541530
     531Requires:  mythtv-common       = %{version}
    542532Requires:       MySQL-python
    543533
    544534%description -n python-MythTV
     
    651641%description -n mythgame
    652642A game frontend (xmame, nes, snes, pc) for MythTV.
    653643
    654 ################################################################################
    655 #package -n mythgame-emulators
    656 #Summary:   Meta-package requiring emulators for game types mythgame knows about
    657 #Group:     Applications/Multimedia
    658 #Requires:  mythgame = %{version}-%{release}
    659 # Multi Arcade Machine Emulator, Amiga, Atari 2600
    660 #Requires:  sdlmame
    661 #Requires:  e-uae
    662 #Requires:  stella
    663 # Nintendo, Super Nintendo, Nintendo 64
    664 #Requires:  fceultra
    665 #Requires:  zsnes
    666 #Requires:  mupen64, mupen64-ricevideo
    667 # Sega Genesis, Sega Master System, Game Gear
    668 #Requires:  gens
    669 #Requires:  dega-sdl
    670 #Requires:  osmose
    671 # TurboGraphx 16 (and others)
    672 #Requires:  mednafen
    673 
    674 #description -n mythgame-emulators
    675 #Meta-package requiring emulators for game types mythgame knows about.
    676 
    677644%endif
    678645################################################################################
    679646%if %{with_mythmovies}
     
    759726%package -n mythweb
    760727Summary:   The web interface to MythTV
    761728Group:     Applications/Multimedia
     729Requires:  mythtv-frontend-api = %{mythfeapiver}
    762730Requires:  httpd >= 1.3.26
    763731Requires:  php >= 5.1
    764732Requires:  php-mysql
     
    796764# Replace static lib paths with %{_lib} so we build properly on x86_64
    797765# systems, where the libs are actually in lib64.
    798766    if [ "%{_lib}" != "lib" ]; then
    799         grep -rlZ /lib/  . | xargs -r0 sed -i -e 's,/lib/,/%{_lib}/,g'
    800         grep -rlZ /lib$  . | xargs -r0 sed -i -e 's,/lib$,/%{_lib},'
     767        grep -rlZ '/lib/' . | xargs -r0 sed -i -e 's,/lib/,/%{_lib}/,g'
     768        grep -rlZ '/lib$' . | xargs -r0 sed -i -e 's,/lib$,/%{_lib},'
    801769        grep -rlZ '/lib ' . | xargs -r0 sed -i -e 's,/lib ,/%{_lib} ,g'
    802770    fi
    803771
     
    891859    --libdir=%{_libdir}                         \
    892860    --libdir-name=%{_lib}                       \
    893861    --mandir=%{_mandir}                         \
    894     --enable-iptv                               \
     862    --enable-iptv                               \
    895863    --enable-pthreads                           \
    896864    --enable-ffmpeg-pthreads                    \
    897865    --enable-joystick-menu                      \
    898     --enable-audio-arts                         \
    899866    --enable-audio-alsa                         \
    900867    --enable-audio-oss                          \
    901868    --enable-audio-jack                         \
     
    947914    --compile-type=release                      \
    948915%endif
    949916    --enable-debug
    950 ###    --enable-libx264                            \
    951917
    952918# Insert rpm version-release for mythbackend --version output
    953919    find . -name version.pro -exec sed -i -e 's,svnversion \$\${SVNTREEDIR},echo "%{version}-%{release}",g' {} \;
     
    11081074
    11091075    mkdir -p %{buildroot}%{_datadir}/mythtv/build/
    11101076    install -p -m 644 settings.pro %{buildroot}%{_datadir}/mythtv/build/
    1111 
     1077# fix the base themes
     1078    chmod a-x %{buildroot}%{_datadir}/mythtv/themes/default/htmls/*.html
    11121079    cd ..
    11131080
    11141081# MythPlugins
     
    11221089%endif
    11231090%if %{with_mythvideo}
    11241091    mkdir -p %{buildroot}%{_localstatedir}/lib/mythvideo
     1092    chmod a+x %{buildroot}%{_datadir}/mythtv/mythvideo/scripts/ttvdb/{tvdb*,cache}.py
    11251093%endif
    11261094%if %{with_mythgallery}
    11271095    mkdir -p %{buildroot}%{_localstatedir}/lib/pictures
     
    11291097%if %{with_mythgame}
    11301098    mkdir -p %{buildroot}%{_datadir}/mythtv/games/nes/{roms,screens}
    11311099    mkdir -p %{buildroot}%{_datadir}/mythtv/games/snes/{roms,screens}
    1132 #   mkdir -p %{buildroot}%{_datadir}/mythtv/games/mame/{roms,screens,flyers,cabs}
    11331100    mkdir -p %{buildroot}%{_datadir}/mythtv/games/PC/screens
    11341101    mkdir -p %{buildroot}%{_datadir}/mame
    11351102    ln -s ../../mame %{buildroot}%{_datadir}/mythtv/games/xmame
     
    11471114    cp -a * %{buildroot}%{_datadir}/mythweb/
    11481115    mkdir -p %{buildroot}%{_datadir}/mythweb/{image_cache,php_sessions}
    11491116# fix up permissions
    1150     chmod -R g-x %{buildroot}%{_datadir}/mythweb
     1117    chmod a-x %{buildroot}%{_datadir}/mythweb/classes/*.php
    11511118
    11521119    mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d
    11531120    cp %{SOURCE401} %{buildroot}%{_sysconfdir}/httpd/conf.d/
     
    11601127    cd ..
    11611128%endif
    11621129
     1130
    11631131################################################################################
    11641132
    11651133%clean
     
    11751143# Add the "mythtv" user
    11761144/usr/sbin/useradd -c "mythtvbackend User" \
    11771145    -s /sbin/nologin -r -d %{_varlibdir}/mythtv mythtv 2> /dev/null || :
     1146/usr/sbin/usermod -a -G video mythtv
    11781147
    11791148%post backend
    11801149/sbin/chkconfig --add mythbackend
     
    12391208%{_datadir}/mythtv/devicemaster.xml
    12401209%{_datadir}/mythtv/deviceslave.xml
    12411210%{_datadir}/mythtv/setup.xml
     1211%{_bindir}/mythavtest
    12421212%{_bindir}/mythfrontend
    1243 %{_bindir}/mythtv
    12441213%{_bindir}/mythtvosd
    12451214%{_bindir}/mythlcdserver
    12461215%{_bindir}/mythshutdown
     
    13201289%doc mythplugins-%{version}/mythbrowser/AUTHORS
    13211290%doc mythplugins-%{version}/mythbrowser/COPYING
    13221291%doc mythplugins-%{version}/mythbrowser/README
    1323 %{_bindir}/mythbrowser
    1324 %{_libdir}/mythtv/plugins/libmythbookmarkmanager.so
     1292%{_libdir}/mythtv/plugins/libmythbrowser.so
    13251293%{_datadir}/mythtv/i18n/mythbrowser_*.qm
    13261294%endif
    13271295
     
    13611329%dir %{_datadir}/mame/flyers
    13621330%{_datadir}/mythtv/game_settings.xml
    13631331%{_datadir}/mythtv/i18n/mythgame_*.qm
    1364 
    1365 #files -n mythgame-emulators
    1366 #defattr(-,root,root,-)
    1367 #{_datadir}/mythtv/games/xmame
    1368 #{_datadir}/mame/screens
    1369 #{_datadir}/mame/flyers
    13701332%endif
    13711333
    13721334%if %{with_mythmovies}
     
    14351397%defattr(-,root,root,-)
    14361398%doc mythplugins-%{version}/mythweb/README
    14371399%config(noreplace) %{_sysconfdir}/httpd/conf.d/mythweb.conf
    1438 %defattr(-,apache,apache,0775)
     1400%defattr(-,apache,apache,-)
    14391401%dir %{_datadir}/mythweb
    14401402%{_datadir}/mythweb/*
    14411403%endif
     
    14531415################################################################################
    14541416
    14551417%changelog
     1418* Thu Sep 17 2009 James Twyford <jtwyford@gmail.com> 0.22-0.2.svn
     1419- Updates to compile with trunk and other cleanups as suggested by rpmlint
    14561420
    1457 * Thu Aug 13 2009 Chris Petersen <rpm@forevermore.net> 0.22-01.svn
     1421* Thu Aug 13 2009 Chris Petersen <rpm@forevermore.net> 0.22-0.1.svn
    14581422- Add XML::Simple requirement for mythvideo (for tmdb.pl)
    14591423- Remove now-deprecated call for XvMCNVIDIA_dynamic
    14601424
    1461 * Mon Jul 27 2009 Chris Petersen <rpm@forevermore.net> 0.22-01.svn
     1425* Mon Jul 27 2009 Chris Petersen <rpm@forevermore.net> 0.22-0.1.svn
    14621426- Rename xvmcnvidia stuff to just nvidia, and add vdpau options to it
    14631427
    1464 * Sat Jul 25 2009 Chris Petersen <rpm@forevermore.net> 0.22-01.svn
     1428* Sat Jul 25 2009 Chris Petersen <rpm@forevermore.net> 0.22-0.1.svn
    14651429- Remove all a52 references because ./configure no longer accepts even "disable"
    14661430- Remove non-GPL libfaac options (not really used by MythTV anyway)
    14671431
    1468 * Sun Jun 28 2009 Chris Petersen <rpm@forevermore.net> 0.22-01.svn
     1432* Sun Jun 28 2009 Chris Petersen <rpm@forevermore.net> 0.22-0.1.svn
    14691433- Remove xvmc-opengl references that were removed in r20723
    14701434- Add requirement for pulseaudio-libs-devel now that some distros are requiring it
    14711435
  • packaging/rpm/mythtv-themes.spec

     
    1717%define desktop_vendor  xris
    1818
    1919# SVN Revision number and branch ID
    20 %define _svnrev r19708
     20%define _svnrev r21927
    2121%define branch trunk
    2222
    2323#
     
    4141
    4242# Tarballs created from svn "themes" and "myththemes" directories
    4343# Hopefully these will merge before 0.22 is released.
    44 Source0:        http://www.mythtv.org/mc/myththemes-%{version}.tar.bz2
    45 Source1:        themes-%{version}.tar.bz2
     44Source0:        themes-%{version}.tar.bz2
     45Source1:        oldthemes-%{version}.tar.bz2
    4646
    4747BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
    4848
     
    7878################################################################################
    7979
    8080%build
    81 cd myththemes-%{version}
     81cd themes-%{version}
    8282%configure
    8383cd ..
    8484
    85 cd themes-%{version}
     85cd oldthemes-%{version}
    8686%configure
    8787cd ..
    8888
     
    9191%install
    9292rm -rf %{buildroot}
    9393
    94 cd myththemes-%{version}
     94cd themes-%{version}
    9595make install INSTALL_ROOT=%{buildroot}
    9696cd ..
    9797
    98 cd themes-%{version}
     98cd oldthemes-%{version}
    9999make install INSTALL_ROOT=%{buildroot}
    100100cd ..
    101101
  • packaging/rpm/build_myth.sh

     
    102102    # Update the SVN checkout
    103103        updatesvn mythtv "$1"
    104104        updatesvn mythplugins "$1"
     105        updatesvn themes "$1"
     106        updatesvn oldthemes "$1"
    105107    # Remove the existing libmyth-devel so it doesn't confuse qmake
    106108    # (we can't override the order of the include file path)
    107109        PKG=`rpm -q libmyth-devel`
    108110        if [ `expr match "$PKG" 'libmyth.*'` -gt 0 ]; then
    109             echo "Removing existing libmyth-devel package to avoid conflicts"
    110             sudo rpm -e libmyth-devel.i386 libmyth-devel.x86_64 2>/dev/null
     111            echo "Removing existing libmyth-devel package to avoid conflicts. Please enter root password."
     112            su -c "rpm -e libmyth-devel"
    111113        fi
    112114    # Update the spec
    113115        updatespec $REL "$ABSPATH/mythtv.spec"
     116        updatespec $REL "$ABSPATH/mythtv-themes.spec"
    114117    # Clean up any old tarballs that might exist
    115         rm -f "$ABSPATH"/mythtv/myth*.tar.bz2
     118        rm -f "$ABSPATH"/mythtv/myth*.tar.bz2 \
     119              "$ABSPATH"/mythtv-themes/*hemes*.tar.bz2
    116120    # Create the appropriate tarballs
    117121        echo "Creating tarballs from svn checkout at $SVNDIR"
    118122        cd "$SVNDIR"
     
    126130            mv "$file-$VERSION" "$file"
    127131            echo "$ABSPATH/mythtv/$file-$VERSION.tar.bz2"
    128132        done
     133        for file in themes oldthemes; do
     134            if [ -d "$file-$VERSION" ]; then
     135                rm -rf "$file-$VERSION"
     136            fi
     137            echo -n "    "
     138            mv "$file" "$file-$VERSION"
     139            tar jcf "$ABSPATH/mythtv-themes/$file-$VERSION.tar.bz2" --exclude .svn "$file-$VERSION"
     140            mv "$file-$VERSION" "$file"
     141            echo "$ABSPATH/mythtv-themes/$file-$VERSION.tar.bz2"
     142        done
     143
    129144    # Build MythTV
    130145        rpmbuild -bb "$ABSPATH"/mythtv.spec \
    131             --define "_sourcedir $ABSPATH/mythtv" \
    132             --with debug            \
    133             --without mytharchive   \
    134             --without mythgallery   \
    135             --without mythgame      \
    136             --without mythbrowser   \
    137             --without mythmovies    \
    138             --without mythnews      \
    139             --without mythzoneminder
     146            --define "_sourcedir $ABSPATH/mythtv"
     147    # Blah
     148    #    rpmbuild -bb "$ABSPATH"/mythtv-themes.spec \
     149    #        --define "_sourcedir $ABSPATH/mythtv-themes"
     150
    140151    # Error?
    141152        if [ "$?" -ne 0 ]; then
    142153            echo "MythTV build error."
     
    152163        fi
    153164    }
    154165
    155 # Function to build mythtv themes packages
    156     function buildthemes {
    157     # Update the SVN checkout -- make sure not to
    158         svnupdate mythtv-themes "$1"
    159     # Update the spec
    160         updatespec $REL "$ABSPATH/mythtv-themes.spec"
    161     # Clean up any old tarballs that might exist
    162         rm -f "$ABSPATH"/mythtv-themes/*themes*.tar.bz2
    163     # Create the appropriate tarballs
    164         for file in myththemes themes; do
    165             if [ -d "$file-$VERSION" ]; then
    166                 rm -rf "$file-$VERSION"
    167             fi
    168             echo -n "    "
    169             mv "$file" "$file-$VERSION"
    170             tar jcf "$ABSPATH/mythtv-themes/$file-$VERSION.tar.bz2" --exclude .svn "$file-$VERSION"
    171             mv "$file-$VERSION" "$file"
    172             echo "$ABSPATH/mythtv-themes/$file-$VERSION.tar.bz2"
    173         done
    174     # Disabled until I can clean this up later -- themes now require libmyth in
    175     # order to compile.
    176     #
    177     ## Build MythTV Themes
    178     #    rpmbuild -bb /usr/src/redhat/SPECS/mythtv-themes.spec
    179     ## Error?
    180     #    if [ "$?" -ne 0 ]; then
    181     #        echo "MythTV Themes build error."
    182     #        return
    183     #    fi
    184     }
    185 
    186166# A function to install mythtv packages
     167# This doesn't work when building as a user...
     168# There must be a way to get the %{_topdir} from the user's rpm macros
    187169    function installmyth {
    188170        REL="$1"
    189         sudo rpm -Uvh --force --nodeps                                                   \
    190             /usr/src/redhat/RPMS/x86_64/mythtv-docs-$VERSION-0.3.svn.r$REL.*.rpm         \
    191             /usr/src/redhat/RPMS/x86_64/libmyth-$VERSION-0.3.svn.r$REL.*.rpm             \
    192             /usr/src/redhat/RPMS/x86_64/libmyth-devel-$VERSION-0.3.svn.r$REL.*.rpm       \
    193             /usr/src/redhat/RPMS/x86_64/mythtv-base-themes-$VERSION-0.3.svn.r$REL.*.rpm  \
    194             /usr/src/redhat/RPMS/x86_64/mythtv-frontend-$VERSION-0.3.svn.r$REL.*.rpm     \
    195             /usr/src/redhat/RPMS/x86_64/mythtv-backend-$VERSION-0.3.svn.r$REL.*.rpm      \
    196             /usr/src/redhat/RPMS/x86_64/mythtv-setup-$VERSION-0.3.svn.r$REL.*.rpm        \
    197             /usr/src/redhat/RPMS/x86_64/mythtv-common-$VERSION-0.3.svn.r$REL.*.rpm       \
    198             /usr/src/redhat/RPMS/x86_64/perl-MythTV-$VERSION-0.3.svn.r$REL.*.rpm         \
    199             /usr/src/redhat/RPMS/x86_64/python-MythTV-$VERSION-0.3.svn.r$REL.*.rpm       \
    200             /usr/src/redhat/RPMS/x86_64/mythmusic-$VERSION-0.3.svn.r$REL.*.rpm           \
    201             /usr/src/redhat/RPMS/x86_64/mythvideo-$VERSION-0.3.svn.r$REL.*.rpm           \
    202             /usr/src/redhat/RPMS/x86_64/mythweather-$VERSION-0.3.svn.r$REL.*.rpm         \
    203             /usr/src/redhat/RPMS/x86_64/mythtv-debuginfo-$VERSION-0.3.svn.r$REL.*.rpm
    204             #/usr/src/redhat/RPMS/x86_64/mythtv-themes-$VERSION-0.3.svn.r$REL.*.rpm  \
     171        echo "Installing MythTV-$VERSION.r$REL. Please enter root password."
     172        su -c "rpm -Uvh /usr/src/redhat/RPMS/x86_64/{libmyth,libmyth-devel,mytharchive,mythbrowser,mythflix,mythgallery,mythgame,mythmovies,mythmusic,mythnews,mythplugins,mythtv-backend,mythtv-common,mythtv-docs,mythtv-frontend,mythtv-setup,mythvideo,mythweather,mythweb,mythzoneminder,perl-MythTV,python-MythTV,mythtv}-$VERSION-0.3.svn.r$REL.*.rpm"
    205173    }
    206174
    207 # And a function to install mythtv theme packages, since they need libmyth
    208 # to be already installed in order to build them
    209     function installthemes {
    210         REL="$1"
    211     }
    212 
    213 
    214175###############################################################################
    215176# Actually execute the program here
    216177###############################################################################
  • packaging/rpm/mythtv/mythbackend.init.in

     
    2828  touch @rundir@/mythbackend.pid; chown mythtv:mythtv @rundir@/mythbackend.pid
    2929  export MYTHCONFDIR="$MYTHTV_HOME"
    3030  export HOME="$MYTHTV_HOME"
    31   daemon $binary $OPTIONS
     31  daemon --user mythtv $binary $OPTIONS
    3232  RETVAL=$?
    3333  echo
    3434  [ $RETVAL = 0 ] && touch @subsysdir@/$prog