Name: qtwebkit Summary: Qt WebKit bindings Version: 2.3.3 Release: 9%{?dist} License: LGPLv2 with exceptions or GPLv3 with exceptions URL: http://trac.webkit.org/wiki/QtWebKit ## This was how qtwebkit-2.2 did it (no longer works for 2.3) # get make-package.py: # $ git clone git://qt.gitorious.org/qtwebkit/tools.git # get Qt WebKit source code: # $ git clone git://gitorious.org/+qtwebkit-developers/webkit/qtwebkit.git # create a branch from a tag (e.g. qtwebkit-2.2.2): # $ git checkout -b qtwebkit-2.2.2 qtwebkit-2.2.2 # generate the tarball (requires: bison flex gperf): # $ make-package.py # fix/repack the generated tarball: # $ tar xzf qtwebkit-2.2.2-source.tar.gz # $ mv qtwebkit-2.2.2-source/include qtwebkit-2.2.2-source/Source/ # $ tar cJf qtwebkit-2.2.2-source.tar.xz qtwebkit-2.2.2-source/ ## # download from # https://gitorious.org/webkit/qtwebkit-23/archive-tarball/qtwebkit-%{version} # repack as .xz Source0: qtwebkit-%{version}.tar.xz # search /usr/lib{,64}/mozilla/plugins-wrapped for browser plugins too Patch1: webkit-qtwebkit-2.2-tp1-pluginpath.patch # smaller debuginfo s/-g/-g1/ (debian uses -gstabs) to avoid 4gb size limit Patch3: qtwebkit-2.3-debuginfo.patch # tweak linker flags to minimize memory usage on "small" platforms Patch4: qtwebkit-2.3-save_memory.patch # use SYSTEM_MALLOC on ppc/ppc64, plus some additional minor tweaks (needed only on ppc? -- rex) Patch10: qtwebkit-ppc.patch # add missing function Double2Ints(), backport # rebased for 2.3.1, not sure if this is still needed? -- rex Patch11: qtwebkit-23-LLInt-C-Loop-backend-ppc.patch # fix build when using bison3 # https://qt.gitorious.org/qt/qtwebkit/commit/60ba8bd5b3575d Patch12: glslang_bison3.patch # support aarch64 Patch13: qtwebkit-aarch64.patch ## upstream patches Patch102: 0002-Texmap-GTK-The-poster-circle-doesn-t-appear.patch Patch103: 0003-Qt-Tiled-backing-store-not-clipped-to-frame-or-visib.patch Patch104: 0004-Qt-Images-scaled-poorly-on-composited-canvas.patch Patch105: 0005-Port-of-r118587-to-TextBreakIteratorQt.cpp.patch patch106: 0006-JSC-ARM-traditional-failing-on-Octane-NavierStokes-t.patch Patch107: 0007-Correct-range-used-for-Emoji-checks.patch Patch108: 0008-Qt-RepaintRequested-signal-sometimes-not-emitted.patch Patch109: 0009-TexMap-Remove-ParentChange-in-TextureMapperLayer.patch Patch110: 0010-SVG-stroke-dasharray-not-working.patch Patch111: 0011-Texmap-CSS-filter-not-working-on-software-composited.patch Patch112: 0012-Do-not-try-to-compile-header-files-it-causes-weird-b.patch Patch114: 0014-Fix-crash-when-converting-QObjectList.patch Patch115: 0015-WebGL-EFL-Qt-GTK-Jelly-fishes-leave-trails-on-webgl-.patch Patch116: 0016-Extend-disabling-of-whole-program-optimizations-to-M.patch Patch117: 0017-OS-X-Mavericks-Xcode5-Find-libxslt-and-libxml2-heade.patch Patch118: 0018-Fix-QtWebKit-build-on-ARM-softfp.patch Patch119: 0019-Mouseup-event-does-not-fire-on-Scroll-Bar.patch Patch120: 0020-Make-it-possible-to-build-without-using-build-webkit.patch BuildRequires: bison BuildRequires: chrpath BuildRequires: flex BuildRequires: gperf BuildRequires: libicu-devel BuildRequires: libjpeg-devel BuildRequires: pkgconfig(gio-2.0) pkgconfig(glib-2.0) BuildRequires: pkgconfig(fontconfig) # gstreamer media support BuildRequires: pkgconfig(gstreamer-0.10) pkgconfig(gstreamer-app-0.10) BuildRequires: pkgconfig(libpcre) BuildRequires: pkgconfig(libpng) BuildRequires: pkgconfig(libwebp) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(QtCore) pkgconfig(QtNetwork) BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(xext) BuildRequires: pkgconfig(xrender) BuildRequires: perl(version) BuildRequires: perl(Digest::MD5) BuildRequires: ruby %if 0%{?fedora} # for QtLocation, QtSensors BuildRequires: qt-mobility-devel >= 1.2 %endif Obsoletes: qt-webkit < 1:4.9.0 Provides: qt-webkit = 2:%{version}-%{release} Provides: qt4-webkit = 2:%{version}-%{release} Provides: qt4-webkit%{?_isa} = 2:%{version}-%{release} %{?_qt4_version:Requires: qt4%{?_isa} >= %{_qt4_version}} %description %{summary} %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Obsoletes: qt-webkit-devel < 1:4.9.0 Provides: qt-webkit-devel = 2:%{version}-%{release} Provides: qt4-webkit-devel = 2:%{version}-%{release} Provides: qt4-webkit-devel%{?_isa} = 2:%{version}-%{release} %description devel %{summary}. %prep %setup -q -n webkit-qtwebkit-23 %patch102 -p1 -b .0002 %patch103 -p1 -b .0003 %patch104 -p1 -b .0004 %patch105 -p1 -b .0005 %patch106 -p1 -b .0006 %patch107 -p1 -b .0007 %patch108 -p1 -b .0008 %patch109 -p1 -b .0009 %patch110 -p1 -b .0010 %patch111 -p1 -b .0011 %patch112 -p1 -b .0012 %patch114 -p1 -b .0014 %patch115 -p1 -b .0015 %patch116 -p1 -b .0016 %patch117 -p1 -b .0017 %patch118 -p1 -b .0018 %patch119 -p1 -b .0019 %patch120 -p1 -b .0020 %patch1 -p1 -b .pluginpath %patch3 -p1 -b .debuginfo %patch4 -p1 -b .save_memory # all big-endian arches require the Double2Ints fix %ifarch ppc ppc64 s390 s390x %patch10 -p1 -b .system-malloc %patch11 -p1 -b .Double2Ints %endif %patch12 -p1 -b .bison3 %patch13 -p1 -b .aarch64 %build PATH=%{_qt4_bindir}:$PATH; export PATH QMAKEPATH=`pwd`/Tools/qmake; export QMAKEPATH QTDIR=%{_qt4_prefix}; export QTDIR %ifarch aarch64 %global qtdefines DEFINES+=ENABLE_JIT=0 DEFINES+=ENABLE_YARR_JIT=0 DEFINES+=ENABLE_ASSEMBLER=0 %else %global qtdefines %endif mkdir -p %{_target_platform} pushd %{_target_platform} WEBKITOUTPUTDIR=`pwd`; export WEBKITOUTPUTDIR ../Tools/Scripts/build-webkit \ --qt %{?qtdefines} \ --no-webkit2 \ --release \ --qmakearg="CONFIG+=production_build DEFINES+=HAVE_LIBWEBP=1" \ --makeargs=%{?_smp_mflags} \ --system-malloc popd %ifarch %{ix86} # build safe(r) non-sse2-enabled version mkdir -p %{_target_platform}-no_sse2 pushd %{_target_platform}-no_sse2 WEBKITOUTPUTDIR=`pwd`; export WEBKITOUTPUTDIR ../Tools/Scripts/build-webkit \ --qt \ --no-webkit2 \ --release \ --qmakearg="CONFIG+=production_build DEFINES+=HAVE_LIBWEBP=1" \ --makeargs=%{?_smp_mflags} \ --system-malloc \ --no-force-sse2 popd %endif %install make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}/Release %ifarch %{ix86} mkdir -p %{buildroot}%{_qt4_libdir}/sse2/ mv %{buildroot}%{_qt4_libdir}/libQtWebKit.so.4* %{buildroot}%{_qt4_libdir}/sse2/ make install INSTALL_ROOT=%{buildroot} -C %{_target_platform}-no_sse2/Release %endif ## HACK alert chrpath --list %{buildroot}%{_qt4_libdir}/libQtWebKit.so.4.10.? ||: chrpath --delete %{buildroot}%{_qt4_libdir}/libQtWebKit.so.4.10.? ||: ## pkgconfig love # drop Libs.private, it contains buildroot references, and # we don't support static linking libQtWebKit anyway pushd %{buildroot}%{_libdir}/pkgconfig grep -v "^Libs.private:" QtWebKit.pc > QtWebKit.pc.new && \ mv QtWebKit.pc.new QtWebKit.pc popd %post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files %{_qt4_libdir}/libQtWebKit.so.4* %ifarch %{ix86} %{_qt4_libdir}/sse2/libQtWebKit.so.4* %endif %if 0%{?_qt4_importdir:1} %{_qt4_importdir}/QtWebKit/ %endif %files devel %{_qt4_datadir}/mkspecs/modules/qt_webkit.pri %{_qt4_headerdir}/QtWebKit/ %{_qt4_libdir}/libQtWebKit.prl %{_qt4_libdir}/libQtWebKit.so %{_libdir}/pkgconfig/QtWebKit.pc %changelog * Thu Mar 6 2014 Peter Robinson 2.3.3-9 - Update aarch64 patchset * Fri Feb 28 2014 Rex Dieter 2.3.3-8 - initial backport aarch64 javascriptcore fixes, needswork (#1070446) - apply downstream patches *after* upstream ones * Thu Feb 13 2014 Rex Dieter 2.3.3-7 - backport more upstream fixes * Thu Feb 13 2014 Rex Dieter 2.3.3-6 - ftbfs using bison3 * Wed Feb 12 2014 Rex Dieter 2.3.3-5 - rebuild (libicu) * Wed Jan 01 2014 Rex Dieter 2.3.3-4 - rebuild (libwebp) * Wed Dec 11 2013 Rex Dieter - 2.3.3-3 - support out-of-source-tree build - %%ix86: build both no-sse2 and sse2 versions * Mon Dec 09 2013 Rex Dieter 2.3.3-2 - build-webkit --system-malloc (unconditionally, WAS only ppc) * Thu Oct 03 2013 Rex Dieter 2.3.3-1 - qtwebkit-2.3.3 - include some post 2.3.3 commits/fixes * Thu Sep 12 2013 Rex Dieter 2.3.2-3 - SIGSEGV - ~NonSharedCharacterBreakIterator (#1006539, webkit#101337) * Sun Aug 04 2013 Fedora Release Engineering - 2.3.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild * Thu Jul 11 2013 Rex Dieter 2.3.2-1 - qtwebkit-2.3.2 * Thu Apr 18 2013 Rex Dieter - 2.3.1-1 - qtwebkit-2.3.1 - -devel: drop explicit Requires: qt4-devel (let pkgconfig deps do it) * Mon Mar 25 2013 Dan Horák 2.3.0-2 - use ppc fixes also on s390 * Fri Mar 15 2013 Rex Dieter 2.3.0-1 - 2.3.0 (final) - enable libwebp support - .spec cleanup * Sat Mar 09 2013 Rex Dieter 2.3-0.6.rc1 - should use libxml and libxslt (#919778) * Sat Mar 09 2013 Rex Dieter 2.3-0.5.rc1 - qt_webkit_version.pri is missing in 2.3-rc1 package (#919477) * Tue Mar 05 2013 Rex Dieter 2.3-0.4.rc1 - 2.3-rc1 * Tue Mar 05 2013 Than Ngo - 2.3-0.3.beta2 - add missing function Double2Ints() on ppc, backport * Mon Feb 25 2013 Than Ngo - 2.3-0.2.beta2 - fix 64k page issue on ppc/ppc64 - set -g1 on ppc/ppc64 to reduce archive size * Thu Feb 21 2013 Rex Dieter 2.3-0.1.beta2 - qtwebkit-2.3-beta2 * Thu Feb 14 2013 Fedora Release Engineering - 2.2.2-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild * Tue Jan 22 2013 Rex Dieter 2.2.2-8 - fix rpath (#902571) * Tue Jan 15 2013 Than Ngo - 2.2.2-7 - use SYSTEM_MALLOC on ppc/ppc64 * Fri Jan 11 2013 Than Ngo 2.2.2-6 - bz#893447, fix 64k pagesize issue * Fri Jan 04 2013 Rex Dieter 2.2.2-5 - segfault in requiresLineBox at rendering/RenderBlockLineLayout.cpp (#891464) * Mon Dec 24 2012 Rex Dieter 2.2.2-4 - switch to upstream versions of some patches * Tue Nov 13 2012 Rex Dieter 2.2.2-3 - Certain SVG content freezes QtWebKit (webkit#97258) * Sat Jul 21 2012 Fedora Release Engineering - 2.2.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild * Tue May 22 2012 Rex Dieter 2.2.2-1 - qtwebkit-2.2.2 * Fri May 11 2012 Rex Dieter 2.2.1-6 - can't render Complex Text Layout (Hindi, Arabic) (#761337) * Fri May 11 2012 Rex Dieter 2.2.1-5 - respin tarball using upstream make-package.py tool * Tue Jan 24 2012 Than Ngo - 2.2.1-4 - gcc doesn't support flag -fuse-ld=gold yet - fix build failure with gcc-4.7 * Sat Jan 14 2012 Fedora Release Engineering - 2.2.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Wed Dec 21 2011 Than Ngo - 2.2.1-2 - backport the correct patch from trunk to fix glib-2.31 issue * Mon Dec 19 2011 Rex Dieter 2.2.1-1 - qtwebkit-2.2.1 - add explicit BR: pkgconfig(xext) pkgconfig(xrender) * Sun Nov 27 2011 Rex Dieter 2.2.0-3 - add explicit BR: libjpeg-devel libpng-devel * Fri Nov 18 2011 Rex Dieter 2.2.0-2 - fix FTBFS against newer glib * Thu Sep 29 2011 Rex Dieter 2.2.0-1 - qtwebkit-2.2.0 (final) - more pkgconfig-style deps * Wed Sep 14 2011 Rex Dieter 2.2.0-0.1.rc1 - qtwebkit-2.2.0-rc1 * Tue Sep 06 2011 Rex Dieter 2.2-16.week35 - qtwebkit-2.2-week35 snapshot * Thu Sep 01 2011 Rex Dieter 2.2-15.week34 - qtwebkit-2.2-week34 snapshot * Sat Aug 27 2011 Than Ngo - 2.2-14.week32 - drop conditional * Thu Aug 18 2011 Rex Dieter 2.2-13.week32 - qtwebkit-2.2-week32 snapshot * Wed Aug 10 2011 Rex Dieter 2.2-12.week31 - BR: gstreamer-devel bits * Tue Aug 09 2011 Rex Dieter 2.2-11.week31 - qtwebkit-2.2-week31 snapshot * Sat Jul 23 2011 Rex Dieter 2.2-10.week28 - rebuild * Wed Jul 20 2011 Rex Dieter 2.2-9.week28 - qtwebkit-2.2-week28 snapshot * Wed Jul 20 2011 Rex Dieter 2.2-8.20110621 - rebuild (qt48) * Wed Jun 22 2011 Dan Horák 2.2-7.20110621 - bump release for the s390 build fix * Tue Jun 21 2011 Rex Dieter 2.2-6.20110621 - 20110621 snapshot - s390: respin javascriptcore_debuginfo.patch to omit -g from CXXFLAGS too * Fri Jun 03 2011 Rex Dieter 2.2-5.20110603 - 20110603 snapshot - drop unused/deprecated phonon/gstreamer support snippets - add minimal qt4 dep * Tue May 24 2011 Than Ngo - 2.2-4.20110513 - fix for qt-4.6.x - add condition for rhel - enable shared for qtwebkit build * Thu May 19 2011 Rex Dieter 2.2-3.20110513 - bump up Obsoletes: qt-webkit a bit, to be on the safe side * Fri May 13 2011 Rex Dieter 2.2-2.20110513 - 20110513 qtwebkit-2.2 branch snapshot - cleanup deps - drop -Werror * Thu May 12 2011 Than Ngo - 2.2-1 - 2.2-tp1 - gstreamer is now default, drop unneeded phonon patch * Fri Apr 22 2011 Rex Dieter 2.1-4 - javascriptcore -debuginfo too (#667175) * Fri Apr 22 2011 Rex Dieter 2.1-3 - Provides: qt(4)-webkit(-devel) = 2:%%version... * Thu Apr 21 2011 Rex Dieter 2.1-2 - -devel: Conflicts: qt-devel < 1:4.7.2-9 (qt_webkit_version.pri) - drop old/deprecated Obsoletes/Provides: WebKit-qt - use modified, less gigantic tarball - patch to use phonon instead of QtMultimediaKit - patch pluginpath for /usr/lib{,64}/mozilla/plugins-wrapped * Tue Apr 19 2011 Rex Dieter 2.1-1 - 2.1 * Mon Nov 08 2010 Than Ngo - 2.0-2 - fix webkit to export symbol correctly * Tue Nov 02 2010 Rex Dieter 2.0-1 - 2.0 (as released with qt-4.7.0) * Thu Sep 09 2010 Rex Dieter 2.0-0.1.week32 - first try, borrowing a lot from debian/kubuntu packaging