X-Git-Url: https://git.pld-linux.org/?a=blobdiff_plain;f=gpac.spec;h=96f7ad844b73021363f0304d9c584d960439c291;hb=d1c04050f058294e7b4859593c78a699d7f0395e;hp=b7c73691c90a2569388b39c0a4bb93a51ee7544b;hpb=c26f048dc6d34848d9ecf757fa3040461b5964d3;p=packages%2Fgpac.git diff --git a/gpac.spec b/gpac.spec index b7c7369..96f7ad8 100644 --- a/gpac.spec +++ b/gpac.spec @@ -1,54 +1,77 @@ +# TODO: +# - Platinum UPnP: http://www.plutinosoft.com/platinum (for platinum module) +# - OpenSVCDecoder: http://opensvcdecoder.sourceforge.net/ (for opensvc_dec module) +# - libopenhevc: https://github.com/OpenHEVC/openHEVC (for openhevc_dec module, replaces ffmpeg_in module) # # Conditional build: -%bcond_with amr -%bcond_without faad -%bcond_without ffmpeg -%bcond_without freetype -%bcond_without jpeg -%bcond_without js -%bcond_without mad -%bcond_without png -%bcond_without xvid -%bcond_with wx +%bcond_with amr # AMR-NB and AMR-WB (floating-point) support +%bcond_without avcap # AVCap module +%bcond_with directfb # DirectFB support +%bcond_without faad # AAC decoding support +%bcond_without ffmpeg # ffmpeg support +%bcond_without freenect # freenect (MS Kinect driver) module +%bcond_without freetype # freetype support +%bcond_without jpeg # JPEG support +%bcond_with js # JavaScript support in Osmo4 and modules +%bcond_without mad # MP3 support +%bcond_without png # PNG support +%bcond_without xvid # xvid support +%bcond_with mozilla # Mozilla (xulrunner/firefox/iceweasel, NPAPI+XPCOM based) plugin +# +%ifarch x32 +%undefine with_mozilla +%endif # Summary: GPAC - an implementation of the MPEG-4 Systems standard (ISO/IEC 14496-1) -Summary(pl): GPAC - implementacja standardu MPEG-4 Systems (ISO/IEC 14496-1) +Summary(pl.UTF-8): GPAC - implementacja standardu MPEG-4 Systems (ISO/IEC 14496-1) Name: gpac -Version: 0.2.4 -Release: 2 -License: GPL -Group: Applications -Source0: http://dl.sourceforge.net/gpac/%{name}-%{version}.tar.gz -# Source0-md5: cbbea28e99c23d1839d38c54c2cc090a -Source1: http://www.3gpp.org/ftp/Specs/archive/26_series/26.073/26073-530.zip -# Source1-md5: 705f6993fbf890e92eb7a331e7c716d1 -Patch0: %{name}-install.patch -Patch1: %{name}-wxWidgets.patch -URL: http://gpac.sourceforge.net/ -BuildRequires: SDL-devel -%{?with_wx:BuildRequires: wxGTK2-devel >= 2.5.4} +Version: 2.2.1 +Release: 1 +License: LGPL v2+ +Group: Applications/Multimedia +#Source0Download: https://github.com/gpac/gpac/releases +Source0: https://github.com/gpac/gpac/archive/v%{version}/%{name}-%{version}.tar.gz +# Source0-md5: a1a4a6c7f1525431b211b5ba47253ed0 +Patch0: ffmpeg6.patch +URL: http://www.gpac.io/ +%{?with_directfb:BuildRequires: DirectFB-devel} +BuildRequires: OpenGL-GLU-devel +BuildRequires: SDL-devel +BuildRequires: a52dec-libs-devel +%{?with_avcap:BuildRequires: avcap-devel} +BuildRequires: alsa-lib-devel >= 0.9 +%{?with_amr:BuildRequires: amrnb-devel} +%{?with_amr:BuildRequires: amrwb-devel} %{?with_faad:BuildRequires: faad2-devel} -%{?with_ffmpeg:BuildRequires: ffmpeg-devel} +%{?with_ffmpeg:BuildRequires: ffmpeg-devel >= 0.6} %{?with_freetype:BuildRequires: freetype-devel} -%{?with_js:BuildRequires: js-devel} +BuildRequires: jack-audio-connection-kit-devel +%{?with_js:BuildRequires: js-devel < 2:1.8.5} +%{?with_freenect:BuildRequires: libfreenect-devel} %{?with_jpeg:BuildRequires: libjpeg-devel} %{?with_mad:BuildRequires: libmad-devel} +BuildRequires: libogg-devel %{?with_png:BuildRequires: libpng-devel} +BuildRequires: libtheora-devel +BuildRequires: libvorbis-devel BuildRequires: libxml2-devel +BuildRequires: openjpeg2-devel +BuildRequires: openssl-devel +BuildRequires: pkgconfig +BuildRequires: pulseaudio-devel +BuildRequires: rpmbuild(macros) >= 1.357 +BuildRequires: sed >= 4.0 +BuildRequires: unzip +BuildRequires: xmlrpc-c-server-devel +BuildRequires: xorg-lib-libXext-devel +BuildRequires: xorg-lib-libXv-devel +%{?with_mozilla:BuildRequires: xulrunner-devel >= 2:9.0.0} %{?with_xvid:BuildRequires: xvid-devel} -Requires: SDL -%{?with_faad:Requires: faad2} -%{?with_ffmpeg:Requires: ffmpeg} -%{?with_freetype:Requires: freetype} -%{?with_js:Requires: js} -%{?with_jpeg:Requires: libjpeg} -%{?with_png:Requires: libpng} -%{?with_mad:Requires: libmad} -%{?with_xvid:Requires: xvid} +BuildRequires: xz-devel +BuildRequires: zlib-devel +Obsoletes: gpac-gui < 1.0.1-1 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _noautoreq libm4systems.so - %description GPAC is an implementation of the MPEG-4 Systems standard (ISO/IEC 14496-1) developed from scratch in ANSI C. @@ -64,62 +87,109 @@ keep the memory footprint as low as possible. The project will at term provide player(s), systems encoders and publishing tools for content distribution. -%description -l pl +%description -l pl.UTF-8 GPAC to implementacja standardu MPEG-4 Systems (ISO/IEC 14496-1) stworzona od zera w ANSI C. -G³ównym celem tworzenia jej jest dostarczenie czystej (tzn. czytelnej -dla jak najwiêkszej liczby ludzi), ma³ej i elastycznej alternatywy dla +Głównym celem tworzenia jej jest dostarczenie czystej (tzn. czytelnej +dla jak największej liczby ludzi), małej i elastycznej alternatywy dla wzorcowego oprogramowania MPEG-4 Systems (znanego jako IM1 i rozprowadzanego w ISO/IEC 14496-5). Wzorcowe oprogramowanie MPEG-4 -jest bardzo du¿± porcj± kodu, zaprojektowan± raczej do zweryfikowania -standardu ni¿ dostarczenia ma³ej, stabilnej wersji produkcyjnej. GPAC -jest pisany w ANSI C ze wzglêdu na przeno¶no¶æ (platformy wbudowane i -DSP) z prostym celem: wymagaæ tak ma³o pamiêci, jak to tylko mo¿liwe. -Projekt docelowo dostarczy odtwarzacz(e), kodery systemowe i narzêdzia -do publikacji w celu dystrybucji materia³ów. +jest bardzo dużą porcją kodu, zaprojektowaną raczej do zweryfikowania +standardu niż dostarczenia małej, stabilnej wersji produkcyjnej. GPAC +jest pisany w ANSI C ze względu na przenośność (platformy wbudowane i +DSP) z prostym celem: wymagać tak mało pamięci, jak to tylko możliwe. +Projekt docelowo dostarczy odtwarzacz(e), kodery systemowe i narzędzia +do publikacji w celu dystrybucji materiałów. + +%package devel +Summary: Header files for GPAC library +Summary(pl.UTF-8): Pliki nagłówkowe biblioteki GPAC +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description devel +Header files for GPAC library. + +%description devel -l pl.UTF-8 +Pliki nagłówkowe biblioteki GPAC. + +%package static +Summary: Static GPAC library +Summary(pl.UTF-8): Statyczna biblioteka GPAC +Group: Development/Libraries +Requires: %{name}-devel = %{version}-%{release} + +%description static +Static GPAC library. + +%description static -l pl.UTF-8 +Statyczna biblioteka GPAC. + +%package -n browser-plugin-%{name} +Summary: GPAC browser plugin +Summary(pl.UTF-8): Wtyczka GPAC do przegląderek WWW +Group: X11/Libraries +Requires: %{name} = %{version}-%{release} +Requires: browser-plugins >= 2.0 +Requires: browser-plugins(%{_target_base_arch}) + +%description -n browser-plugin-%{name} +GPAC plugin for Netscape-compatible WWW browsers. + +%description -n browser-plugin-%{name} -l pl.UTF-8 +Wtyczka GPAC dla przeglądarek WWW zgodnych z Netscape. %prep -%setup -q -n gpac -%patch0 -p1 -%{?with_wx:%patch1 -p1} -%if %{with amr} -mkdir -p Plugins/amr_dec/AMR_NB -cd Plugins/amr_dec/AMR_NB -# XXX: (conditional?) SourceN? -unzip -j %{_sourcedir}/26073-530.zip -unzip -j 26073-530_ANSI_C_source_code.zip +%setup -q +%patch0 -p1 + +%if %{without avcap} +%{__sed} -i -e 's,has_avcap="yes",has_avcap="no",' configure %endif chmod a+x configure %build -%configure \ - --enable-oss-audio \ - %{?with_amr: --enable-amr-nb} \ - %{!?with_faad: --disable-faad} \ - %{!?with_ffmpeg: --disable-ffmpeg} \ - %{!?with_freetype: --disable-ft} \ - %{!?with_jpeg: --disable-jpeg} \ - %{!?with_js: --disable-js} \ - %{!?with_mad: --disable-mad} \ - %{!?with_png: --disable-png} \ - --extra-cflags="-fPIC" \ - --extra-ldflags="-fPIC" \ - %{!?with_xvid: --disable-xvid} - -%{__make} \ - DESTDIR=$RPM_BUILD_ROOT +# not autoconf configure +./configure \ + --verbose \ + --prefix=%{_prefix} \ + --libdir=%{_lib} \ + --mandir=%{_mandir} \ + --X11-path=/usr \ + --cc="%{__cc}" \ + --cxx="%{__cxx}" \ + --disable-opt \ + %{?with_amr:--enable-amr} \ + --enable-pic \ + --extra-cflags="%{rpmcflags}" \ + --extra-ldflags="%{rpmldflags}" \ + %{?with_mozilla:--mozdir=%{_browserpluginsdir}} \ + %{?with_mozilla:--xulsdk-path="/usr/include/xulrunner -I/usr/include/nspr"} \ + %{!?with_faad:--use-faad=no} \ + %{!?with_ffmpeg:--use-ffmpeg=no} \ + %{!?with_freenect:--use-freenect=no} \ + %{!?with_freetype:--use-ft=no} \ + %{!?with_jpeg:--use-jpeg=no} \ + %{!?with_mad:--use-mad=no} \ + %{!?with_png:--use-png=no} \ + %{!?with_xvid:--use-xvid=no} \ + --enable-joystick + +%{!?with_directfb: sed -i 's/CONFIG_DIRECTFB.*/CONFIG_DIRECTFB=no/' config.mak} + +%{__make} %install rm -rf $RPM_BUILD_ROOT +install -d $RPM_BUILD_ROOT%{_pkgconfigdir} + +%{__make} -j1 install install-lib \ + DESTDIR=$RPM_BUILD_ROOT -%{__make} install \ - bindir=$RPM_BUILD_ROOT%{_bindir} \ - libdir=$RPM_BUILD_ROOT%{_libdir} \ - mandir=$RPM_BUILD_ROOT%{_mandir} \ - plugdir=$RPM_BUILD_ROOT%{_libdir}/gpac \ - real_plugdir=%{_libdir}/gpac \ - prefix=$RPM_BUILD_ROOT/usr +%{__make} -j1 -C applications install \ + DESTDIR=$RPM_BUILD_ROOT \ + MOZILLA_DIR=$RPM_BUILD_ROOT%{_browserpluginsdir} %clean rm -rf $RPM_BUILD_ROOT @@ -127,9 +197,43 @@ rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %postun -p /sbin/ldconfig +%post -n browser-plugin-%{name} +%update_browser_plugins + +%postun -n browser-plugin-%{name} +if [ "$1" = 0 ]; then + %update_browser_plugins +fi + %files %defattr(644,root,root,755) -%doc AUTHORS BUGS Changelog README TODO -%attr(755,root,root) %{_bindir}/* -%attr(755,root,root) %{_libdir}/* -%{_mandir}/man1/* +%doc Changelog README.md +%attr(755,root,root) %{_bindir}/MP4Box +%attr(755,root,root) %{_bindir}/gpac +%attr(755,root,root) %{_libdir}/libgpac.so.*.*.* +%attr(755,root,root) %ghost %{_libdir}/libgpac.so.12 +%dir %{_libdir}/gpac +%attr(755,root,root) %{_libdir}/gpac/gm_*.so +%{_datadir}/gpac +%{_mandir}/man1/gpac.1* +%{_mandir}/man1/gpac-filters.1* +%{_mandir}/man1/mp4box.1* +%{_desktopdir}/gpac.desktop +%{_iconsdir}/hicolor/*x*/apps/gpac.png + +%files devel +%defattr(644,root,root,755) +%attr(755,root,root) %{_libdir}/libgpac.so +%{_includedir}/gpac +%{_pkgconfigdir}/gpac.pc + +%files static +%defattr(644,root,root,755) +%{_libdir}/libgpac_static.a + +%if %{with mozilla} +%files -n browser-plugin-%{name} +%defattr(644,root,root,755) +%attr(755,root,root) %{_browserpluginsdir}/nposmozilla.so +%{_browserpluginsdir}/nposmozilla.xpt +%endif