You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
336 lines
11 KiB
336 lines
11 KiB
6 years ago
|
## NOTE: Lots of files in various subdirectories have the same name (such as
|
||
|
## "LICENSE") so this short macro allows us to distinguish them by using their
|
||
|
## directory names (from the source tree) as prefixes for the files.
|
||
|
%global add_to_license_files() \
|
||
|
mkdir -p _license_files ; \
|
||
|
cp -p %1 _license_files/$(echo '%1' | sed -e 's!/!.!g')
|
||
|
|
||
|
Name: webkit2gtk3
|
||
|
Version: 2.22.4
|
||
|
Release: 1%{?dist}
|
||
|
Summary: GTK+ Web content engine library
|
||
|
|
||
|
License: LGPLv2
|
||
|
URL: http://www.webkitgtk.org/
|
||
|
Source0: http://webkitgtk.org/releases/webkitgtk-%{version}.tar.xz
|
||
|
|
||
|
# https://bugs.webkit.org/show_bug.cgi?id=162611
|
||
|
Patch0: user-agent-branding.patch
|
||
|
# https://fedoraproject.org/wiki/Packaging:CryptoPolicies
|
||
|
# https://bugs.webkit.org/show_bug.cgi?id=158785
|
||
|
Patch1: fedora-crypto-policy.patch
|
||
|
# https://bugs.webkit.org/show_bug.cgi?id=132333
|
||
|
Patch2: cloop-big-endians.patch
|
||
|
|
||
|
BuildRequires: at-spi2-core-devel
|
||
|
BuildRequires: bison
|
||
|
BuildRequires: brotli-devel
|
||
|
BuildRequires: cairo-devel
|
||
|
BuildRequires: cmake
|
||
|
BuildRequires: enchant-devel
|
||
|
BuildRequires: flex
|
||
|
BuildRequires: fontconfig-devel
|
||
|
BuildRequires: freetype-devel
|
||
|
BuildRequires: geoclue2-devel
|
||
|
BuildRequires: gettext
|
||
|
BuildRequires: glib2-devel
|
||
|
BuildRequires: gnutls-devel
|
||
|
BuildRequires: gobject-introspection-devel
|
||
|
BuildRequires: gperf
|
||
|
BuildRequires: gstreamer1-devel
|
||
|
BuildRequires: gstreamer1-plugins-base-devel
|
||
|
BuildRequires: gstreamer1-plugins-bad-free-devel
|
||
|
BuildRequires: gtk2-devel
|
||
|
BuildRequires: gtk3-devel
|
||
|
BuildRequires: gtk-doc
|
||
|
BuildRequires: harfbuzz-devel
|
||
|
BuildRequires: hyphen-devel
|
||
|
BuildRequires: libicu-devel
|
||
|
BuildRequires: libjpeg-devel
|
||
|
BuildRequires: libnotify-devel
|
||
|
BuildRequires: libpng-devel
|
||
|
BuildRequires: libsecret-devel
|
||
|
BuildRequires: libsoup-devel
|
||
|
BuildRequires: libwebp-devel
|
||
|
BuildRequires: libxslt-devel
|
||
|
BuildRequires: libXt-devel
|
||
|
BuildRequires: libwayland-client-devel
|
||
|
BuildRequires: libwayland-egl-devel
|
||
|
BuildRequires: libwayland-server-devel
|
||
|
BuildRequires: mesa-libEGL-devel
|
||
|
BuildRequires: mesa-libGL-devel
|
||
|
BuildRequires: mesa-libGLES-devel
|
||
|
BuildRequires: pcre-devel
|
||
|
BuildRequires: perl-File-Copy-Recursive
|
||
|
BuildRequires: perl-JSON-PP
|
||
|
BuildRequires: perl-Switch
|
||
|
BuildRequires: ruby
|
||
|
BuildRequires: rubygems
|
||
|
BuildRequires: sqlite-devel
|
||
|
BuildRequires: upower-devel
|
||
|
BuildRequires: woff2-devel
|
||
|
|
||
|
Requires: geoclue2
|
||
|
|
||
|
# Obsolete libwebkit2gtk from the webkitgtk3 package
|
||
|
Obsoletes: libwebkit2gtk < 2.5.0
|
||
|
Provides: libwebkit2gtk = %{version}-%{release}
|
||
|
|
||
|
# This package was renamed, so obsolete the old webkitgtk4 package
|
||
|
Obsoletes: webkitgtk4 < %{version}-%{release}
|
||
|
Provides: webkitgtk4 = %{version}-%{release}
|
||
|
|
||
|
# We're supposed to specify versions here, but these crap Google libs don't do
|
||
|
# normal releases. Accordingly, they're not suitable to be system libs.
|
||
|
Provides: bundled(angle)
|
||
|
|
||
|
# Require the jsc subpackage
|
||
|
Requires: %{name}-jsc%{?_isa} = %{version}-%{release}
|
||
|
|
||
|
# Recommend the support for the GTK+ 2 based NPAPI plugins
|
||
|
#Recommends: %{name}-plugin-process-gtk2%{?_isa} = %{version}-%{release}
|
||
|
|
||
|
# Filter out provides for private libraries
|
||
|
%global __provides_exclude_from ^%{_libdir}/webkit2gtk-4\\.0/.*\\.so$
|
||
|
|
||
|
%description
|
||
|
WebKitGTK+ is the port of the portable web rendering engine WebKit to the
|
||
|
GTK+ platform.
|
||
|
|
||
|
This package contains WebKit2 based WebKitGTK+ for GTK+ 3.
|
||
|
|
||
|
%package devel
|
||
|
Summary: Development files for %{name}
|
||
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
||
|
Requires: %{name}-jsc%{?_isa} = %{version}-%{release}
|
||
|
Requires: %{name}-jsc-devel%{?_isa} = %{version}-%{release}
|
||
|
Obsoletes: webkitgtk4-devel < %{version}-%{release}
|
||
|
Provides: webkitgtk4-devel = %{version}-%{release}
|
||
|
|
||
|
%description devel
|
||
|
The %{name}-devel package contains libraries, build data, and header
|
||
|
files for developing applications that use %{name}.
|
||
|
|
||
|
%package doc
|
||
|
Summary: Documentation files for %{name}
|
||
|
BuildArch: noarch
|
||
|
Requires: %{name} = %{version}-%{release}
|
||
|
Obsoletes: webkitgtk4-doc < %{version}-%{release}
|
||
|
Provides: webkitgtk4-doc = %{version}-%{release}
|
||
|
|
||
|
%description doc
|
||
|
This package contains developer documentation for %{name}.
|
||
|
|
||
|
%package jsc
|
||
|
Summary: JavaScript engine from %{name}
|
||
|
Obsoletes: webkitgtk4-jsc < %{version}-%{release}
|
||
|
Provides: webkitgtk4-jsc = %{version}-%{release}
|
||
|
|
||
|
%description jsc
|
||
|
This package contains JavaScript engine from %{name}.
|
||
|
|
||
|
%package jsc-devel
|
||
|
Summary: Development files for JavaScript engine from %{name}
|
||
|
Requires: %{name}-jsc%{?_isa} = %{version}-%{release}
|
||
|
Obsoletes: webkitgtk4-jsc-devel < %{version}-%{release}
|
||
|
Provides: webkitgtk4-jsc-devel = %{version}-%{release}
|
||
|
|
||
|
%description jsc-devel
|
||
|
The %{name}-jsc-devel package contains libraries, build data, and header
|
||
|
files for developing applications that use JavaScript engine from %{name}.
|
||
|
|
||
|
%package plugin-process-gtk2
|
||
|
Summary: GTK+ 2 based NPAPI plugins support for %{name}
|
||
|
Requires: %{name}-jsc%{?_isa} = %{version}-%{release}
|
||
|
Obsoletes: %{name} < 2.12.0-3
|
||
|
Obsoletes: webkitgtk4-plugin-process-gtk2 < %{version}-%{release}
|
||
|
Provides: webkitgtk4-plugin-process-gtk2 = %{version}-%{release}
|
||
|
|
||
|
%description plugin-process-gtk2
|
||
|
Support for the GTK+ 2 based NPAPI plugins (such as Adobe Flash) for %{name}.
|
||
|
|
||
|
%prep
|
||
|
%setup -q -n webkitgtk-%{version}
|
||
|
%patch0 -p1
|
||
|
%patch1 -p1
|
||
|
%patch2 -p1
|
||
|
|
||
|
# Remove bundled libraries
|
||
|
rm -rf Source/ThirdParty/gtest/
|
||
|
rm -rf Source/ThirdParty/qunit/
|
||
|
|
||
|
%build
|
||
|
# Increase the DIE limit so our debuginfo packages could be size optimized.
|
||
|
# Decreases the size for x86_64 from ~5G to ~1.1G.
|
||
|
# https://bugzilla.redhat.com/show_bug.cgi?id=1456261
|
||
|
%global _dwz_max_die_limit 250000000
|
||
|
# The _dwz_max_die_limit is being overridden by the arch specific ones from the
|
||
|
# redhat-rpm-config so we need to set the arch specific ones as well - now it
|
||
|
# is only needed for x86_64.
|
||
|
%global _dwz_max_die_limit_x86_64 250000000
|
||
|
|
||
|
# Decrease debuginfo even on ix86 because of:
|
||
|
# https://bugs.webkit.org/show_bug.cgi?id=140176
|
||
|
%ifarch s390x %{arm} %{ix86} %{power64} %{mips}
|
||
|
# Decrease debuginfo verbosity to reduce memory consumption even more
|
||
|
%global optflags %(echo %{optflags} | sed 's/-g /-g1 /')
|
||
|
%endif
|
||
|
|
||
|
%global optflags %{optflags} -DUSER_AGENT_GTK_DISTRIBUTOR_NAME=\'\\"PowerEL\\"\'
|
||
|
|
||
|
sed '/if (${CMAKE_CXX_COMPILER_VERSION} VERSION_LESS "6.0.0")/,+2d' -i CMakeLists.txt
|
||
|
sed 's/-std=c++14/-std=c++11/' -i Source/cmake/WebKitCompilerFlags.cmake
|
||
|
|
||
|
|
||
|
mkdir -p %{_target_platform}
|
||
|
pushd %{_target_platform}
|
||
|
%cmake3 \
|
||
|
-DPORT=GTK \
|
||
|
-DCMAKE_BUILD_TYPE=Release \
|
||
|
-DENABLE_GTKDOC=ON \
|
||
|
-DENABLE_MINIBROWSER=ON \
|
||
|
%ifarch s390x %{power64}
|
||
|
-DENABLE_JIT=OFF \
|
||
|
-DUSE_SYSTEM_MALLOC=ON \
|
||
|
%endif
|
||
|
..
|
||
|
popd
|
||
|
|
||
|
make %{?_smp_mflags} -C %{_target_platform}
|
||
|
|
||
|
%install
|
||
|
%make_install -C %{_target_platform}
|
||
|
|
||
|
%find_lang WebKit2GTK-4.0
|
||
|
|
||
|
# Finally, copy over and rename various files for %%license inclusion
|
||
|
%add_to_license_files Source/JavaScriptCore/COPYING.LIB
|
||
|
%add_to_license_files Source/JavaScriptCore/icu/LICENSE
|
||
|
%add_to_license_files Source/ThirdParty/ANGLE/LICENSE
|
||
|
%add_to_license_files Source/ThirdParty/ANGLE/src/common/third_party/smhasher/LICENSE
|
||
|
%add_to_license_files Source/ThirdParty/ANGLE/src/third_party/compiler/LICENSE
|
||
|
%add_to_license_files Source/ThirdParty/ANGLE/src/third_party/libXNVCtrl/LICENSE
|
||
|
%add_to_license_files Source/WebCore/icu/LICENSE
|
||
|
%add_to_license_files Source/WebCore/LICENSE-APPLE
|
||
|
%add_to_license_files Source/WebCore/LICENSE-LGPL-2
|
||
|
%add_to_license_files Source/WebCore/LICENSE-LGPL-2.1
|
||
|
%add_to_license_files Source/WebInspectorUI/UserInterface/External/CodeMirror/LICENSE
|
||
|
%add_to_license_files Source/WebInspectorUI/UserInterface/External/ESLint/LICENSE
|
||
|
%add_to_license_files Source/WebInspectorUI/UserInterface/External/Esprima/LICENSE
|
||
|
%add_to_license_files Source/WebInspectorUI/UserInterface/External/three.js/LICENSE
|
||
|
%add_to_license_files Source/WTF/icu/LICENSE
|
||
|
%add_to_license_files Source/WTF/wtf/dtoa/COPYING
|
||
|
%add_to_license_files Source/WTF/wtf/dtoa/LICENSE
|
||
|
|
||
|
%files -f WebKit2GTK-4.0.lang
|
||
|
%license _license_files/*ThirdParty*
|
||
|
%license _license_files/*WebCore*
|
||
|
%license _license_files/*WebInspectorUI*
|
||
|
%license _license_files/*WTF*
|
||
|
%{_libdir}/libwebkit2gtk-4.0.so.*
|
||
|
%dir %{_libdir}/girepository-1.0
|
||
|
%{_libdir}/girepository-1.0/WebKit2-4.0.typelib
|
||
|
%{_libdir}/girepository-1.0/WebKit2WebExtension-4.0.typelib
|
||
|
%{_libdir}/webkit2gtk-4.0/
|
||
|
%{_libexecdir}/webkit2gtk-4.0/
|
||
|
%{_bindir}/WebKitWebDriver
|
||
|
%exclude %{_libexecdir}/webkit2gtk-4.0/WebKitPluginProcess2
|
||
|
|
||
|
%files devel
|
||
|
%{_libexecdir}/webkit2gtk-4.0/MiniBrowser
|
||
|
%{_includedir}/webkitgtk-4.0/
|
||
|
%exclude %{_includedir}/webkitgtk-4.0/JavaScriptCore
|
||
|
%{_libdir}/libwebkit2gtk-4.0.so
|
||
|
%{_libdir}/pkgconfig/webkit2gtk-4.0.pc
|
||
|
%{_libdir}/pkgconfig/webkit2gtk-web-extension-4.0.pc
|
||
|
%dir %{_datadir}/gir-1.0
|
||
|
%{_datadir}/gir-1.0/WebKit2-4.0.gir
|
||
|
%{_datadir}/gir-1.0/WebKit2WebExtension-4.0.gir
|
||
|
|
||
|
%files jsc
|
||
|
%license _license_files/*JavaScriptCore*
|
||
|
%{_libdir}/libjavascriptcoregtk-4.0.so.*
|
||
|
%dir %{_libdir}/girepository-1.0
|
||
|
%{_libdir}/girepository-1.0/JavaScriptCore-4.0.typelib
|
||
|
|
||
|
%files jsc-devel
|
||
|
%{_libexecdir}/webkit2gtk-4.0/jsc
|
||
|
%dir %{_includedir}/webkitgtk-4.0
|
||
|
%{_includedir}/webkitgtk-4.0/JavaScriptCore/
|
||
|
%{_libdir}/libjavascriptcoregtk-4.0.so
|
||
|
%{_libdir}/pkgconfig/javascriptcoregtk-4.0.pc
|
||
|
%dir %{_datadir}/gir-1.0
|
||
|
%{_datadir}/gir-1.0/JavaScriptCore-4.0.gir
|
||
|
|
||
|
%files plugin-process-gtk2
|
||
|
%{_libexecdir}/webkit2gtk-4.0/WebKitPluginProcess2
|
||
|
|
||
|
%files doc
|
||
|
%dir %{_datadir}/gtk-doc
|
||
|
%dir %{_datadir}/gtk-doc/html
|
||
|
%{_datadir}/gtk-doc/html/jsc-glib-4.0/
|
||
|
%{_datadir}/gtk-doc/html/webkit2gtk-4.0/
|
||
|
%{_datadir}/gtk-doc/html/webkitdomgtk-4.0/
|
||
|
|
||
|
%changelog
|
||
|
* Thu Nov 22 2018 Tomáš Popela <tpopela@redhat.com> - 2.22.4-1
|
||
|
- Update to 2.22.4
|
||
|
|
||
|
* Mon Oct 29 2018 Tomas Popela <tpopela@redhat.com> - 2.22.3-1
|
||
|
- Update to 2.22.3
|
||
|
|
||
|
* Fri Oct 19 2018 Tomas Popela <tpopela@redhat.com> - 2.22.2-2
|
||
|
- Fix WebProcess crash while printing
|
||
|
- Resolves: rhbz#1639754
|
||
|
|
||
|
* Sun Sep 23 2018 Tomas Popela <tpopela@redhat.com> - 2.22.2-1
|
||
|
- Update to 2.22.2
|
||
|
|
||
|
* Thu Sep 20 2018 Tomas Popela <tpopela@redhat.com> - 2.22.1-1
|
||
|
- Update to 2.22.1
|
||
|
|
||
|
* Tue Sep 04 2018 Tomas Popela <tpopela@redhat.com> - 2.22.0-1
|
||
|
- Update to 2.22.0
|
||
|
|
||
|
* Tue Aug 14 2018 Tomas Popela <tpopela@redhat.com> - 2.20.5-1
|
||
|
- Update to 2.20.5
|
||
|
|
||
|
* Mon Aug 06 2018 Tomas Popela <tpopela@redhat.com> - 2.20.4-1
|
||
|
- Update to 2.20.4
|
||
|
|
||
|
* Mon Jun 11 2018 Tomas Popela <tpopela@redhat.com> - 2.20.3-1
|
||
|
- Update to 2.20.3
|
||
|
|
||
|
* Wed May 09 2018 Tomas Popela <tpopela@redhat.com> - 2.20.2-1
|
||
|
- Update to 2.20.2
|
||
|
|
||
|
* Tue Apr 10 2018 Tomas Popela <tpopela@redhat.com> - 2.20.1-1
|
||
|
- Update to 2.20.1
|
||
|
|
||
|
* Mon Mar 12 2018 Kalev Lember <klember@redhat.com> - 2.20.0-2
|
||
|
- Bump webkitgtk4 obsoletes versions
|
||
|
|
||
|
* Mon Mar 12 2018 Tomas Popela <tpopela@redhat.com> - 2.20.0-1
|
||
|
- Update to 2.20.0
|
||
|
|
||
|
* Tue Mar 06 2018 Tomas Popela <tpopela@redhat.com> - 2.19.92-1
|
||
|
- Update to 2.19.92
|
||
|
|
||
|
* Wed Feb 21 2018 Tomas Popela <tpopela@redhat.com> - 2.19.91-1
|
||
|
- Update to 2.19.91
|
||
|
|
||
|
* Fri Feb 09 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.19.90-2
|
||
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||
|
|
||
|
* Mon Feb 05 2018 Tomas Popela <tpopela@redhat.com> - 2.19.90-1
|
||
|
- Update to 2.19.90
|
||
|
|
||
|
* Tue Jan 30 2018 Tomas Popela <tpopela@redhat.com> - 2.19.6-3
|
||
|
- Remove obsoleted ldconfig scriptlets
|
||
|
|
||
|
* Wed Jan 17 2018 Tomas Popela <tpopela@redhat.com> - 2.19.6-1
|
||
|
- Update to 2.19.6
|
||
|
|
||
|
* Thu Jan 11 2018 Tomas Popela <tpopela@redhat.com> - 2.19.5-2
|
||
|
- This package was formerly named webkitgtk4
|