/[packages]/cauldron/xbmc/current/SPECS/xbmc.spec
ViewVC logotype

Diff of /cauldron/xbmc/current/SPECS/xbmc.spec

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 323732 by fwang, Sat Dec 1 04:47:55 2012 UTC revision 343733 by anssi, Wed Jan 9 14:23:48 2013 UTC
# Line 1  Line 1 
1    
2  %define name    xbmc  %define name    xbmc
3  %define branch_release  Eden  %define branch_release  Frodo
4  %define extra_feature   pvr  %define version 12.0
 %define version 11.0  
5  %define snap    0  %define snap    0
6  %define pre     0  %define pre     rc3
7  %define rel     6  %define rel     1
8    
9  %if %snap  %if %snap
10  %define branch  %branch_release.%extra_feature  %define branch  %branch_release
11  %else  %else
12  %define branch  %extra_feature  %define branch  %nil
13  %endif  %endif
14    
15  %define branchr %([ "%branch" ] && echo .%branch | tr - _)  %define branchr %([ "%branch" ] && echo .%branch | tr - _)
# Line 24  Line 23 
23  %define Werror_cflags %nil  %define Werror_cflags %nil
24  %endif  %endif
25    
26    # Nightly-build mode (no patches, externally specified snapshot)
27    # (never enabled by default)
28    %if 0 && "%nightly_date" != "" && "%nightly_git" != "" && "%nightly_branch" != "" && "%nightly_rel" != ""
29    %define nightly 1
30    %define version %nightly_date
31    %define rel     %nightly_rel
32    %else
33    %define nightly 0
34    %endif
35    
36  Summary:        XBMC Media Center - media player and home entertainment system  Summary:        XBMC Media Center - media player and home entertainment system
37  Name:           %{name}  Name:           %{name}
38  Version:        %{version}  Version:        %{version}
39    %if %nightly
40    Release:        %mkrel 1.%nightly_git.%nightly_branch.%rel
41    Source:         %{name}-%{nightly_date}-%{nightly_git}-%{nightly_branch}.tar.xz
42    %else
43  %if %snap  %if %snap
44  Release:        %mkrel 0.git%snap%branchr.%rel  Release:        %mkrel 0.git%snap%branchr.%rel
45  Source:         %{name}-%branch_release-%snap.tar.xz  Source:         %{name}-%branch_release-%snap.tar.xz
46  %else  %else
47  %if %pre  %if %pre
48  Release:        %mkrel 0.%pre%branchr.%rel  Release:        %mkrel 0.%pre%branchr.%rel
49  Source:         %{name}-%{version}-%{branch_release}_%{pre}.tar.gz  #Source:                %{name}-%{version}-%{branch_release}_%{pre}.tar.gz
50    Source:         %{branch_release}_%{pre}.tar.gz
51  %else  %else
52  Release:        %mkrel 1.%branch.%rel  Release:        %mkrel 1.%branch.%rel
53  Source:         %{name}-%{version}.tar.gz  Source:         %{name}-%{version}.tar.gz
54  %endif  %endif
55  %endif  %endif
56    %endif
57  URL:            http://xbmc.org/  URL:            http://xbmc.org/
58    
59  # bring snapshot up-to-date with pvr branch  %if !%nightly
60  # https://github.com/opdenkamp/xbmc  
61  # git diff 11.0-Eden-r2..11.0-Eden-pvr  # Use system groovy
62  Patch0:         xbmc-Eden-pvr-11.0.patch  Patch0:         xbmc-system-groovy.patch
63    
64  # Fix wiiremote eventclient build:  # Disable a non-critical documentation part of code generator which does not
65  Patch1:         xbmc-wiiremote-missing-include.patch  # seem to work with system groovy
66    Patch1:         xbmc-system-groovy-hack.patch
67  # Backports to fix build with FFmpeg  
68  Patch101: 0101-Update-ffmpeg-to-n0.10.2-f139838d6473c7b5152178f602c.patch  # Fix bootstrap script return value on error
69  Patch102: 0102-Update-patches.patch  Patch5:         xbmc-bootstrap-return-value.patch
 Patch103: 0103-Drop-neon-patch-that-doesn-t-apply-anymore.patch  
 Patch104: 0104-Drop-patch-for-win32-build.patch  
 Patch105: 0105-Drop-patch-for-cdxa-probe-it-causes-missdetections-o.patch  
 Patch106: 0106-Drop-now-merged-or-redundant-patches.patch  
 Patch107: 0107-replace-depreciated-av_open_input_stream-file-with-n.patch  
 Patch108: 0108-replace-depreciated-ByteIOContext-with-AVIOContext.patch  
 Patch109: 0109-replace-depreciated-AVMetadata-Tag-with-AVDictionary.patch  
 Patch110: 0110-Don-t-listen-to-depreciated-return-value-of-av_read_.patch  
 Patch111: 0111-Don-t-use-depreciated-avcodec_thread_init.patch  
 Patch112: 0112-Replace-depreciated-av_find_stream_info-with-avforma.patch  
 Patch113: 0113-Replace-more-depreciated-ffmpeg-functions.patch  
 Patch114: 0114-Drop-support-for-ffmpeg-version-older-than-our-built.patch  
 Patch115: 0115-Replace-deprecated-is_streamed-with-new-seekable-fla.patch  
 Patch116: 0116-Remove-old-code-depending-on-deprecated-file_size.patch  
 Patch117: 0117-changed-replace-old-libavfilter-integration-with-nul.patch  
 Patch118: 0118-changed-replace-old-swscale-pixel-format-conversion-.patch  
 Patch119: 0119-Drop-url_set_interrupt_cb-usage-which-was-removed-in.patch  
 Patch120: 0120-Do-not-map-url_fdopen-as-it-is-deprecated-and-gone-i.patch  
 Patch121: 0121-Replace-av_write_header-by-avformat_write_header.patch  
 Patch122: 0122-Remove-av_set_parameters.patch  
 Patch123: 0123-Replace-av_metadata_-get-set2-by-av_dict_-get-set.patch  
 Patch124: 0124-Merge-av_close_input_-file-stream-into-avformat_clos.patch  
 Patch125: 0125-Replace-init_put_byte-by-avio_alloc_context.patch  
 Patch126: 0126-Replace-dump_format-by-av_dump_format.patch  
 Patch127: 0127-Replace-url_-functions-by-their-avio_-counterparts.patch  
 Patch128: 0128-Remove-av_alloc_put_byte-and-replace-its-occurences-.patch  
 Patch129: 0129-Include-libavfilter-avcodec.h-for-av_vsrc_buffer_add.patch  
 Patch130: 0130-Remove-assignment-to-stream_copy-which-is-never-read.patch  
 Patch131: 0131-Do-not-set-AVFrame.age.patch  
 Patch132: 0132-Use-av_opt_set-instead-of-av_set_string3-and-drop-su.patch  
 Patch133: 0133-Replace-deprecated-av_get_bits_per_sample_fmt-by-av_.patch  
 Patch134: 0134-Convert-to-avcodec_decode_audio4-and-drop-avcodec_de.patch  
 Patch135: 0135-osx-ios-atv2-build-and-link-static-libs-for-ffmpeg-b.patch  
 Patch136: 0136-changed-Only-allow-slice-based-parallel-decoding.patch  
 Patch137: 0137-fixed-crash-if-audio-decoder-for-some-reason-doesn-t.patch  
 Patch138: 0138-dvdplayer-previous-picture-is-invalidated-by-a-call-.patch  
 Patch139: 0139-dvdplayer-Recalculate-codecname-when-we-update-based.patch  
 Patch140: 0140-dvdplayer-avoid-crashing-if-ffmpeg-contains-more-tha.patch  
 Patch141: 0141-Add-support-for-new-ffmpeg-10-11-api.patch  
 Patch142: 0142-Bring-av_read_frame_flush-in-line-with-ffmpeg-git.patch  
 Patch143: 0143-avutil-add-av_get_default_channel_layout-for-later-u.patch  
 Patch144: 0144-Use-libavutil-av_get_default_channel_layout-instead-.patch  
 Patch145: 0145-DllAvCodec-Remove-now-unused-private-avcodec_guess_c.patch  
   
 # Disable updates of the default skin. Our one is the PVR version, while the  
 # one in the XBMC.org addon repository would be the vanilla one (Confluence  
 # is currently not in the addon repository, though, as of 2012-03).  
 Patch201:       xbmc-disable-confluence-update.patch  
