self-build-ffmpeg-vl.spec 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302
  1. %define gpac_postinstall \
  2. gpac_postinstall_sh=$(mktemp) && \
  3. rpm -q --scripts self-build-gpac | \
  4. /bin/sed -e 's|posttrans[[:blank:]].*|\#!/bin/bash|' > ${gpac_postinstall_sh} && \
  5. /bin/bash ${gpac_postinstall_sh} && /bin/rm -f ${gpac_postinstall_sh}
  6. %define pkgname ffmpeg
  7. %define name self-build-%{pkgname}
  8. %define version 0.6.1
  9. #% define svndate 20110326
  10. %define release 2%{?svndate:.%svndate}%{?_dist_release}
  11. %define sourceurl0 http://ffmpeg.org/releases/%{pkgname}-%{version}.tar.bz2
  12. ## available for v0.6 or lower
  13. %define with_libfaad 1
  14. %define with_faac 1
  15. %define with_vaapi 1
  16. %define with_libvpx 1
  17. Summary: Package to automatically build %{pkgname} rpm package
  18. Summary(ja): %{pkgname} の rpm パッケージを自動作成するパッケージ
  19. Name: %{name}
  20. Version: %{version}
  21. Release: %{release}
  22. Source0: %{pkgname}-vl.spec
  23. #Source1: %{pkgname}-%{?svndate:%svndate}%{!?svndate:%version}.tar.bz2
  24. Source2: %{pkgname}-snapshot.sh
  25. Source90: ffmpeg.1.gz
  26. Source91: ffplay.1.gz
  27. Source92: ffserver.1.gz
  28. Source93: ffprobe.1.gz
  29. License: GPLv2+
  30. Group: Restricted Software
  31. Requires(post): self-build-setup >= 0.9.9
  32. #Requires(post): subversion
  33. # (build)requies of target package.
  34. Requires(post): bzip2-devel
  35. Requires(post): gsm-devel
  36. Requires(post): imlib2-devel
  37. Requires(post): libdc1394-devel
  38. Requires(post): libraw1394-devel
  39. Requires(post): librtmp-devel >= 2.3
  40. Requires(post): libtheora-devel
  41. %{?with_vaapi:Requires(post): libva-devel >= 0.31.0}
  42. Requires(post): libvdpau-devel
  43. Requires(post): libvorbis-devel
  44. %{?with_libvpx:Requires(post): libvpx-devel >= 0.9.1}
  45. %{?_with_opencore_amr:Requires(post): opencore-amr-devel}
  46. ##Requires(post): openjpeg-devel
  47. ##Requires(post): schroedinger-devel
  48. Requires(post): SDL-devel
  49. Requires(post): speex-devel
  50. ##Requires(post): texi2html
  51. Requires(post): zlib-devel
  52. Requires(post): libogg-devel
  53. %ifarch %{ix86} x86_64
  54. Requires(post): yasm
  55. %endif
  56. Requires(post): self-build-a52dec
  57. Requires(post): self-build-faac
  58. Requires(post): self-build-faad2
  59. Requires(post): self-build-lame
  60. Requires(post): self-build-libdca
  61. Requires(post): self-build-x264 >= 0.0.0-15.20110322
  62. Requires(post): self-build-xvidcore
  63. BuildRoot: %{_tmppath}/%{name}-%{version}-root
  64. Packager: munepi
  65. %description
  66. FFMpeg is a complete and free Internet live audio and video
  67. broadcasting solution for Linux/Unix. It also includes a
  68. digital VCR. It can encode in real time in many formats
  69. including MPEG1 audio and video, MPEG4, h263, ac3, asf, avi,
  70. real, mjpeg, and flash.
  71. If you install this package, it automaticaly downloads source
  72. code ,compile it, and create rpm packages of %{pkgname}-%{version}.
  73. And the created rpm packages are automatically installed
  74. if installation is executed by apt-get command or synaptic
  75. package manager.
  76. [Note]
  77. This package requires many other packages to compile
  78. target software. So it consume more disk space than usual.
  79. Also installation takes longer time because of compilation.
  80. (This will take a few minutes to quarter or half of an hour,
  81. depends on building environment)
  82. [About self-build package]
  83. For some kind of software, distributing of binary package
  84. may viorate the patent or law. Therefore we chose self-build
  85. packge, create binary package on your machine, for such kind
  86. of softwares instead of distributing binary package.
  87. Please obey the national law when you use the created binary
  88. packages. And if you want to use the softwares using patented
  89. thechnology, it may be required to get a permission, make an
  90. agreement or purchas a license. Please consider it with your
  91. purpose or way of use and take appropriate action.
  92. %description -l ja
  93. FFMpeg は Linux/Unix に対する完全にフリーなインターネットライ
  94. ブオーティオ・ビデオブロードキャスティングソリューションです.
  95. またデジタル VCR を含んでいます.MPEG1 オーディオ・ビデオ,
  96. MPEG4, h263, ac3, asf, avi, real, mjpeg, flash を含む
  97. 多様なフォーマットをリアルタイムにエンコードすることができます.
  98. このパッケージをインストールすると、自動的にソースコードを
  99. ダウンロードしてコンパイルし、%{pkgname}-%{version}
  100. の rpm パッケージを作成します。
  101. また apt-get コマンドや synaptic パッケージマネージャから実行
  102. した場合は、作成された rpm パッケージのインストールも自動的に
  103. 行います。
  104. [注意]
  105. コンパイルに必要な多くの関連パッケージを要求するので通常より
  106. ディスクの領域を多く消費します。
  107. またインストール時にコンパイルを行うため、通常より時間がかか
  108. る場合があります。(環境にもよりますが数分から数十分程度)
  109. [self-build パッケージについて]
  110. ソフトウェアによってはバイナリパッケージの配布が特許や法律に
  111. 違反する可能性があるものがあります。その為、このような問題が
  112. 懸念されるソフトウェアについてはバイナリパッケージを直接配布
  113. せずに、ユーザの環境でバイナリを作成する self-build パッケー
  114. ジという方法を採っています。
  115. 作成されたバイナリパッケージの利用にあたっては、各ソフトウェ
  116. アのライセンス、および利用する国の各種法令に従ってください。
  117. また特許に関連するソフトウェアの場合、利用許諾や契約、ライ
  118. センスの購入などが必要となる場合がありますので、利用する目的
  119. や形態に応じて各自で判断し適切な対応を取ってください。
  120. %prep
  121. [ "%{version}-%{release}" != $(rpm -q --queryformat "%%{version}-%%{release}\n" --specfile %{SOURCE0} | tail -1) ] && exit 1
  122. %install
  123. %{__rm} -rf ${RPM_BUILD_ROOT}
  124. %{__install} -d ${RPM_BUILD_ROOT}/%{_datadir}/%{name}
  125. %{__install} -m 644 %{SOURCE0} ${RPM_BUILD_ROOT}/%{_datadir}/%{name}
  126. #%{__install} -p -m 644 %{SOURCE1} ${RPM_BUILD_ROOT}/%{_datadir}/%{name}
  127. #%{__install} -m 644 %{SOURCE2} ${RPM_BUILD_ROOT}/%{_datadir}/%{name}
  128. %{__install} -m 644 %{SOURCE90} %{SOURCE91} %{SOURCE92} %{SOURCE93} \
  129. ${RPM_BUILD_ROOT}/%{_datadir}/%{name}
  130. %clean
  131. %{__rm} -rf ${RPM_BUILD_ROOT}
  132. %posttrans
  133. #/usr/lib/rpm/self-build-rpm.sh %{name} %{pkgname}-vl.spec 77000
  134. /usr/lib/rpm/self-build-rpm.sh %{name} %{pkgname}-vl.spec "%{sourceurl0}" 77000
  135. /usr/lib/rpm/pre-allocate-rpm.sh %{pkgname}-%{version}-%{release} \
  136. %{pkgname}-libs-%{version}-%{release} \
  137. %{pkgname}-devel-%{version}-%{release}
  138. ## Rebuild gpac with ffmpeg-devel
  139. # set locale
  140. case $LANG in
  141. ja*)LOCALE=ja ;;
  142. *) LOCALE=C ;;
  143. esac
  144. Rebuild_gpac_C(){
  145. echo -n " "
  146. echo "Rebuild gpac with ffmpeg-devel"
  147. }
  148. Rebuild_gpac_ja(){
  149. echo -n " "
  150. echo "ffmpeg-devel で gpac をリビルドします。"
  151. }
  152. Rebuild_gpac_$LOCALE
  153. %{gpac_postinstall}
  154. %files
  155. %defattr(-,root,root)
  156. %{_datadir}/%{name}
  157. %changelog
  158. * Sat Mar 26 2011 Munehiro Yamamoto <munepi@vinelinux.org> 0.6.1-2
  159. - required latest x264 build
  160. - added BuildRequires: librtmp-devel >= 2.3
  161. * Sat Oct 30 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.6.1-1
  162. - new upstream release
  163. * Sat Jul 17 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.6-4
  164. - unpacked source archives
  165. * Sun Jul 11 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.6-3
  166. - fixed some dependencies
  167. - Requires(post): libva-devel
  168. - Requires(post): libvpx-devel >= 0.9.1
  169. * Sat Jun 26 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.6-2
  170. - new upstream release
  171. * Sun Apr 18 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.6-1.20100410
  172. - bumped version to pre-0.6
  173. - updated source snapshot 20100410
  174. * Sat Apr 10 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5-12.20100401
  175. - fixed self-build log size
  176. * Sat Apr 10 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5-11.20100401
  177. - added ffprobe.1.gz
  178. * Fri Apr 02 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5-10.20100401
  179. - updated source snapshot 20100401
  180. * Sat Mar 20 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5-8.20100216
  181. - renamed %%{Source0} to ffmpeg-vl.spec
  182. * Wed Feb 17 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.5-7.20100216
  183. - updated source snapshot 20100216
  184. - rebuild with recent x264-devel
  185. - updated pre-built man files: ffmpeg.1 ffplay.1 ffserver.1
  186. - added BuildRequires: libvdpau-devel
  187. * Sat Jun 06 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-6
  188. - dropped BuildArch: noarch
  189. - added ffmpeg.1, ffplay.1, ffserver.1
  190. * Tue May 26 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-5
  191. - avoided to execute self-build-rpm.sh on RPM transaction
  192. - moved %%post actions to %%posttrans
  193. * Wed May 13 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-4
  194. - added BuildArch: noarch
  195. - added ffmpeg-0.5-disable-texi2html.patch
  196. - dropped PreReq: texi2html
  197. * Thu Mar 12 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-3
  198. - added %%{gpac_postinstall} in %%post
  199. * Wed Mar 11 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-2
  200. - corrected release number
  201. * Wed Mar 11 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.5-1
  202. - new upstream release
  203. - added PreReq:
  204. - speex-devel
  205. - bzip2-devel
  206. * Tue Feb 24 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090202.7
  207. - change release to sync with ffmpeg
  208. * Sun Feb 08 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090202.6
  209. - changed to PreReq: self-build-faad2 >= 2.0 from faad2-devel
  210. * Wed Feb 04 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090202.5
  211. - 20090202 snapshot
  212. * Sun Jan 11 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-20090110.4
  213. - 20090110 snapshot
  214. - dropped some patches
  215. * Sun Dec 14 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-15488.1
  216. - source updated (r15488)
  217. - fixed License: GPLv2+
  218. - added BuildRequires: gsm-devel libdc1394-devel libraw1394-devel
  219. - added BuildRequires: yasm (only %%ix86)
  220. - applied ffmpeg-cpu.patch (merged from RPM Fusion)
  221. * Sun Nov 02 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-11662.3vl4
  222. - spec in utf8
  223. * Tue May 20 2008 Kazutaka HARADA <kazutaka@dc4.so-net.ne.jp> 0.4.9-11662.2vl4
  224. - run pre-allocate-rpm.sh in %%post
  225. - set PreReq: self-build-setup >= 0.8
  226. - change release number
  227. * Wed Apr 16 2008 Atsushi SHICHI <ats777@gmail.com> 0.4.9-11662.1vl4
  228. - add "Source1: %{pkgname}-%{version}.r%{svnrev}.tar.gz",
  229. include Source1 in the binary package.
  230. - drop "Source100: ffmpeg-vine.patch".
  231. - drop "PreReq: subversion".
  232. * Mon Apr 7 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-0.20080128.1vl4
  233. - build with new versioning policy
  234. - change to use svn export from svn checkout on post install
  235. - fix ffmpeg-vine.patch for libswscale/swscale.c.rej
  236. * Thu Mar 13 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-0.20080128vl2
  237. - For all pre-required package that is provied by self-build,
  238. changed to its self-build package
  239. * Sun Mar 9 2008 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.9-0.20080128vl1
  240. - initial build for Vine Linux 4.2
  241. - snapshot 2008/01/28 + some Rev.11662 2008/01/29
  242. ### end of file