1 # TODO: review configure options:
3 # - battery-status (BR: upower-devel)
6 %bcond_without introspection # disable introspection
7 %bcond_without wayland # Wayland target
9 # it's not possible to build this with debuginfo on 32bit archs due to
10 # memory constraints during linking
12 %define _enable_debug_packages 0
14 Summary: Port of WebKit embeddable web component to GTK+ 3
15 Summary(pl.UTF-8): Port osadzalnego komponentu WWW WebKit do GTK+ 3
17 # note: for 2.6.x series see gtk-webkit4
22 Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
23 # Source0-md5: 24a25ccc30a7914ae50922aedf24b7bc
24 Patch0: atomic-ops.patch
27 Patch3: %{name}-icu59.patch
29 URL: http://webkitgtk.org/
30 BuildRequires: /usr/bin/ld.gold
31 BuildRequires: EGL-devel
32 BuildRequires: OpenGL-GLX-devel
33 BuildRequires: at-spi2-core-devel >= 2.6.0
34 BuildRequires: autoconf >= 2.60
35 BuildRequires: automake
36 BuildRequires: bison >= 1.875
37 BuildRequires: cairo-devel >= 1.10
38 BuildRequires: enchant-devel >= 0.22
39 BuildRequires: flex >= 2.5.33
40 BuildRequires: fontconfig-devel >= 2.5.0
41 BuildRequires: freetype-devel >= 1:2.1.8
42 BuildRequires: gcc-c++ >= 6:4.7
43 BuildRequires: geoclue2-devel >= 2.1.5
44 BuildRequires: gettext-tools
45 BuildRequires: glib2-devel >= 1:2.36.0
46 BuildRequires: glibc-misc
47 %{?with_introspection:BuildRequires: gobject-introspection-devel >= 1.32.0}
49 BuildRequires: gstreamer-devel >= 1.0.3
50 BuildRequires: gstreamer-plugins-base-devel >= 1.0.3
51 BuildRequires: libstdc++-devel >= 6:4.7
52 # GTK+ 2.x for webkit2 plugin process; GTK+ 3 for base GUI
53 BuildRequires: gtk+2-devel >= 2:2.24.10
54 BuildRequires: gtk+3-devel >= 3.10.0
55 BuildRequires: gtk-doc >= 1.10
56 BuildRequires: harfbuzz-devel >= 0.9.7
57 BuildRequires: harfbuzz-icu-devel >= 0.9.7
59 BuildRequires: libatomic-devel
61 BuildRequires: libicu-devel >= 59
62 BuildRequires: libjpeg-devel
63 BuildRequires: libpng-devel
64 BuildRequires: libsecret-devel
65 BuildRequires: libsoup-devel >= 2.42.0
66 BuildRequires: libstdc++-devel
67 # libtool with -fuse-ld= gcc option support
68 BuildRequires: libtool >= 2:2.4.2-13
69 BuildRequires: libwebp-devel
70 BuildRequires: libxml2-devel >= 1:2.6.30
71 BuildRequires: libxslt-devel >= 1.1.7
72 BuildRequires: pango-devel >= 1:1.32.0
73 BuildRequires: perl-base
74 BuildRequires: pkgconfig
76 BuildRequires: rpmbuild(macros) >= 1.592
78 BuildRequires: sqlite3-devel >= 3
79 BuildRequires: tar >= 1:1.22
80 BuildRequires: udev-glib-devel
81 BuildRequires: xorg-lib-libXcomposite-devel
82 BuildRequires: xorg-lib-libXdamage-devel
83 BuildRequires: xorg-lib-libXrender-devel
84 BuildRequires: xorg-lib-libXt-devel
86 BuildRequires: zlib-devel
87 Requires: cairo >= 1.10
88 Requires: enchant >= 0.22
89 Requires: fontconfig-libs >= 2.5.0
90 Requires: freetype >= 1:2.1.8
91 Requires: glib2 >= 1:2.36.0
92 Requires: gstreamer >= 1.0.3
93 Requires: gstreamer-plugins-base >= 1.0.3
94 Requires: gtk+2 >= 2:2.24.10
95 Requires: gtk+3 >= 3.10.0
96 Requires: harfbuzz >= 0.9.7
97 Requires: libsoup >= 2.42.0
98 Requires: libxml2 >= 1:2.6.30
99 Requires: libxslt >= 1.1.7
100 Requires: pango >= 1:1.32.0
101 %{?with_introspection:Conflicts: gir-repository < 0.6.5-7}
102 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
104 # __once_call, __once_called non-function symbols from libstdc++
105 %define skip_post_check_so lib.*gtk-3.0.*
108 gtk-webkit3 is a port of the WebKit embeddable web component to GTK+
111 %description -l pl.UTF-8
112 gtk-webkit3 to port osadzalnego komponentu WWW WebKit do GTK+ 3.
115 Summary: Development files for WebKit for GTK+ 3
116 Summary(pl.UTF-8): Pliki programistyczne komponentu WebKit dla GTK+ 3
117 Group: X11/Development/Libraries
118 Requires: %{name} = %{version}-%{release}
119 Requires: glib2-devel >= 1:2.36.0
120 Requires: gtk+3-devel >= 3.10.0
121 Requires: libsoup-devel >= 2.42.0
122 Requires: libstdc++-devel
125 Development files for WebKit for GTK+ 3.
127 %description devel -l pl.UTF-8
128 Pliki programistyczne komponentu WebKit dla GTK+ 3.
131 Summary: WebKit API documentation
132 Summary(pl.UTF-8): Dokumentacja API WebKita
134 Requires: gtk-doc-common
135 %if "%{_rpmversion}" >= "5"
140 WebKit API documentation.
142 %description apidocs -l pl.UTF-8
143 Dokumentacja API WebKita.
146 %setup -q -n webkitgtk-%{version}
157 %{__aclocal} -I Source/autotools
161 %if "%{cxx_version}" >= "4.9"
162 CXXFLAGS="%{rpmcxxflags} -fno-delete-null-pointer-checks"
166 LDFLAGS="%{rpmldflags} -fuse-ld=gold" \
168 LDFLAGS="%{rpmldflags} -fuse-ld=bfd -Wl,--no-keep-memory" \
171 --disable-silent-rules \
172 --enable-geolocation \
174 %{__enable_disable introspection} \
175 %{!?with_wayland:--disable-wayland-target} \
178 --with-html-dir=%{_gtkdocdir}
183 rm -rf $RPM_BUILD_ROOT
186 DESTDIR=$RPM_BUILD_ROOT
188 %{__rm} $RPM_BUILD_ROOT%{_libdir}/lib*.la
189 %{__rm} $RPM_BUILD_ROOT%{_libdir}/webkit2gtk-3.0/injected-bundle/*.la
191 %find_lang WebKitGTK-3.0
194 rm -rf $RPM_BUILD_ROOT
196 %post -p /sbin/ldconfig
197 %postun -p /sbin/ldconfig
199 %files -f WebKitGTK-3.0.lang
200 %defattr(644,root,root,755)
202 %attr(755,root,root) %{_bindir}/jsc-3
203 %attr(755,root,root) %{_libexecdir}/WebKitNetworkProcess
204 %attr(755,root,root) %{_libexecdir}/WebKitPluginProcess
205 %attr(755,root,root) %{_libexecdir}/WebKitWebProcess
206 %attr(755,root,root) %{_libdir}/libwebkitgtk-3.0.so.*.*.*
207 %attr(755,root,root) %ghost %{_libdir}/libwebkitgtk-3.0.so.0
208 %attr(755,root,root) %{_libdir}/libwebkit2gtk-3.0.so.*.*.*
209 %attr(755,root,root) %ghost %{_libdir}/libwebkit2gtk-3.0.so.25
210 %attr(755,root,root) %{_libdir}/libjavascriptcoregtk-3.0.so.*.*.*
211 %attr(755,root,root) %ghost %{_libdir}/libjavascriptcoregtk-3.0.so.0
212 %if %{with introspection}
213 %{_libdir}/girepository-1.0/JavaScriptCore-3.0.typelib
214 %{_libdir}/girepository-1.0/WebKit-3.0.typelib
215 %{_libdir}/girepository-1.0/WebKit2-3.0.typelib
216 %{_libdir}/girepository-1.0/WebKit2WebExtension-3.0.typelib
218 %dir %{_libdir}/webkit2gtk-3.0
219 %dir %{_libdir}/webkit2gtk-3.0/injected-bundle
220 %attr(755,root,root) %{_libdir}/webkit2gtk-3.0/injected-bundle/libwebkit2gtkinjectedbundle.so
221 %dir %{_datadir}/webkitgtk-3.0
222 %{_datadir}/webkitgtk-3.0/images
223 %{_datadir}/webkitgtk-3.0/resources
226 %defattr(644,root,root,755)
227 %attr(755,root,root) %{_libdir}/libwebkitgtk-3.0.so
228 %attr(755,root,root) %{_libdir}/libwebkit2gtk-3.0.so
229 %attr(755,root,root) %{_libdir}/libjavascriptcoregtk-3.0.so
230 %if %{with introspection}
231 %{_datadir}/gir-1.0/JavaScriptCore-3.0.gir
232 %{_datadir}/gir-1.0/WebKit-3.0.gir
233 %{_datadir}/gir-1.0/WebKit2-3.0.gir
234 %{_datadir}/gir-1.0/WebKit2WebExtension-3.0.gir
236 %{_includedir}/webkitgtk-3.0
237 %{_pkgconfigdir}/javascriptcoregtk-3.0.pc
238 %{_pkgconfigdir}/webkitgtk-3.0.pc
239 %{_pkgconfigdir}/webkit2gtk-3.0.pc
240 %{_pkgconfigdir}/webkit2gtk-web-extension-3.0.pc
243 %defattr(644,root,root,755)
244 %{_gtkdocdir}/webkitgtk
245 %{_gtkdocdir}/webkit2gtk
246 %{_gtkdocdir}/webkitdomgtk