gpac-vl.spec 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351
  1. %define with_static 1
  2. Name: gpac
  3. Summary: MPEG-4 multimedia framework
  4. Version: 0.4.5
  5. Release: 11%{?_dist_release}
  6. License: LGPLv2+
  7. Group: System Environment/Libraries
  8. URL: http://gpac.sourceforge.net/
  9. Source0: http://downloads.sourceforge.net/gpac/gpac-%{version}.tar.gz
  10. #Source0: http://rpms.kwizart.net/fedora/SOURCE/gpac-%{version}-repack.tar.bz2
  11. #Source9: gpac-snapshot.sh
  12. Patch0: gpac-0.4.5-makefix.patch
  13. Patch1: gpac-0.4.5-soname.patch
  14. Patch2: gpac-0.4.5-amr.patch
  15. Patch3: gpac-0.4.5-lib64.patch
  16. Patch4: gpac-0.4.5-system_openjpeg.patch
  17. Patch6: gpac-0.4.5-shared_sggen.patch
  18. Patch7: gpac-0.4.5-libxml2.patch
  19. Patch8: gpac-ppc64.patch
  20. Patch9: gpac-0.4.5-ffmpeg.patch
  21. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
  22. BuildRequires: ImageMagick
  23. BuildRequires: SDL-devel
  24. BuildRequires: librsvg2-devel >= 2.5.0
  25. BuildRequires: libGLU-devel
  26. BuildRequires: freeglut-devel
  27. BuildRequires: freetype2-devel >= 2.1.4
  28. BuildRequires: libjpeg-devel
  29. BuildRequires: libpng-devel >= 1.2.5
  30. BuildRequires: libxml2-devel
  31. BuildRequires: openssl-devel
  32. #BuildRequires: openjpeg-devel
  33. BuildRequires: pulseaudio-libs-devel
  34. BuildRequires: zlib-devel
  35. BuildRequires: libogg-devel libvorbis-devel libtheora-devel
  36. BuildRequires: libXt-devel
  37. BuildRequires: libXpm-devel
  38. BuildRequires: libXv-devel
  39. #BuildRequires: wxGTK-devel
  40. BuildRequires: xmlrpc-epi-devel
  41. %{?_with_mozilla:BuildRequires: gecko-devel}
  42. #BuildRequires: doxygen
  43. BuildRequires: desktop-file-utils
  44. %{?_with_amr:BuildRequires: amrnb-devel amrwb-devel}
  45. # *-devel packages provided by other self-build-* should only be listed
  46. # in self-build-%{name}.spec as PreReq.
  47. #BuildRequires: a52dec-devel
  48. #BuildRequires: faad2-devel
  49. #BuildRequires: libmad-devel
  50. #BuildRequires: xvidcore-devel >= 1.0.0
  51. ##BuildRequires: ffmpeg-devel
  52. %description
  53. GPAC is a multimedia framework based on the MPEG-4 Systems standard developed
  54. from scratch in ANSI C. The original development goal is to provide a clean,
  55. small and flexible alternative to the MPEG-4 Systems reference software.
  56. GPAC features the integration of recent multimedia standards (SVG/SMIL, VRML,
  57. X3D, SWF, 3GPP(2) tools and more) into a single framework. GPAC also features
  58. MPEG-4 Systems encoders/multiplexers, publishing tools for content distribution
  59. for MP4 and 3GPP(2) files and many tools for scene descriptions
  60. (MPEG4 <-> VRML <-> X3D converters, SWF -> MPEG-4, etc).
  61. %package libs
  62. Summary: Library for %{name}
  63. Group: System Environment/Libraries
  64. %description libs
  65. The %{name}-libs package contains library for %{name}.
  66. %package devel
  67. Summary: Development libraries and files for %{name}
  68. Group: Development/Libraries
  69. Requires: %{name}-libs = %{version}-%{release}
  70. %description devel
  71. Development libraries and files for gpac.
  72. %if %{with_static}
  73. %package devel-static
  74. Summary: Development libraries and files for %{name}
  75. Group: Development/Libraries
  76. Requires: %{name}-devel = %{version}-%{release}
  77. %description devel-static
  78. Static library for gpac.
  79. %endif
  80. %prep
  81. %setup -q -n gpac
  82. ## remove extra_libs directory
  83. %__rm -rf extra_libs
  84. %patch0 -p1 -b .makefix
  85. %patch1 -p1 -b .soname
  86. %patch2 -p1 -b .amr
  87. %ifarch x86_64
  88. %patch3 -p1 -b .lib64
  89. %endif
  90. #%patch4 -p1 -b .openjpeg
  91. %patch6 -p1 -b .shared
  92. %patch7 -p1 -b .libxml2
  93. %patch8 -p1 -b .ppc64
  94. %patch9 -p1 -b .ffmpeg
  95. ## kwizart - enable dynamic mode - hardcoded with patch2
  96. # define SONAME number from the first number of gpac version.
  97. #define soname libgpac.so.0
  98. #sed -i.soname -e 's|EXTRALIBS+=$(GPAC_SH_FLAGS)|EXTRALIBS+=$(GPAC_SH_FLAGS)\nLDFLAGS+="-Wl,-soname,%{soname}"|' src/Makefile
  99. # # Update doxygen
  100. # pushd doc
  101. # doxygen -u
  102. # popd
  103. # Fix encoding warnings
  104. %__cp -p Changelog Changelog.origine
  105. iconv -f ISO-8859-1 -t UTF8 Changelog.origine > Changelog
  106. touch -r Changelog.origine Changelog
  107. %__rm -rf Changelog.origine
  108. %__cp -p doc/ipmpx_syntax.bt doc/ipmpx_syntax.bt.origine
  109. iconv -f ISO-8859-1 -t UTF8 doc/ipmpx_syntax.bt.origine > doc/ipmpx_syntax.bt
  110. touch -r doc/ipmpx_syntax.bt.origine doc/ipmpx_syntax.bt
  111. %__rm -rf doc/ipmpx_syntax.bt.origine
  112. # executable ./configure
  113. chmod +x configure
  114. %build
  115. %configure \
  116. --X11-path=%{_prefix} \
  117. %{?_with_mozilla:--mozdir=%{_libdir}/mozilla/plugins} \
  118. --enable-pic \
  119. --disable-static \
  120. --disable-wx \
  121. --extra-cflags="$RPM_OPT_FLAGS -D_FILE_OFFSET_BITS=64 -D_LARGE_FILES -D_LARGEFILE_SOURCE=1 -D_GNU_SOURCE=1" \
  122. --disable-oss-audio \
  123. --use-js=no \
  124. --use-openjpeg=local \
  125. ;
  126. # Parallele build will fail
  127. %__make all OPTFLAGS="$RPM_OPT_FLAGS -fPIC -DPIC"
  128. #{?_smp_mflags}
  129. %__make sggen OPTFLAGS="$RPM_OPT_FLAGS -fPIC -DPIC"
  130. #{?_smp_mflags}
  131. # ## kwizart - build doxygen doc for devel
  132. # pushd doc
  133. # doxygen
  134. # popd
  135. %install
  136. %__rm -rf $RPM_BUILD_ROOT
  137. %__make DESTDIR=$RPM_BUILD_ROOT install install-lib
  138. ## kwizart - rpmlint gpac no-ldconfig-symlink
  139. %__ln_s -f libgpac.so.%{version} $RPM_BUILD_ROOT%{_libdir}/libgpac.so.0
  140. %__ln_s -f libgpac.so.0 $RPM_BUILD_ROOT%{_libdir}/libgpac.so
  141. #Install generated sggen binaries
  142. for b in MPEG4 SVG X3D; do
  143. pushd applications/generators/${b}
  144. %__install -pm 0755 ${b}Gen $RPM_BUILD_ROOT%{_bindir}
  145. popd
  146. done
  147. # #Fix doxygen timestamp
  148. # touch -r Changelog doc/html/*
  149. %clean
  150. %__rm -rf $RPM_BUILD_ROOT
  151. %post libs -p /sbin/ldconfig
  152. %postun libs -p /sbin/ldconfig
  153. %files
  154. %defattr(-,root,root,-)
  155. %doc AUTHORS BUGS Changelog COPYING README TODO
  156. %{_bindir}/MP4*
  157. %{_bindir}/*Gen
  158. %{_datadir}/gpac/
  159. %{_mandir}/man1/*.1.*
  160. %files libs
  161. %defattr(-,root,root)
  162. %{_libdir}/libgpac.so.*
  163. %{_libdir}/gpac/
  164. %files devel
  165. %doc doc/CODING_STYLE doc/ipmpx_syntax.bt
  166. %defattr(-,root,root)
  167. %{_includedir}/gpac/
  168. %{_libdir}/libgpac.so
  169. %if %{with_static}
  170. %files devel-static
  171. %defattr(-,root,root,-)
  172. %{_libdir}/libgpac_static.a
  173. %else
  174. %exclude %{_libdir}/libgpac_static.a
  175. %endif
  176. %changelog
  177. * Mon Apr 18 2011 Munehiro Yamamoto <munepi@vinelinux.org> 0.4.5-11
  178. - rebuilt with internal openjpeg
  179. - added --use-openjpeg=local in configure options
  180. - added --enable-pic in configure options
  181. * Sat Mar 26 2011 Munehiro Yamamoto <munepi@vinelinux.org> 0.4.5-10
  182. - rebuild
  183. * Sat Jun 26 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.4.5-9
  184. - removed doxygen support
  185. * Sat Mar 20 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.4.5-8
  186. - change release to sync with self-build-gpac
  187. * Thu Feb 18 2010 Munehiro Yamamoto <munepi@vinelinux.org> 0.4.5-7
  188. - rebuild
  189. * Sun Jun 07 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.5-6
  190. - added --use-js=no in configure
  191. - added devel-static subpackage
  192. * Tue May 26 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.7.4-5
  193. - change release to sync with self-build-gpac
  194. * Thu May 14 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.5-4
  195. - change release to sync with self-build-gpac
  196. * Thu Mar 26 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.5-3
  197. - applied gpac-0.4.5-ffmpeg.patch (RPM Fusion #454)
  198. - corrected default %%defattr
  199. * Thu Mar 12 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.5-2
  200. - dropped BuildRequires: ffmpeg-devel as self-build-ffmpeg
  201. - rebuilt with ffmpeg-devel by self-build-ffmpeg
  202. * Sun Mar 01 2009 Munehiro Yamamoto <munepi@cg8.so-net.ne.jp> 0.4.5-1
  203. - initial build based on RPM Fusion
  204. - without Osmo4 and its plugins for Mozilla browsers
  205. - added --disable-wx in configure options
  206. - included %%{_libdir}/libgpac_static.a in devel subpackage
  207. * Sun Dec 28 2008 kwizart < kwizart at gmail.com > - 0.4.5-3
  208. - Fix -devel doc timestamp which leads to multilib conflict
  209. ( RPM Fusion #270 )
  210. * Thu Dec 18 2008 kwizart < kwizart at gmail.com > - 0.4.5-2
  211. - Fix for ppc64
  212. * Wed Dec 17 2008 kwizart < kwizart at gmail.com > - 0.4.5-1
  213. - Update to 0.4.5 (final)
  214. - Drop upstreamed patches - Rewrite some
  215. - Add More BR.
  216. - Conditionalize --with mozilla amr
  217. * Mon Sep 8 2008 kwizart < kwizart at gmail.com > - 0.4.5-0.5.20080217cvs
  218. - Fix for Large File Support (was livna #2075 )
  219. * Mon Feb 25 2008 kwizart < kwizart at gmail.com > - 0.4.5-0.3.20080217cvs
  220. - Enable devel-static
  221. - Conditionalize Osmo4 (buggy).
  222. - Clean the spec
  223. * Sun Feb 17 2008 kwizart < kwizart at gmail.com > - 0.4.5-0.2.20080217cvs
  224. - Update to 20080217.
  225. - Split libs.
  226. - Use the new amr nosrc scheme (need an end-users rebuilt to add support to it).
  227. - Add openjpeg-devel missing BR
  228. - Static patching instead of dyn patch when possible.
  229. - Disable %%{smp_mflags} (it tries to build the bin before the lib is ready)
  230. - Define soname as libgpac.so.0 (instead of libgpac.so.%%version )
  231. - Exclude static lib
  232. * Mon Feb 11 2008 Stewart Adam < s.adam at diffingo.com > - 0.4.5-0.1.20080211cvs
  233. - Use %%{smp_mflags}
  234. - Oops, we're actually 0.4.5
  235. - Fix gpac so filenames
  236. - Only install nposmozilla when %%{with_firefox} is set
  237. * Mon Feb 11 2008 Stewart Adam < s.adam at diffingo.com > - 0.4.4-3.20080211cvs
  238. - Update to 20080211cvs
  239. - Disable osmozilla, doesn't build with xulrunner
  240. - Fix builds with gcc 4.3
  241. * Sat Dec 15 2007 Stewart Adam < s.adam at diffingo.com > - 0.4.4-2
  242. - Rebuild for rawhide
  243. * Tue Oct 16 2007 Stewart Adam < s.adam at diffingo.com > - 0.4.4-1
  244. - Update to v4.4
  245. * Sat May 26 2007 kwizart < kwizart at gmail.com > - 0.4.3-0.1cvs20070526
  246. - Update to cvs 20070526
  247. - Enable conditional build ( 3gpp firefox )
  248. * Wed Apr 11 2007 kwizart < kwizart at gmail.com > - 0.4.3-0.1cvs20070411
  249. - Update to cvs 20070411
  250. * Thu Dec 08 2006 kwizart < kwizart at gmail.com > - 0.4.3-cvs20061208.1.kwizart.fc6
  251. - Update to 20061208
  252. - Uses firefox-devel (since fc6!)
  253. - Drop tutorial
  254. - Use version-DEV-date with libgpac.so
  255. - Disabled osmozilla
  256. - Fix soname
  257. - Enabled gprof
  258. * Tue Oct 17 2006 kwizart < kwizart at gmail.com > - 0.4.3-cvs20061017.1_FC5
  259. - gpac snapshot.sh
  260. - Revert Patch osmozilla.cpp (v1.17 - build error from gpac/internal/terminal_dev.h)
  261. - TODO: - no-soname make option for libgpac.so
  262. - static lib in devel - needed ?
  263. - osmozilla - xpt link problem.
  264. - Osmo4: segmentation fault on exit.
  265. - MP4Client: segmentation fault on launch.
  266. - The program 'Osmo4' received an X Window System error:
  267. "The error was 'BadMatch (invalid parameter attributes)'.
  268. (Details: serial 37 error_code 8 request_code 42 minor_code 0)"
  269. - MP4Box -version display: GPAC version 0.4.3-DEV (try to display cvs )
  270. * Sat Oct 15 2006 kwizart < kwizart at gmail.com > - 0.4.2-rc2.1_FC5
  271. - Update to 0.4.2cvs20061017
  272. - Use DESTDIR=RPM_BUILD_ROOT in various Makefile.
  273. - Enable mozilla plugin: osmozilla.
  274. - Enable AMR_NB_FLOAT and AMR_WB_FLOAT / bundle AMR_NB_FIXED (but not used by default).
  275. - Provide documentation html in doc .
  276. - Provide tutorial from http://www.wildamerica.com/pages/Marty.html
  277. - Various corrections.
  278. * Fri Sep 01 2006 Anssi Hannula <anssi@zarb.org> 0.4.1-0.20060630.2plf2007.0
  279. - lib64 fixes
  280. * Fri Jan 30 2006 Austin Acton <austin@mandriva.org> 0.4.1-0.20060630.1plf2007.0
  281. - initial package