# TODO: review configure options:
-# - gamepad, web-audio
+# - gamepad
# - battery-status (BR: upower-devel)
#
# Conditional build:
%bcond_without introspection # disable introspection
+%bcond_without wayland # Wayland target
#
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: 2.2.1
-Release: 2
+# note: for 2.6.x series see gtk-webkit4
+Version: 2.4.11
+Release: 3
License: BSD-like
Group: X11/Libraries
Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
-# Source0-md5: f5decdd76b2c08ab6e01ac47342f680e
-Patch0: sync-builtins.patch
+# Source0-md5: 24a25ccc30a7914ae50922aedf24b7bc
+Patch0: atomic-ops.patch
+Patch1: x32.patch
+Patch2: abs.patch
URL: http://webkitgtk.org/
+BuildRequires: /usr/bin/ld.gold
BuildRequires: EGL-devel
BuildRequires: OpenGL-GLX-devel
BuildRequires: at-spi2-core-devel >= 2.6.0
BuildRequires: fontconfig-devel >= 2.5.0
BuildRequires: freetype-devel >= 1:2.1.8
BuildRequires: gcc-c++ >= 6:4.7
-BuildRequires: geoclue-devel
-BuildRequires: gettext-devel
+BuildRequires: geoclue2-devel >= 2.1.5
+BuildRequires: gettext-tools
BuildRequires: glib2-devel >= 1:2.36.0
BuildRequires: glibc-misc
%{?with_introspection:BuildRequires: gobject-introspection-devel >= 1.32.0}
BuildRequires: gperf
BuildRequires: gstreamer-devel >= 1.0.3
BuildRequires: gstreamer-plugins-base-devel >= 1.0.3
+BuildRequires: libstdc++-devel >= 6:4.7
# GTK+ 2.x for webkit2 plugin process; GTK+ 3 for base GUI
BuildRequires: gtk+2-devel >= 2:2.24.10
BuildRequires: gtk+3-devel >= 3.10.0
BuildRequires: gtk-doc >= 1.10
BuildRequires: harfbuzz-devel >= 0.9.7
BuildRequires: harfbuzz-icu-devel >= 0.9.7
+%ifarch i386 i486
+BuildRequires: libatomic-devel
+%endif
BuildRequires: libicu-devel >= 4.2.1
BuildRequires: libjpeg-devel
BuildRequires: libpng-devel
BuildRequires: xorg-lib-libXt-devel
BuildRequires: xz
BuildRequires: zlib-devel
-BuildRequires: /usr/bin/ld.gold
Requires: cairo >= 1.10
Requires: enchant >= 0.22
Requires: fontconfig-libs >= 2.5.0
%{?with_introspection:Conflicts: gir-repository < 0.6.5-7}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+# __once_call, __once_called non-function symbols from libstdc++
+%define skip_post_check_so lib.*gtk-3.0.*
+
%description
-gtk-webkit3 is a port of the WebKit embeddable web component to GTK+ 3.
+gtk-webkit3 is a port of the WebKit embeddable web component to GTK+
+3.
%description -l pl.UTF-8
gtk-webkit3 to port osadzalnego komponentu WWW WebKit do GTK+ 3.
Summary(pl.UTF-8): Dokumentacja API WebKita
Group: Documentation
Requires: gtk-doc-common
+%if "%{_rpmversion}" >= "5"
+BuildArch: noarch
+%endif
%description apidocs
WebKit API documentation.
%prep
%setup -q -n webkitgtk-%{version}
+%ifarch i386 i486
%patch0 -p1
+%endif
+%patch1 -p1
+%patch2 -p1
%build
%{__libtoolize}
%{__autoheader}
%{__automake}
%configure \
+%ifarch %{x8664}
LDFLAGS="%{rpmldflags} -fuse-ld=gold" \
+%else
+ LDFLAGS="%{rpmldflags} -fuse-ld=bfd -Wl,--no-keep-memory" \
+%endif
--disable-gtk-doc \
--disable-silent-rules \
--enable-geolocation \
--enable-glx \
%{__enable_disable introspection} \
+ %{!?with_wayland:--disable-wayland-target} \
--enable-webgl \
--with-gtk=3.0 \
--with-html-dir=%{_gtkdocdir}
%defattr(644,root,root,755)
%doc ChangeLog NEWS
%attr(755,root,root) %{_bindir}/jsc-3
+%attr(755,root,root) %{_libexecdir}/WebKitNetworkProcess
%attr(755,root,root) %{_libexecdir}/WebKitPluginProcess
%attr(755,root,root) %{_libexecdir}/WebKitWebProcess
%attr(755,root,root) %{_libdir}/libwebkitgtk-3.0.so.*.*.*
%{_libdir}/girepository-1.0/JavaScriptCore-3.0.typelib
%{_libdir}/girepository-1.0/WebKit-3.0.typelib
%{_libdir}/girepository-1.0/WebKit2-3.0.typelib
+%{_libdir}/girepository-1.0/WebKit2WebExtension-3.0.typelib
%endif
%dir %{_libdir}/webkit2gtk-3.0
%dir %{_libdir}/webkit2gtk-3.0/injected-bundle
%{_datadir}/gir-1.0/JavaScriptCore-3.0.gir
%{_datadir}/gir-1.0/WebKit-3.0.gir
%{_datadir}/gir-1.0/WebKit2-3.0.gir
+%{_datadir}/gir-1.0/WebKit2WebExtension-3.0.gir
%endif
%{_includedir}/webkitgtk-3.0
+%{_pkgconfigdir}/javascriptcoregtk-3.0.pc
%{_pkgconfigdir}/webkitgtk-3.0.pc
%{_pkgconfigdir}/webkit2gtk-3.0.pc
-%{_pkgconfigdir}/javascriptcoregtk-3.0.pc
+%{_pkgconfigdir}/webkit2gtk-web-extension-3.0.pc
%files apidocs
%defattr(644,root,root,755)
%{_gtkdocdir}/webkitgtk
%{_gtkdocdir}/webkit2gtk
+%{_gtkdocdir}/webkitdomgtk