70    
71  # Make the MythTV PVR client buildable (submitted upstream):  # Fix bootstrap with automake 1.13+
72  Patch211:       0001-fixed-undefined-symbols-in-MythTV-PVR-client.patch  Patch6:         xbmc-automake1.13.patch
73    
74  # Hack to workaround upgrading from our old hack... see patch header for more  # Hack to workaround upgrading from our old hack... see patch header for more
75  # details and an upstreaming plan.  # details and an upstreaming plan.
76  Patch213:       0001-hack-workaround-for-old-incompatible-PVR-addon-datab.patch  Patch213:       0001-hack-workaround-for-old-incompatible-PVR-addon-datab.patch
77    %endif
78    
79  # nosefart audio plugin and RSXS-0.9 based screensavers are GPLv2 only  # nosefart audio plugin and RSXS-0.9 based screensavers are GPLv2 only
80  # several eventclients are GPLv3+ (in subpackages)  # several eventclients are GPLv3+ (in subpackages)
# Line 186  BuildRequires: afpclient-devel Line 154  BuildRequires: afpclient-devel
154  BuildRequires:  libplist-devel  BuildRequires:  libplist-devel
155  BuildRequires:  shairport-devel  BuildRequires:  shairport-devel
156  BuildRequires:  cec-devel  BuildRequires:  cec-devel
157    BuildRequires:  tinyxml-devel
158    BuildRequires:  taglib-devel
159  BuildRequires:  cmake  BuildRequires:  cmake
160  BuildRequires:  gperf  BuildRequires:  gperf
161  BuildRequires:  zip  BuildRequires:  zip
162    # codegenerator.mk
163    # TODO: Something is wrong with java macros in mga2+, %java does not actually use java-rpmbuild
164    BuildRequires:  java-rpmbuild
165    BuildRequires:  swig
166    BuildRequires:  groovy
167    BuildRequires:  apache-commons-lang
168    BuildRequires:  doxygen
169  %ifarch %ix86  %ifarch %ix86
170  BuildRequires:  nasm  BuildRequires:  nasm
171  %endif  %endif
172  Requires:       lsb-release  Requires:       lsb-release
173  # dlopened (existence check required by rpm5 as it doesn't use stderr):  # dlopened (existence check required by rpm5 as it doesn't use stderr):
174  %define dlopenreq() %([ -e %{_libdir}/lib%{1}.so ] && rpm -qf --qf '%%{name}' $(readlink -f %{_libdir}/lib%{1}.so) 2>/dev/null || echo %{name})  %define dlopenreq() %([ -e %{_libdir}/lib%{1}.so ] && rpm -qf --qf '%%{name}' $(readlink -f %{_libdir}/lib%{1}.so) 2>/dev/null || echo "xbmc-missing-buildrequires-on-%{1}")
175  Requires:       %dlopenreq curl  Requires:       %dlopenreq curl
176  Requires:       %dlopenreq FLAC  Requires:       %dlopenreq FLAC
177  Requires:       %dlopenreq mad  Requires:       %dlopenreq mad
# Line 247  and combined with its beautiful interfac Line 224  and combined with its beautiful interfac
224  engine, XBMC feels very natural to use from the couch and is the  engine, XBMC feels very natural to use from the couch and is the
225  ideal solution for your home theater.  ideal solution for your home theater.
226    
227  This is the stable version of XBMC from the %branch_release release branch,  %if !%nightly
228  with PVR support added from opdenkamp %branch_release-pvr branch. Support for  This is the stable version of XBMC from the %branch_release release branch.
229  RAR files is not included due to license issues.  Support for RAR files is not included due to license issues.
230    %endif
231    
232  %package        eventclients-common  %package        eventclients-common
233  Summary:        Common files for XBMC eventclients  Summary:        Common files for XBMC eventclients
# Line 330  and entertainment hub for digital media. Line 308  and entertainment hub for digital media.
308  This package contains the xbmc-send eventclient.  This package contains the xbmc-send eventclient.
309    
310  %prep  %prep
311    %if %nightly
312    %setup -q -n %name-%nightly_date-%nightly_git-%nightly_branch
313    %else
314  %if %snap  %if %snap
315  %setup -q -n %name-%branch_release-%snap  %setup -q -n %name-%branch_release-%snap
316  %else  %else
317  %if %pre  %if %pre
318  %setup -q -n %{name}-%{version}-%{branch_release}_%{pre}  %setup -q -n %{name}-%{branch_release}_%{pre}
319  %else  %else
320  %setup -q  %setup -q
321  %endif  %endif
322  %endif  %endif
323    %endif
324  %apply_patches  %apply_patches
325  # otherwise backups end up in binary rpms  # otherwise backups end up in binary rpms
326  find -type f \( -name '*.00??' -o -name '*.00??~' \) -print -delete  find -type f \( -name '*.00??' -o -name '*.00??~' \) -print -delete
327    
328  # remove prebuilt libraries  # remove prebuilt libraries
329  find -type f \( -iname '*.so' -o -iname '*.dll' -o -iname '*.exe' \) -delete  find -type f \( -iname '*.so' -o -iname '*.dll' -o -iname '*.exe' -o -iname '*.jar' \) -print -delete
330    
331  # GPLv2 only  # GPLv2 only
332  rm -r lib/cmyth/Win32/include/mysql  rm -r lib/cmyth/Win32/include/mysql
# Line 355  rm -r xbmc/cores/DllLoader/exports/emu_s Line 337  rm -r xbmc/cores/DllLoader/exports/emu_s
337  rm -rf system/players/dvdplayer/etc/fonts  rm -rf system/players/dvdplayer/etc/fonts
338    
339  %build  %build
340    %if %nightly
341    export GIT_REV=%nightly_git
342    %else
343  %if %snap  %if %snap
344  export GIT_REV=%snap  export GIT_REV=%snap
345  %else  %else
346  export GIT_REV="tarball"  export GIT_REV="tarball"
347  %endif  %endif
348  ./bootstrap  %endif
349    
350    JAVA=%{java} CLASSPATH=$(build-classpath commons-lang) ./bootstrap
351    
352  # due to xbmc modules that use symbols from xbmc binary  # due to xbmc modules that use symbols from xbmc binary
353  # and are not using libtool  # and are not using libtool
# Line 469  ok=1 Line 456  ok=1
456  %{_libdir}/xbmc/xbmc-xrandr  %{_libdir}/xbmc/xbmc-xrandr
457  %dir %{_libdir}/xbmc/addons/*  %dir %{_libdir}/xbmc/addons/*
458  %{_libdir}/xbmc/addons/*/*.so  %{_libdir}/xbmc/addons/*/*.so
 %{_libdir}/xbmc/addons/*/*.pvr  
