-# TODO:
-# - review configure options
+# TODO: review configure options:
+# - notifications, gamepad, dom-mutation-observers, input-type-color, media-source, media-stream, mhtml, web-audio, web-timing, touch-icon-loading, register-protocol-handler, css-filters, css-compositing
+# - directory-upload
+# - APIs: page-visibility-api, indexed-database, input-speech, scripted-speech, image-resizer, quota, animation-api
+# - HTML5: microdata, datagrid, data-transfer-items, video-track, file-system, style-scoped
#
# Conditional build:
%bcond_without introspection # disable introspection
#
-Summary: Port of WebKit embeddable web component to GTK+
-Summary(pl.UTF-8): Port osadzalnego komponentu WWW WebKit do GTK+
+Summary: Port of WebKit embeddable web component to GTK+ 3
+Summary(pl.UTF-8): Port osadzalnego komponentu WWW WebKit do GTK+ 3
Name: gtk-webkit3
-Version: 1.3.13
-Release: 1
+Version: 1.10.0
+Release: 2
License: BSD-like
Group: X11/Libraries
-Source0: http://webkitgtk.org/webkit-%{version}.tar.gz
-# Source0-md5: 984adaafac545a89c24351fd4dbd743c
+Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
+# Source0-md5: 6da450ec7793c0a7873d8c8c2cae4eb8
URL: http://webkitgtk.org/
-BuildRequires: autoconf >= 2.59
+BuildRequires: OpenGL-GLU-devel
+BuildRequires: at-spi2-core-devel >= 2.2.1
+BuildRequires: autoconf >= 2.60
BuildRequires: automake
-BuildRequires: bison
-BuildRequires: cairo-devel >= 1.6
+BuildRequires: bison >= 1.875
+BuildRequires: cairo-devel >= 1.10
BuildRequires: enchant-devel >= 0.22
BuildRequires: flex >= 2.5.33
BuildRequires: fontconfig-devel >= 2.4.0
BuildRequires: freetype-devel >= 1:2.1.8
BuildRequires: geoclue-devel
BuildRequires: gettext-devel
-BuildRequires: glib2-devel >= 1:2.28.0
+BuildRequires: glib2-devel >= 1:2.32.0
BuildRequires: glibc-misc
%{?with_introspection:BuildRequires: gobject-introspection-devel >= 0.10.0}
BuildRequires: gperf
-BuildRequires: gstreamer-devel >= 0.10
-BuildRequires: gstreamer-plugins-base-devel >= 0.10.25
-BuildRequires: gtk+3-devel >= 3.0.0
+BuildRequires: gstreamer-devel >= 1.0.0
+BuildRequires: gstreamer-plugins-base-devel >= 1.0.0
+BuildRequires: gtk+3-devel >= 3.4.0
BuildRequires: gtk-doc >= 1.10
BuildRequires: libicu-devel >= 4.2.1
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
-BuildRequires: libsoup-devel >= 2.33.6
+BuildRequires: libsoup-devel >= 2.40.0
BuildRequires: libstdc++-devel
BuildRequires: libtool >= 2:1.5
BuildRequires: libxml2-devel >= 1:2.6.30
BuildRequires: libxslt-devel >= 1.1.7
-BuildRequires: pango-devel >= 1:1.12
+BuildRequires: pango-devel >= 1:1.21.0
BuildRequires: pkgconfig
BuildRequires: rpmbuild(macros) >= 1.592
-BuildRequires: sqlite3-devel
-BuildRequires: xorg-lib-libXft-devel >= 2.0.0
+BuildRequires: sqlite3-devel >= 3.0
+BuildRequires: tar >= 1:1.22
+BuildRequires: xorg-lib-libXcomposite-devel
+BuildRequires: xorg-lib-libXrender-devel
BuildRequires: xorg-lib-libXt-devel
-Requires(post,postun): glib2 >= 1:2.26.0
-Requires: cairo >= 1.6
+BuildRequires: xz
+BuildRequires: zlib-devel
+Requires: cairo >= 1.10
Requires: enchant >= 0.22
-Requires: gstreamer-plugins-base >= 0.10.25
-Requires: gtk+3 >= 3.0.0
-Requires: libsoup >= 2.33.6
+Requires: glib2 >= 1:2.32.0
+Requires: gstreamer >= 1.0.0
+Requires: gstreamer-plugins-base >= 1.0.0
+Requires: gtk+3 >= 3.4.0
+Requires: libsoup >= 2.40.0
Requires: libxml2 >= 1:2.6.30
Requires: libxslt >= 1.1.7
-Requires: pango >= 1:1.12
+Requires: pango >= 1:1.21.0
%{?with_introspection:Conflicts: gir-repository < 0.6.5-7}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description
-webkit is a port of the WebKit embeddable web component to GTK+.
+gtk-webkit3 is a port of the WebKit embeddable web component to GTK+ 3.
%description -l pl.UTF-8
-webkit to port osadzalnego komponentu WWW WebKit do GTK+.
+gtk-webkit3 to port osadzalnego komponentu WWW WebKit do GTK+ 3.
%package devel
-Summary: Development files for WebKit
-Summary(pl.UTF-8): Pliki programistyczne WebKit
+Summary: Development files for WebKit for GTK+ 3
+Summary(pl.UTF-8): Pliki programistyczne komponentu WebKit dla GTK+ 3
Group: X11/Development/Libraries
Requires: %{name} = %{version}-%{release}
-Requires: glib2-devel >= 1:2.28.0
-Requires: gtk+3-devel >= 3.0.0
-Requires: libsoup-devel >= 2.33.6
+Requires: glib2-devel >= 1:2.32.0
+Requires: gtk+3-devel >= 3.4.0
+Requires: libsoup-devel >= 2.40.0
%description devel
-Development files for WebKit.
+Development files for WebKit for GTK+ 3.
%description devel -l pl.UTF-8
-Pliki programistyczne WebKit.
+Pliki programistyczne komponentu WebKit dla GTK+ 3.
+
+%package apidocs
+Summary: WebKit API documentation
+Summary(pl.UTF-8): Dokumentacja API WebKita
+Group: Documentation
+Requires: gtk-doc-common
+
+%description apidocs
+WebKit API documentation.
+
+%description apidocs -l pl.UTF-8
+Dokumentacja API WebKita.
%prep
-%setup -q -n webkit-%{version}
+%setup -q -n webkitgtk-%{version}
%build
%{__gtkdocize}
%{__autoheader}
%{__automake}
%{__autoconf}
+# replace -g2 with -g1 to not run into 4 GB ar format limit
+# https://bugs.webkit.org/show_bug.cgi?id=91154
+# http://sourceware.org/bugzilla/show_bug.cgi?id=14625
+export CFLAGS="%(echo %{rpmcflags} | sed 's/ -g2/ -g1/g')"
+export CXXFLAGS="%(echo %{rpmcxxflags} | sed 's/ -g2/ -g1/g')"
%configure \
--disable-silent-rules \
%{__enable_disable introspection} \
+ --with-gstreamer=1.0 \
--with-gtk=3.0 \
- --enable-3d-transforms \
- --enable-dom-storage \
--enable-geolocation \
- --enable-icon-database \
- --enable-video \
- --with-font-backend=freetype
+ --enable-gtk-doc \
+ --with-html-dir=%{_gtkdocdir}
-%{__make}
+%{__make} -j1
%install
rm -rf $RPM_BUILD_ROOT
%{__make} install \
DESTDIR=$RPM_BUILD_ROOT
-%{__rm} $RPM_BUILD_ROOT%{_libdir}/libwebkitgtk-3.0.la
+%{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
-%find_lang webkit-3.0
+%find_lang webkitgtk-3.0
%clean
rm -rf $RPM_BUILD_ROOT
-%post
-/sbin/ldconfig
-%glib_compile_schemas
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
-%postun
-/sbin/ldconfig
-%glib_compile_schemas
-
-%files -f webkit-3.0.lang
+%files -f webkitgtk-3.0.lang
%defattr(644,root,root,755)
-%doc ChangeLog
+%doc ChangeLog NEWS
%attr(755,root,root) %{_bindir}/jsc-3
+%attr(755,root,root) %{_libexecdir}/WebKitPluginProcess
+%attr(755,root,root) %{_libexecdir}/WebKitWebProcess
%attr(755,root,root) %{_libdir}/libwebkitgtk-3.0.so.*.*.*
%attr(755,root,root) %ghost %{_libdir}/libwebkitgtk-3.0.so.0
+%attr(755,root,root) %{_libdir}/libwebkit2gtk-3.0.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libwebkit2gtk-3.0.so.18
+%attr(755,root,root) %{_libdir}/libjavascriptcoregtk-3.0.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libjavascriptcoregtk-3.0.so.0
%if %{with introspection}
%{_libdir}/girepository-1.0/JSCore-3.0.typelib
%{_libdir}/girepository-1.0/WebKit-3.0.typelib
%endif
-%dir %{_datadir}/webkit-3.0
-%{_datadir}/webkit-3.0/resources
%dir %{_datadir}/webkitgtk-3.0
%{_datadir}/webkitgtk-3.0/images
+%{_datadir}/webkitgtk-3.0/resources
%{_datadir}/webkitgtk-3.0/webinspector
-%{_datadir}/glib-2.0/schemas/org.webkitgtk-3.0.gschema.xml
%files devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libwebkitgtk-3.0.so
+%attr(755,root,root) %{_libdir}/libwebkit2gtk-3.0.so
+%attr(755,root,root) %{_libdir}/libjavascriptcoregtk-3.0.so
%if %{with introspection}
%{_datadir}/gir-1.0/JSCore-3.0.gir
%{_datadir}/gir-1.0/WebKit-3.0.gir
%endif
-%{_includedir}/webkit-3.0
+%{_includedir}/webkitgtk-3.0
%{_pkgconfigdir}/webkitgtk-3.0.pc
+%{_pkgconfigdir}/webkit2gtk-3.0.pc
+%{_pkgconfigdir}/javascriptcoregtk-3.0.pc
+
+%files apidocs
+%defattr(644,root,root,755)
+%{_gtkdocdir}/webkitgtk
+%{_gtkdocdir}/webkit2gtk