# 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
+# - 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 # AMR-NB and AMR-WB (floating-point) support
-%bcond_without directfb # DirectFB 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
+%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_without wx # wxWidgets 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.UTF-8): GPAC - implementacja standardu MPEG-4 Systems (ISO/IEC 14496-1)
Name: gpac
-Version: 0.5.0
-Release: 7
+Version: 1.0.1
+Release: 1
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}-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/
+#Source0Download: https://github.com/gpac/gpac/releases
+Source0: https://github.com/gpac/gpac/archive/v%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 52f6711e43a8d271ebec0c2ea2afab4a
+Patch0: %{name}-install-is-not-clean.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 >= 0.6}
%{?with_freetype:BuildRequires: freetype-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_freenect:BuildRequires: libfreenect-devel}
%{?with_jpeg:BuildRequires: libjpeg-devel}
%{?with_mad:BuildRequires: libmad-devel}
BuildRequires: libogg-devel
BuildRequires: libtheora-devel
BuildRequires: libvorbis-devel
BuildRequires: libxml2-devel
-BuildRequires: openjpeg-devel
+BuildRequires: openjpeg2-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_mozilla:BuildRequires: xulrunner-devel >= 2:9.0.0}
%{?with_xvid:BuildRequires: xvid-devel}
+BuildRequires: xz-devel
BuildRequires: zlib-devel
+Obsoletes: gpac-gui < 1.0.1-1
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
%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.UTF-8): Wtyczka GPAC do przeglÄ…derek WWW
Wtyczka GPAC dla przeglÄ…darek WWW zgodnych z Netscape.
%prep
-%setup -q -n %{name}
+%setup -q
%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
-%patch8 -p1
-sed -i -e 's/wx-config/wx-gtk2-unicode-config/' configure
+%if %{without avcap}
+%{__sed} -i -e 's,has_avcap="yes",has_avcap="no",' configure
+%endif
chmod a+x configure
%build
# not autoconf configure
./configure \
+ --verbose \
--prefix=%{_prefix} \
--libdir=%{_lib} \
--mandir=%{_mandir} \
--X11-path=/usr \
--cc="%{__cc}" \
- --cpp="%{__cxx}" \
+ --cxx="%{__cxx}" \
--disable-opt \
- %{!?with_wx:--disable-wx} \
%{?with_amr:--enable-amr} \
- --enable-joystick \
--enable-pic \
--extra-cflags="%{rpmcflags}" \
--extra-ldflags="%{rpmldflags}" \
- --mozdir=%{_browserpluginsdir} \
+ %{?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_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"
+ --enable-joystick
%{!?with_directfb: sed -i 's/CONFIG_DIRECTFB.*/CONFIG_DIRECTFB=no/' config.mak}
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT%{_pkgconfigdir}
-%{__make} install install-lib \
+%{__make} -j1 install install-lib \
DESTDIR=$RPM_BUILD_ROOT
-%{__make} -C applications install \
+%{__make} -j1 -C applications install \
DESTDIR=$RPM_BUILD_ROOT \
MOZILLA_DIR=$RPM_BUILD_ROOT%{_browserpluginsdir}
%files
%defattr(644,root,root,755)
-%doc AUTHORS BUGS Changelog README TODO
+%doc Changelog README.md
%attr(755,root,root) %{_bindir}/MP4Box
%attr(755,root,root) %{_bindir}/MP4Client
+%attr(755,root,root) %{_bindir}/gpac
%attr(755,root,root) %{_libdir}/libgpac.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgpac.so.2
+%attr(755,root,root) %ghost %{_libdir}/libgpac.so.10
%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*
%{_mandir}/man1/mp4client.1*
+%{_desktopdir}/gpac.desktop
+%{_pixmapsdir}/gpac.png
%files devel
%defattr(644,root,root,755)
%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
-
+%if %{with mozilla}
%files -n browser-plugin-%{name}
%defattr(644,root,root,755)
%attr(755,root,root) %{_browserpluginsdir}/nposmozilla.so
%{_browserpluginsdir}/nposmozilla.xpt
+%endif