]> git.pld-linux.org Git - packages/gpac.git/blobdiff - gpac.spec
- disable javascript, gpac is the last and only package that requires js < 1.8.5
[packages/gpac.git] / gpac.spec
index 1a805bab4434f4244d00039319b93ac083c7d70c..3132b096e19bc32bb9486c78c8269b0f7dcc81d4 100644 (file)
--- a/gpac.spec
+++ b/gpac.spec
@@ -1,58 +1,77 @@
-#
-# TODO: soname for libm4systems(?)
-# - use system mozilla includes
+# TODO:
+# - Platinum UPnP: http://www.plutinosoft.com/platinum
+# - AVCap: http://libavcap.sourceforge.net/
+# - OpenSVCDecoder: http://opensvcdecoder.sourceforge.net/
+# - libfreenect: http://openkinect.org/wiki/Main_Page
 #
 # 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 directfb        # DirectFB support
+%bcond_without faad            # AAC decoding support
+%bcond_without ffmpeg          # ffmpeg support
+%bcond_without freetype        # freetype support
+%bcond_without jpeg            # JPEG support
+%bcond_with    js              # JavaScript support
+%bcond_without mad             # MP3 support
+%bcond_without png             # PNG support
+%bcond_without xvid            # xvid support
+%bcond_without wx              # wxWidgets support
 #
 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.4.0
-Release:       1
-License:       LGPL
-Group:         Applications
-Source0:       http://dl.sourceforge.net/gpac/%{name}-%{version}.tar.gz
-# Source0-md5: a8b4b3206cabda946850240f1e7aea93
-Source1:       http://www.3gpp.org/ftp/Specs/archive/26_series/26.073/26073-530.zip
-# Source1-md5: 705f6993fbf890e92eb7a331e7c716d1
+Version:       0.5.0
+Release:       7
+License:       LGPL v2+
+Group:         Applications/Multimedia
+Source0:       http://downloads.sourceforge.net/gpac/%{name}-%{version}.tar.gz
+# Source0-md5: 19f7bb7c16913c22bdd453db1e653ca0
 Patch0:                %{name}-install.patch
-Patch1:                %{name}-wxWidgets.patch
+Patch1:                %{name}-xulrunner.patch
+Patch2:                %{name}-amr.patch
+Patch3:                %{name}-install-is-not-clean.patch
+Patch4:                %{name}-flags.patch
+Patch5:                %{name}-idl_uuid.patch
+Patch6:                %{name}-js.patch
+Patch7:                %{name}-apps.patch
+Patch8:                %{name}-export.patch
 URL:           http://gpac.sourceforge.net/