459  %{_libdir}/xbmc/addons/*/*.vis  %{_libdir}/xbmc/addons/*/*.vis
460  %{_libdir}/xbmc/addons/*/*.xbs  %{_libdir}/xbmc/addons/*/*.xbs
461  %{_libdir}/xbmc/system/ImageLib-*-linux.so  %{_libdir}/xbmc/system/ImageLib-*-linux.so
# Line 477  ok=1 Line 463  ok=1
463  %{_libdir}/xbmc/system/libcmyth-*-linux.so  %{_libdir}/xbmc/system/libcmyth-*-linux.so
464  %{_libdir}/xbmc/system/libcpluff-*-linux.so  %{_libdir}/xbmc/system/libcpluff-*-linux.so
465  %{_libdir}/xbmc/system/libexif-*-linux.so  %{_libdir}/xbmc/system/libexif-*-linux.so
 %{_libdir}/xbmc/system/libid3tag-*-linux.so  
466  %{_libdir}/xbmc/system/players/dvdplayer/libdvdnav-*-linux.so  %{_libdir}/xbmc/system/players/dvdplayer/libdvdnav-*-linux.so
467  %if %with internal_ffmpeg  %if %with internal_ffmpeg
468  %{_libdir}/xbmc/system/players/dvdplayer/av*-linux.so  %{_libdir}/xbmc/system/players/dvdplayer/av*-linux.so

Legend:
Removed from v.323732  
changed lines
  Added in v.343733

  ViewVC Help
Powered by ViewVC 1.1.30