]>
Commit | Line | Data |
---|---|---|
91c1decc | 1 | # TODO: review configure options: |
e761a49a JB |
2 | # - GAMEPAD |
3 | # - BATTERY_STATUS (BR: upower-devel) | |
4 | # - FTL_JIT (BR: llvm, libcxxabi?) | |
f8e56294 AF |
5 | # |
6 | # Conditional build: | |
7 | %bcond_without introspection # disable introspection | |
e761a49a JB |
8 | %bcond_with seccomp # seccomp filters (broken as of 2.6.5) |
9 | %bcond_with wayland # Wayland target (broken as of 2.6.[0-5]) | |
f8e56294 | 10 | # |
97c9d259 JB |
11 | Summary: Port of WebKit embeddable web component to GTK+ 3 |
12 | Summary(pl.UTF-8): Port osadzalnego komponentu WWW WebKit do GTK+ 3 | |
e761a49a JB |
13 | Name: gtk-webkit4 |
14 | Version: 2.6.5 | |
15 | Release: 0.1 | |
f8e56294 AF |
16 | License: BSD-like |
17 | Group: X11/Libraries | |
9130be70 | 18 | Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz |
e761a49a | 19 | # Source0-md5: 44addb5ccdace97642cb7656382293bb |
b0d6d1ed | 20 | Patch0: atomic-ops.patch |
f8e56294 | 21 | URL: http://webkitgtk.org/ |
8f69f015 | 22 | BuildRequires: /usr/bin/ld.gold |
e3d059d0 JB |
23 | BuildRequires: EGL-devel |
24 | BuildRequires: OpenGL-GLX-devel | |
bbd2fab2 | 25 | BuildRequires: at-spi2-core-devel >= 2.6.0 |
e761a49a JB |
26 | BuildRequires: atk-devel |
27 | BuildRequires: bison >= 2.3 | |
28 | BuildRequires: cairo-devel >= 1.10.2 | |
29 | BuildRequires: cmake >= 2.8.8 | |
f8e56294 | 30 | BuildRequires: enchant-devel >= 0.22 |
e761a49a JB |
31 | BuildRequires: flex >= 2.5.34 |
32 | BuildRequires: fontconfig-devel >= 2.8.0 | |
33 | BuildRequires: freetype-devel >= 1:2.4.2 | |
e3d059d0 | 34 | BuildRequires: gcc-c++ >= 6:4.7 |
b19bf66f | 35 | BuildRequires: geoclue2-devel >= 2.1.5 |
e761a49a | 36 | BuildRequires: gettext-devel |
bbd2fab2 | 37 | BuildRequires: glib2-devel >= 1:2.36.0 |
f8e56294 | 38 | BuildRequires: glibc-misc |
e761a49a | 39 | BuildRequires: gnutls-devel >= 3.0.0 |
bbd2fab2 | 40 | %{?with_introspection:BuildRequires: gobject-introspection-devel >= 1.32.0} |
e761a49a | 41 | BuildRequires: gperf >= 3.0.1 |
bbd2fab2 MB |
42 | BuildRequires: gstreamer-devel >= 1.0.3 |
43 | BuildRequires: gstreamer-plugins-base-devel >= 1.0.3 | |
8f69f015 | 44 | BuildRequires: libstdc++-devel >= 6:4.7 |
e3d059d0 JB |
45 | # GTK+ 2.x for webkit2 plugin process; GTK+ 3 for base GUI |
46 | BuildRequires: gtk+2-devel >= 2:2.24.10 | |
e761a49a | 47 | BuildRequires: gtk+3-devel >= 3.12.0 |
f8e56294 | 48 | BuildRequires: gtk-doc >= 1.10 |
bbd2fab2 | 49 | BuildRequires: harfbuzz-devel >= 0.9.7 |
333087b6 | 50 | BuildRequires: harfbuzz-icu-devel >= 0.9.7 |
ac186a9f | 51 | %ifarch i386 i486 |
b0d6d1ed JR |
52 | BuildRequires: libatomic-devel |
53 | %endif | |
f8e56294 AF |
54 | BuildRequires: libicu-devel >= 4.2.1 |
55 | BuildRequires: libjpeg-devel | |
56 | BuildRequires: libpng-devel | |
bbd2fab2 MB |
57 | BuildRequires: libsecret-devel |
58 | BuildRequires: libsoup-devel >= 2.42.0 | |
f8e56294 | 59 | BuildRequires: libstdc++-devel |
bbd2fab2 | 60 | BuildRequires: libwebp-devel |
e761a49a | 61 | BuildRequires: libxml2-devel >= 1:2.8.0 |
f8e56294 | 62 | BuildRequires: libxslt-devel >= 1.1.7 |
bbd2fab2 | 63 | BuildRequires: pango-devel >= 1:1.32.0 |
e761a49a | 64 | BuildRequires: perl-base >= 1:5.10.0 |
f8e56294 | 65 | BuildRequires: pkgconfig |
e761a49a | 66 | BuildRequires: python >= 1:2.6.0 |
c66a3aee | 67 | BuildRequires: rpmbuild(macros) >= 1.592 |
e761a49a | 68 | BuildRequires: ruby >= 1.8.7 |
333087b6 | 69 | BuildRequires: sqlite3-devel >= 3 |
09aa776b | 70 | BuildRequires: tar >= 1:1.22 |
e761a49a | 71 | #BuildRequires: udev-glib-devel |
e9e9ae8f | 72 | BuildRequires: xorg-lib-libXcomposite-devel |
e3d059d0 | 73 | BuildRequires: xorg-lib-libXdamage-devel |
cf9395dc | 74 | BuildRequires: xorg-lib-libXrender-devel |
09ca9f01 | 75 | BuildRequires: xorg-lib-libXt-devel |
09aa776b | 76 | BuildRequires: xz |
09ca9f01 | 77 | BuildRequires: zlib-devel |
e761a49a | 78 | Requires: cairo >= 1.10.2 |
f8e56294 | 79 | Requires: enchant >= 0.22 |
e761a49a JB |
80 | Requires: fontconfig-libs >= 2.8.0 |
81 | Requires: freetype >= 1:2.4.2 | |
bbd2fab2 MB |
82 | Requires: glib2 >= 1:2.36.0 |
83 | Requires: gstreamer >= 1.0.3 | |
84 | Requires: gstreamer-plugins-base >= 1.0.3 | |
e3d059d0 | 85 | Requires: gtk+2 >= 2:2.24.10 |
e761a49a | 86 | Requires: gtk+3 >= 3.12.0 |
e3d059d0 | 87 | Requires: harfbuzz >= 0.9.7 |
bbd2fab2 | 88 | Requires: libsoup >= 2.42.0 |
e761a49a | 89 | Requires: libxml2 >= 1:2.8.0 |
f8e56294 | 90 | Requires: libxslt >= 1.1.7 |
bbd2fab2 | 91 | Requires: pango >= 1:1.32.0 |
f8e56294 AF |
92 | %{?with_introspection:Conflicts: gir-repository < 0.6.5-7} |
93 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
94 | ||
b19bf66f | 95 | # __once_call, __once_called non-function symbols from libstdc++ |
3e7920f5 | 96 | %define skip_post_check_so lib.*gtk-4.0.* |
b19bf66f | 97 | |
f8e56294 | 98 | %description |
3e7920f5 | 99 | gtk-webkit4 is a port of the WebKit embeddable web component to GTK+ |
b19bf66f | 100 | 3. |
f8e56294 AF |
101 | |
102 | %description -l pl.UTF-8 | |
3e7920f5 | 103 | gtk-webkit4 to port osadzalnego komponentu WWW WebKit do GTK+ 3. |
f8e56294 AF |
104 | |
105 | %package devel | |
97c9d259 JB |
106 | Summary: Development files for WebKit for GTK+ 3 |
107 | Summary(pl.UTF-8): Pliki programistyczne komponentu WebKit dla GTK+ 3 | |
f8e56294 AF |
108 | Group: X11/Development/Libraries |
109 | Requires: %{name} = %{version}-%{release} | |
bbd2fab2 | 110 | Requires: glib2-devel >= 1:2.36.0 |
e761a49a | 111 | Requires: gtk+3-devel >= 3.12.0 |
bbd2fab2 | 112 | Requires: libsoup-devel >= 2.42.0 |
0135bc91 | 113 | Requires: libstdc++-devel |
f8e56294 AF |
114 | |
115 | %description devel | |
97c9d259 | 116 | Development files for WebKit for GTK+ 3. |
f8e56294 AF |
117 | |
118 | %description devel -l pl.UTF-8 | |
97c9d259 | 119 | Pliki programistyczne komponentu WebKit dla GTK+ 3. |
f8e56294 | 120 | |
09ca9f01 MB |
121 | %package apidocs |
122 | Summary: WebKit API documentation | |
123 | Summary(pl.UTF-8): Dokumentacja API WebKita | |
124 | Group: Documentation | |
125 | Requires: gtk-doc-common | |
8f69f015 ER |
126 | %if "%{_rpmversion}" >= "5" |
127 | BuildArch: noarch | |
128 | %endif | |
09ca9f01 MB |
129 | |
130 | %description apidocs | |
131 | WebKit API documentation. | |
132 | ||
133 | %description apidocs -l pl.UTF-8 | |
134 | Dokumentacja API WebKita. | |
135 | ||
f8e56294 | 136 | %prep |
9130be70 | 137 | %setup -q -n webkitgtk-%{version} |
ac186a9f | 138 | %ifarch i386 i486 |
b0d6d1ed JR |
139 | %patch0 -p1 |
140 | %endif | |
97c9d259 | 141 | |
f8e56294 | 142 | %build |
e761a49a JB |
143 | install -d build |
144 | cd build | |
145 | %cmake .. \ | |
146 | -DENABLE_CREDENTIAL_STORAGE=ON \ | |
147 | -DENABLE_GEOLOCATION=ON \ | |
148 | -DENABLE_GTKDOC=ON \ | |
149 | %{?with_seccomp:-DENABLE_SECCOMP_FILTERS=ON} \ | |
150 | %{?with_wayland:-DENABLE_WAYLAND_TARGET=ON} \ | |
151 | -DENABLE_VIDEO=ON \ | |
152 | -DENABLE_WEB_AUDIO=ON \ | |
153 | -DENABLE_WEBGL=ON \ | |
154 | -DPORT=GTK \ | |
155 | -DSHOULD_INSTALL_JS_SHELL=ON | |
156 | ||
157 | #configure \ | |
158 | # LDFLAGS="%{rpmldflags} -fuse-ld=gold" \ | |
159 | # --disable-gtk-doc \ | |
160 | # --disable-silent-rules \ | |
161 | # --enable-geolocation \ | |
162 | # --enable-glx \ | |
163 | # %{__enable_disable introspection} \ | |
164 | # %{!?with_wayland:--disable-wayland-target} \ | |
165 | # --enable-webgl \ | |
166 | # --with-gtk=3.0 \ | |
167 | # --with-html-dir=%{_gtkdocdir} | |
168 | ||
169 | %{__make} | |
f8e56294 AF |
170 | |
171 | %install | |
172 | rm -rf $RPM_BUILD_ROOT | |
173 | ||
e761a49a | 174 | %{__make} -C build install \ |
f8e56294 AF |
175 | DESTDIR=$RPM_BUILD_ROOT |
176 | ||
3e7920f5 JB |
177 | %if "%{_gtkdocdir}" != "%{_datadir}/gtk-doc/html" |
178 | install -d $RPM_BUILD_ROOT%{_gtkdocdir} | |
179 | %{__mv} $RPM_BUILD_ROOT%{_datadir}/gtk-doc/html/* $RPM_BUILD_ROOT%{_gtkdocdir} | |
180 | %endif | |
181 | ||
182 | %find_lang WebKit2GTK-4.0 | |
f8e56294 AF |
183 | |
184 | %clean | |
185 | rm -rf $RPM_BUILD_ROOT | |
186 | ||
09aa776b JB |
187 | %post -p /sbin/ldconfig |
188 | %postun -p /sbin/ldconfig | |
f8e56294 | 189 | |
3e7920f5 | 190 | %files -f WebKit2GTK-4.0.lang |
f8e56294 | 191 | %defattr(644,root,root,755) |
e761a49a JB |
192 | %doc NEWS |
193 | %attr(755,root,root) %{_bindir}/jsc | |
194 | %attr(755,root,root) %{_libdir}/libwebkit2gtk-4.0.so.*.*.* | |
195 | %attr(755,root,root) %ghost %{_libdir}/libwebkit2gtk-4.0.so.37 | |
196 | %attr(755,root,root) %{_libdir}/libjavascriptcoregtk-4.0.so.*.*.* | |
197 | %attr(755,root,root) %ghost %{_libdir}/libjavascriptcoregtk-4.0.so.18 | |
f8e56294 | 198 | %if %{with introspection} |
e761a49a JB |
199 | %{_libdir}/girepository-1.0/JavaScriptCore-4.0.typelib |
200 | %{_libdir}/girepository-1.0/WebKit2-4.0.typelib | |
201 | %{_libdir}/girepository-1.0/WebKit2WebExtension-4.0.typelib | |
f8e56294 | 202 | %endif |
e761a49a JB |
203 | %dir %{_libdir}/webkit2gtk-4.0 |
204 | %attr(755,root,root) %{_libdir}/webkit2gtk-4.0/WebKitNetworkProcess | |
205 | %attr(755,root,root) %{_libdir}/webkit2gtk-4.0/WebKitPluginProcess | |
206 | %attr(755,root,root) %{_libdir}/webkit2gtk-4.0/WebKitPluginProcess2 | |
207 | %attr(755,root,root) %{_libdir}/webkit2gtk-4.0/WebKitWebProcess | |
208 | %dir %{_libdir}/webkit2gtk-4.0/injected-bundle | |
209 | %attr(755,root,root) %{_libdir}/webkit2gtk-4.0/injected-bundle/libwebkit2gtkinjectedbundle.so | |
f8e56294 AF |
210 | |
211 | %files devel | |
212 | %defattr(644,root,root,755) | |
e761a49a JB |
213 | %attr(755,root,root) %{_libdir}/libwebkit2gtk-4.0.so |
214 | %attr(755,root,root) %{_libdir}/libjavascriptcoregtk-4.0.so | |
f8e56294 | 215 | %if %{with introspection} |
e761a49a JB |
216 | %{_datadir}/gir-1.0/JavaScriptCore-4.0.gir |
217 | %{_datadir}/gir-1.0/WebKit2-4.0.gir | |
218 | %{_datadir}/gir-1.0/WebKit2WebExtension-4.0.gir | |
f8e56294 | 219 | %endif |
e761a49a JB |
220 | %{_includedir}/webkitgtk-4.0 |
221 | %{_pkgconfigdir}/javascriptcoregtk-4.0.pc | |
222 | %{_pkgconfigdir}/webkit2gtk-4.0.pc | |
223 | %{_pkgconfigdir}/webkit2gtk-web-extension-4.0.pc | |
09ca9f01 MB |
224 | |
225 | %files apidocs | |
226 | %defattr(644,root,root,755) | |
e761a49a JB |
227 | %{_gtkdocdir}/webkit2gtk-4.0 |
228 | %{_gtkdocdir}/webkitdomgtk-4.0 |