-BuildRequires:         SDL-devel
-%{?with_wx:BuildRequires:      wxGTK2-devel >= 2.5.4}
+%{?with_directfb:BuildRequires:        DirectFB-devel}
+BuildRequires: OpenGL-GLU-devel
+BuildRequires: SDL-devel
+BuildRequires: a52dec-libs-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}
+%{?with_wx:BuildRequires:      gtk+2-devel >= 2:2.20.1}
+BuildRequires: jack-audio-connection-kit-devel
+%{?with_js:BuildRequires:      js-devel < 2:1.8.5}
 %{?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: openjpeg-devel
+BuildRequires: openssl-devel
+BuildRequires: pkgconfig
+BuildRequires: pulseaudio-devel
+BuildRequires: rpmbuild(macros) >= 1.357
+BuildRequires: sed >= 4.0
+BuildRequires: unzip
+%{?with_wx:BuildRequires:      wxGTK2-unicode-devel >= 2.6.0}
+BuildRequires: xmlrpc-c-server-devel
+BuildRequires: xorg-lib-libXext-devel
+BuildRequires: xorg-lib-libXv-devel
+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: zlib-devel
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define         _noautoreq   libm4systems.so
-%define         _plugindir      %{_libdir}/browser-plugins
-
 %description
 GPAC is an implementation of the MPEG-4 Systems standard (ISO/IEC
 14496-1) developed from scratch in ANSI C.
@@ -68,85 +87,127 @@ 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 gui
+Summary:       wxWidgets-based GUI for GPAC
+Summary(pl.UTF-8):     Oparty na wxWidgets graficzny interfejs do GPAC
+Group:         X11/Applications/Multimedia
+Requires:      %{name} = %{version}-%{release}
+
+%description gui
+Osmo4 - wxWidgets-based GUI for GPAC.
+
+%description gui -l pl.UTF-8
+Osmo4 - oparty na wxWidgets graficzny interfejs do GPAC.
 
 %package -n browser-plugin-%{name}
 Summary:       GPAC browser plugin
-Summary(pl):   Wtyczka GPAC do przegl±derek WWW
+Summary(pl.UTF-8):     Wtyczka GPAC do przegląderek WWW
 Group:         X11/Libraries
 Requires:      %{name} = %{version}-%{release}
-Requires:      browser-plugins(%{_target_cpu})
-
-%define browsers mozilla, mozilla-firefox
+Requires:      browser-plugins >= 2.0
+Requires:      browser-plugins(%{_target_base_arch})
 
 %description -n browser-plugin-%{name}
 GPAC plugin for Netscape-compatible WWW browsers.
 
-Supported browsers: %{browsers}.
-
-%description -n browser-plugin-%{name} -l pl
-Wtyczka GPAC dla przegl±darek WWW zgodnych z Netscape.
-
-Obs³ugiwane przegl±darki: %{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
-unzip -j %{SOURCE1}
-unzip -j 26073-530_ANSI_C_source_code.zip
-%endif
-chmod a+x configure
+%setup -q -n %{name}
+%patch0 -p1
+%patch1 -p1
+%patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
+%patch7 -p1
+%patch8 -p1
 
-# files for w32 and Linux were swapped
-rm -rf applications/osmozilla/nsIOsmozilla.xpt_linux
-mv applications/osmozilla/nsIOsmozilla.xpt_w32 applications/osmozilla/nsIOsmozilla.xpt_linux
+sed -i -e 's/wx-config/wx-gtk2-unicode-config/' configure
+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 \
+       --prefix=%{_prefix} \
+       --libdir=%{_lib} \
+       --mandir=%{_mandir} \
+       --X11-path=/usr \
+       --cc="%{__cc}" \
+       --cpp="%{__cxx}" \
+       --disable-opt \
+       %{!?with_wx:--disable-wx} \
+       %{?with_amr:--enable-amr} \
+       --enable-joystick \
+       --enable-pic \
+       --extra-cflags="%{rpmcflags}" \
+       --extra-ldflags="%{rpmldflags}" \
+       --mozdir=%{_browserpluginsdir} \
+       %{!?with_faad:--use-faad=no} \
+       %{!?with_ffmpeg:--use-ffmpeg=no} \
+       %{!?with_freetype:--use-ft=no} \
+       %{!?with_jpeg:--use-jpeg=no} \
+       %{!?with_js:--use-js=no} \
+       %{!?with_mad:--use-mad=no} \
+       %{!?with_png:--use-png=no} \
+       %{!?with_xvid:--use-xvid=no} \
+       --xulsdk-path="/usr/include/xulrunner -I/usr/include/nspr"
+
+%{!?with_directfb: sed -i 's/CONFIG_DIRECTFB.*/CONFIG_DIRECTFB=no/' config.mak}
+
+%{__make} -j1
 
 %install
 rm -rf $RPM_BUILD_ROOT
+install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
 
-%{__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 \
-       MOZILLA_DIR=$RPM_BUILD_ROOT%{_plugindir}
+%{__make} install install-lib \
+       DESTDIR=$RPM_BUILD_ROOT
+
+%{__make} -C applications install \
+       DESTDIR=$RPM_BUILD_ROOT \
+       MOZILLA_DIR=$RPM_BUILD_ROOT%{_browserpluginsdir}
 
 %clean
 rm -rf $RPM_BUILD_ROOT
@@ -154,45 +215,45 @@ rm -rf $RPM_BUILD_ROOT
 %post  -p /sbin/ldconfig
 %postun -p /sbin/ldconfig
 
-%triggerin -n browser-plugin-%{name} -- mozilla-firefox
-%nsplugin_install -d %{_libdir}/mozilla-firefox/plugins nposmozilla.so nposmozilla.xpt
-
-%triggerun -n browser-plugin-%{name} -- mozilla-firefox
-%nsplugin_uninstall -d %{_libdir}/mozilla-firefox/plugins nposmozilla.so nposmozilla.xpt
-
-%triggerin -n browser-plugin-%{name} -- mozilla
-%nsplugin_install -d %{_libdir}/mozilla/plugins nposmozilla.so nposmozilla.xpt
-if [ -d /usr/%{_lib}/mozilla ]; then
-       umask 022
-       rm -f /usr/%{_lib}/mozilla/components/{compreg,xpti}.dat
-       if [ -x /usr/bin/regxpcom ]; then
-               MOZILLA_FIVE_HOME=/usr/%{_lib}/mozilla /usr/bin/regxpcom
-       fi
-fi
+%post -n browser-plugin-%{name}
+%update_browser_plugins
 
-%triggerun -n browser-plugin-%{name} -- mozilla
-%nsplugin_uninstall -d %{_libdir}/mozilla/plugins nposmozilla.so nposmozilla.xpt
-if [ -d /usr/%{_lib}/mozilla ]; then
-       umask 022
-       rm -f /usr/%{_lib}/mozilla/components/{compreg,xpti}.dat
-       if [ -x /usr/bin/regxpcom ]; then
-               MOZILLA_FIVE_HOME=/usr/%{_lib}/mozilla /usr/bin/regxpcom
-       fi
+%postun -n browser-plugin-%{name}
+if [ "$1" = 0 ]; then
+       %update_browser_plugins
 fi
 
-%triggerpostun -n browser-plugin-%{name} -- mozilla-plugin-%{name}
-%nsplugin_install -f -d %{_libdir}/mozilla/plugins nposmozilla.so nposmozilla.xpt
-
 %files
 %defattr(644,root,root,755)
 %doc AUTHORS BUGS Changelog README TODO
-%attr(755,root,root) %{_bindir}/*
-%attr(755,root,root) %{_libdir}/lib*.so
+%attr(755,root,root) %{_bindir}/MP4Box
+%attr(755,root,root) %{_bindir}/MP4Client
+%attr(755,root,root) %{_libdir}/libgpac.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libgpac.so.2
 %dir %{_libdir}/gpac
-%attr(755,root,root) %{_libdir}/gpac/*.so
-%{_mandir}/man1/*
+%attr(755,root,root) %{_libdir}/gpac/gm_*.so
+%{_datadir}/gpac
+%{_mandir}/man1/gpac.1*
+%{_mandir}/man1/mp4box.1*
+%{_mandir}/man1/mp4client.1*
+
+%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 wx}
+%files gui
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_bindir}/Osmo4
+%endif
 
 %files -n browser-plugin-%{name}
 %defattr(644,root,root,755)
-%attr(755,root,root) %{_plugindir}/nposmozilla.so
-%{_plugindir}/nposmozilla.xpt
+%attr(755,root,root) %{_browserpluginsdir}/nposmozilla.so
+%{_browserpluginsdir}/nposmozilla.xpt
This page took 0.100932 seconds and 4 git commands to generate.