## 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. %define add_to_doc_files() \ mkdir -p %{buildroot}%{_docdir}/%{name}-%{version} ||: ; \ cp -p %1 %{buildroot}%{_docdir}/%{name}-%{version}/$(echo '%1' | sed -e 's!/!.!g') ## Optional build modifications... ## --with 3dtransforms: Enables support for 3-D transforms. ## (Default: No) ## ## --with coverage: Enables compile-time checking of code coverage. ## (Default: No) ## ## --with debug: Enable more verbose debugging. Makes runtime a bit slower. ## Also disables the optimized memory allocator. ## (Default: No) ## ## --with pango: Use Pango instead of freetype2 as the font renderer. ## CJK support is functional only with the freetype2 backend. ## (Default: No - use freetype2) ## ## --with svg: Experimental SVG support (filters) ## (Default: No) ## ## --with wml: Build support for WML ## (Default: No) %bcond_with 3dtransforms %bcond_with coverage %bcond_with debug %bcond_with pango %bcond_with svg %bcond_with wml Name: webkitgtk Version: 1.6.3 Release: 2%{?dist} Summary: GTK+ Web content engine library Provides: WebKit-gtk = %{version}-%{release} Obsoletes: WebKit-gtk < %{version}-%{release} Group: Development/Libraries License: LGPLv2+ and BSD URL: http://www.webkitgtk.org/ Source0: http://www.webkitgtk.org/webkit-%{version}.tar.xz ## See: https://bugzilla.redhat.com/show_bug.cgi?id=516057 ## FIXME: We forcibly disable the JIT compiler for the time being. ## This is a temporary workaround which causes a slight performance hit on ## 32- and 64-bit x86; but until we can fix the JIT to correctly handle WX ## memory, at least we'll have a WebKit stack that doesn't crash due to this ## bug. :) Patch1: webkit-1.3.12-no-execmem.patch Patch2: webkit-1.3.10-nspluginwrapper.patch # https://bugs.webkit.org/show_bug.cgi?id=69940 Patch3: webkit-1.6.1-dtoa-s390.patch # Fix string def Patch5: webkit-1.6.1-stringfix.patch # add unistd.h include Patch6: webkit-1.6.1-unistd.patch BuildRequires: bison BuildRequires: chrpath BuildRequires: enchant-devel BuildRequires: flex BuildRequires: geoclue-devel BuildRequires: gettext BuildRequires: gperf BuildRequires: gstreamer-devel BuildRequires: gstreamer-plugins-base-devel BuildRequires: gtk2-devel BuildRequires: libsoup-devel >= 2.27.91 BuildRequires: libicu-devel BuildRequires: libjpeg-devel BuildRequires: libxslt-devel BuildRequires: libXt-devel BuildRequires: pcre-devel BuildRequires: sqlite-devel BuildRequires: gobject-introspection-devel BuildRequires: mesa-libGL-devel ## Conditional dependencies... %if %{with pango} BuildRequires: pango-devel %else BuildRequires: cairo-devel BuildRequires: cairo-gobject-devel BuildRequires: fontconfig-devel BuildRequires: freetype-devel %endif %description WebKitGTK+ is the port of the portable web rendering engine WebKit to the GTK+ platform. %package devel Summary: Development files for %{name} Group: Development/Libraries Requires: %{name} = %{version}-%{release} Requires: pkgconfig Requires: gtk2-devel Provides: WebKit-gtk-devel = %{version}-%{release} Obsoletes: WebKit-gtk-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 for %{name} Group: Documentation Provides: WebKit-doc = %{version}-%{release} Obsoletes: WebKit-doc < %{version}-%{release} %description doc This package contains the documentation for %{name}, including various LICENSE, README, and AUTHORS files. %prep %setup -qn "webkit-%{version}" %patch1 -p1 -b .no-execmem %patch2 -p1 -b .nspluginwrapper %patch3 -p1 -b .dtoa-s390 %patch5 -p1 -b .stringfix %patch6 -p1 -b .unistd %build %ifarch s390 %{arm} # Use linker flags to reduce memory consumption on low-mem architectures %global optflags %{optflags} -Wl,--no-keep-memory -Wl,--reduce-memory-overheads %endif CFLAGS="%optflags -DLIBSOUP_I_HAVE_READ_BUG_594377_AND_KNOW_SOUP_PASSWORD_MANAGER_MIGHT_GO_AWAY" %configure \ --enable-jit \ --enable-geolocation \ --enable-introspection \ --with-gtk=2.0 \ --enable-webgl \ %{?with_3dtransforms: --enable-3D-transforms } \ %{?with_coverage: --enable-coverage } \ %{?with_debug: --enable-debug } \ %{?with_pango: --with-font-backend=pango } \ %{?with_svg: --enable-svg-filters } \ %{?with_wml: --enable-wml } mkdir -p DerivedSources/webkit mkdir -p DerivedSources/WebCore mkdir -p DerivedSources/ANGLE # Disabled because of https://bugs.webkit.org/show_bug.cgi?id=34846 make V=1 %{?_smp_mflags} %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} chrpath --delete Programs/GtkLauncher install -d -m 755 %{buildroot}%{_libexecdir}/%{name} install -m 755 Programs/GtkLauncher %{buildroot}%{_libexecdir}/%{name} %find_lang webkit-2.0 ## Finally, copy over and rename the various files for %%doc inclusion. %add_to_doc_files Source/WebKit/LICENSE %add_to_doc_files Source/WebKit/gtk/po/README %add_to_doc_files Source/WebKit/gtk/NEWS %add_to_doc_files Source/WebCore/icu/LICENSE %add_to_doc_files Source/WebCore/LICENSE-APPLE %add_to_doc_files Source/WebCore/LICENSE-LGPL-2 %add_to_doc_files Source/WebCore/LICENSE-LGPL-2.1 %add_to_doc_files Source/JavaScriptCore/COPYING.LIB %add_to_doc_files Source/JavaScriptCore/THANKS %add_to_doc_files Source/JavaScriptCore/AUTHORS %add_to_doc_files Source/JavaScriptCore/icu/README %add_to_doc_files Source/JavaScriptCore/icu/LICENSE %clean rm -rf %{buildroot} %post /sbin/ldconfig glib-compile-schemas %{_datadir}/glib-2.0/schemas %postun /sbin/ldconfig glib-compile-schemas %{_datadir}/glib-2.0/schemas %files -f webkit-2.0.lang %defattr(-,root,root,-) %exclude %{_libdir}/*.la %{_libdir}/libwebkitgtk-1.0.so.* %{_libdir}/libjavascriptcoregtk-1.0.so.* %{_libdir}/girepository-1.0/WebKit-1.0.typelib %{_libdir}/girepository-1.0/JSCore-1.0.typelib %{_libexecdir}/%{name}/ %{_datadir}/glib-2.0/schemas/org.webkitgtk-1.0.gschema.xml %{_datadir}/webkitgtk-1.0 %files devel %defattr(-,root,root,-) %{_bindir}/jsc-1 %{_includedir}/webkit-1.0 %{_libdir}/libwebkitgtk-1.0.so %{_libdir}/libjavascriptcoregtk-1.0.so %{_libdir}/pkgconfig/webkit-1.0.pc %{_libdir}/pkgconfig/javascriptcoregtk-1.0.pc %{_datadir}/gir-1.0/WebKit-1.0.gir %{_datadir}/gir-1.0/JSCore-1.0.gir %files doc %defattr(-,root,root,-) %{_docdir}/%{name}-%{version}/ %changelog * Tue Feb 28 2012 Peter Robinson - 1.6.3-2 - Add ARM to and optimise compile flags for low mem arches * Wed Feb 01 2012 Kevin Fenzi 1.6.3-1 - Update to 1.6.3. - enable webgl * Fri Jan 20 2012 Kevin Fenzi - 1.6.1-5 - Fix string issue causing failure to build. Already upstreamed. * Sat Jan 14 2012 Fedora Release Engineering - 1.6.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild * Mon Dec 05 2011 Adam Jackson 1.6.1-3 - Rebuild for new libpng - webkit-1.6.1-new-glib.patch: Fix for new glib headers * Wed Oct 12 2011 Dan Horák - 1.6.1-2 - fix build on s390(x) * Tue Sep 27 2011 Kevin Fenzi - 1.6.1-1 - Update to 1.6.1 * Mon Sep 26 2011 Kevin Fenzi - 1.6.0-1 - Update to new 1.6.0 stable. * Thu Sep 08 2011 Kevin Fenzi - 1.4.3-2 - Rebuild for new libicu * Mon Aug 29 2011 Kevin Fenzi - 1.4.3-1 - Update to 1.4.3 * Fri Jul 01 2011 Kevin Fenzi - 1.4.2-1 - Update to 1.4.2 * Sat Jun 11 2011 Kevin Fenzi - 1.4.1-1 - Update to 1.4.1 * Tue Apr 26 2011 Kevin Fenzi - 1.4.0-1 - Update to 1.4.0 stable release. * Fri Apr 15 2011 Kevin Fenzi - 1.3.13-2 - Fix build issue with gcc 4.6 * Thu Mar 24 2011 Kevin Fenzi - 1.3.13-1 - Update to 1.3.13 * Mon Mar 07 2011 Caolán McNamara - 1.3.12-2 - rebuild for icu 4.6 * Wed Feb 23 2011 Kevin Fenzi - 1.3.12-1 - Update to 1.3.12 * Mon Feb 07 2011 Fedora Release Engineering - 1.3.11-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild * Wed Feb 02 2011 Kevin Fenzi - 1.3.11-1 - Update to 1.3.11 * Mon Jan 10 2011 Kevin Fenzi - 1.3.10-1 - Update to 1.3.10 * Tue Jan 04 2011 Huzaifa Sidhpurwala 1.3.9-4 - Upgrade to 1.3.9 - Remove s390 patch, it was absorbed upstream - No translations available * Mon Dec 13 2010 Dan Horák - 1.3.6-2 - Add back updated s390(x) patch - Do not generate debug information to prevent linker memory exhaustion on s390 with its 2 GB address space * Mon Nov 08 2010 Kevin Fenzi - 1.3.6-1 - Update to 1.3.6 * Thu Oct 28 2010 Kevin Fenzi - 1.3.5-1 - Update to 1.3.5 * Wed Sep 29 2010 jkeating - 1.3.4-3 - Rebuilt for gcc bug 634757 * Thu Sep 23 2010 Kevin Fenzi - 1.3.4-2 - Enable JIT/patch for execmem. - Move inspector into the main package. * Thu Sep 23 2010 Matthias Clasen - 1.3.4-1 - Update to 1.3.4 - Rebuild against newer gobject-introspection * Tue Jul 20 2010 Dan Horák - 1.3.2-4 - Fix build on s390(x) * Thu Jul 15 2010 Colin Walters - 1.3.2-3 - Rebuild with new gobject-introspection * Fri Jul 2 2010 Matthias Clasen 1.3.2-2 - Enable introspection (needed for epiphany) * Thu Jul 1 2010 Matthias Clasen 1.3.2-1 - Update to 1.3.2 * Fri May 28 2010 Matthias Clasen 1.3.1-1 - Update to 1.3.1 (required for epiphany) * Sun Apr 11 2010 Matthias Clasen 1.2.0-1 - Update to 1.2.0 * Fri Apr 02 2010 Caolán McNamara 1.1.22-3 - rebuild for icu 4.4 * Tue Mar 23 2010 Tom "spot" Callaway 1.1.22-2 - apply upstream fix for sparc * Mon Feb 22 2010 Matthias Clasen 1.1.22-1 - Update to 1.1.22 * Wed Feb 10 2010 Bastien Nocera 1.1.21-1 - Update to 1.1.21 * Tue Jan 26 2010 Matthias Clasen 1.1.19-1 - Update to 1.1.19 * Sun Jan 17 2010 Matthias Clasen 1.1.18-1 - Update to 1.1.18 * Tue Dec 01 2009 Bastien Nocera 1.1.17-1 - Update to 1.1.17 * Sat Oct 31 2009 Matthias Clasen - 1.1.15.3-1 - Update to 1.1.15.3, more crash fixes and important media player fixes - See https://lists.webkit.org/pipermail/webkit-gtk/2009-October/000047.html * Thu Oct 15 2009 Matthias Clasen - 1.1.15.2-1 - Update to 1.1.15.2, which has multiple crash and other fixes - See https://lists.webkit.org/pipermail/webkit-gtk/2009-October/000040.html * Thu Sep 24 2009 Peter Gordon - 1.1.15.1-3 - Forcibly disable JIT until we can properly resolve the execmem-caused segfaulting. (Temporary workaround until bug #516057 can be properly fixed.) - Remove the gnome-keyring build option (no longer used by the build scripts). - Correct release value of previous %%changelog entry. * Wed Sep 23 2009 Matthias Clasen - 1.1.15.1-2 - Update to 1.1.15.1 * Mon Sep 14 2009 Bastien Nocera 1.1.14-3 - Add support for nspluginwrapper plugins * Tue Sep 08 2009 Karsten Hopp 1.1.14-2 - bump release and rebuild as the package was linked with an old libicu during the mass rebuild on s390x * Mon Sep 7 2009 Matthias Clasen - 1.1.14-1 - Update to 1.1.14 * Tue Aug 25 2009 Matthias Clasen - 1.1.13-1 - Update to 1.1.13 * Sat Aug 22 2009 Peter Gordon - 1.1.12-2 - Add patch to forcibly disable RWX memory in the x86/x86-64 assembler. + no-execmem.patch - Use %%add_to_doc_files to add the gtk/NEWS file instead of %%doc, which clobbered the doc files before they could be properly installed to the -doc subpackage. - Resolves: #516057 (gets whacked by selinux execmem check) and #518693 (webkitgtk-doc package effectively empty). - Update minimum required libsoup version. * Tue Jul 28 2009 Matthias Clasen - 1.1.12-1 - Update to 1.1.12 * Mon Jul 27 2009 Fedora Release Engineering - 1.1.11-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild * Mon Jul 13 2009 Matthias Clasen - 1.1.11-1 - Update to 1.1.11 * Wed Jul 08 2009 Peter Gordon - 1.1.10-3 - Move jsc to the -devel subpackage (#510355). * Sat Jul 04 2009 Peter Gordon - 1.1.10-2 - Invoke chrpath to remove the hardcoded RPATH in GtkLauncher. - Remove unnecessary libtool build dependency. * Tue Jun 16 2009 Matthias Clasen - 1.1.10-1 - Update to 1.1.10 * Sat Jun 13 2009 Dennis Gilmore - 1.1.8-2 - _atomic_word is not always an int * Fri May 29 2009 Peter Gordon - 1.1.8-1 - Update to new upstream release (1.1.8) * Thu May 28 2009 Peter Gordon - 1.1.7-1 - Update to new upstream release (1.1.7) - Remove jit build conditional. (JIT is now enabled by default on platforms which support it: currently 32- and 64-bit x86.) - Fix installation of the GtkLauncher demo program so that it is a binary and not a script. (Fixes bug #443048.) * Sat May 09 2009 Peter Gordon - 1.1.6-1 - Update to new upstream release (1.1.6). - Drop workaround for bug 488112 (fixed upstream). - Fixes bug 484335 (Copy link locations to the primary selection; patched upstream). - Include upstream changelog (NEWS) as part of the installed documentation. - Fix capitalization in previous %%changelog entry. - Add build-time conditional support for 3-D transforms (default off). * Sat May 09 2009 Mamoru Tasaka - 1.1.4-2 - Rebuild against new icu * Tue Apr 07 2009 Peter Gordon - 1.1.4-1 - Update to new upstream release (1.1.4) - Enable building with geolocation support. - Add build-time conditional for enabling code coverage checking (coverage). - Remove html5video conditional and update dependencies accordingly. (HTML5 video embedding support is now enabled by default by upstream.) * Sun Mar 15 2009 Peter Gordon - 1.1.3-1 - Rename from WebKit-gtk and friends to WebKitGTK and subpackages. - Update to new upstream release (1.1.3) - Clean up the add_to_doc_files macro usage. * Sat Mar 07 2009 Peter Gordon - 1.1.1-1 - Update to new upstream release (1.1.1), includes a soname bump. - Enable gnome-keyring support. * Wed Mar 4 2009 Mamoru Tasaka - 1.1.0-0.21.svn41071 - Compile libJavaScriptCore.a with -fno-strict-aliasing to do workaround for #488112 * Mon Feb 23 2009 Fedora Release Engineering - 1.1.0-0.20.svn41071 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild * Fri Feb 20 2009 Peter Gordon 1.1.0-0.19.svn41071 - Update to new upstream snapshot (SVN 41071). - Drop libsoup build conditional. Use libsoup as default HTTP backend instead of cURL, following upstream's default. * Fri Jan 30 2009 Peter Gordon 1.1.0-0.18.svn40351 - Fix ownership of doc directory...this time without the oops (#473619). - Bump package version number to match that used in the configure/build scripts. (Thanks to Martin Sourada for the bug report via email.) * Thu Jan 29 2009 Peter Gordon 1.0.0-0.17.svn40351 - Update to new upstream snapshot (SVN 40351): adds the WebPolicyDelegate implementaton and related API (#482739). - Drop Bison 2.4 patch (fixed upstream): - bison24.patch - Fixes CVE-2008-6059: Sensitive information disclosure from cookies via XMLHttpRequest calls (#484197). * Sat Nov 29 2008 Peter Gordon 1.0.0-0.16.svn39370 - Update to new upstream snapshot (SVN 39370) - Fix ownership of %%_docdir in the doc subpackage. - Resolves: bug 473619 (WebKit : Unowned directories). - Adds webinspector data to the gtk-devel subpackage. - Add patch from upstream bug 22205 to fix compilation errors with Bison 2.4: + bison24.patch - Add build-time conditional for WML support. * Thu Oct 23 2008 Peter Gordon 1.0.0-0.15.svn37790 - Update to new upstream snapshot (SVN 37790). - Default to freetype font backend for improved CJK/Unicode support. (#448693) - Add some notes to the build options comments block. - Add a build-time conditional for jit * Sun Aug 24 2008 Peter Gordon 1.0.0-0.14.svn35904 - Update to new upstream snapshot (SVN 35904) * Fri Jul 04 2008 Peter Gordon - Remove outdated and unnecessary GCC 4.3 patch: - gcc43.patch - Fix the curl-devel BuildRequire conditional. (It is only needed when building against curl instead of libsoup.) * Thu Jun 12 2008 Peter Gordon 1.0.0-0.13.svn34655 - Update to new upstream snapshot (SVN 34655) - Add some build-time conditionals for non-default features: debug, html5video, libsoup, pango, svg. * Tue Jun 3 2008 Caolán McNamara - 1.0.0-0.12.svn34279 - rebuild for new icu * Tue Jun 3 2008 Mamoru Tasaka - 1.0.0-0.11.svn34279 - Update to new upstream snapshot (SVN 34279) anyway - Add BR: libXt-devel * Tue Apr 29 2008 Peter Gordon 1.0.0-0.10.svn32531 - Remove the -Qt subpackage stuff. QtWebKit is now included in Qt proper, as of qt-4.4.0-0.6.rc1. (We no longer need separate build-qt and build-gtk subdirectories either.) - Reference: bug 442200 (RFE: WebKit Migration) - Add libjpeg dependency (was previously pulled in by the qt4-devel dependency tree). * Mon Apr 28 2008 Mamoru Tasaka - 1.0.0-0.9.svn32531 - Update to new upstream snapshot (SVN 32531). - Fix bug 443048 and hopefully fix bug 444445 - Modify the process of building GTK+ port a bit - on qt port WebKit/qt/Plugins is not built for qt >= 4.4.0 * Sat Apr 12 2008 Peter Gordon 1.0.0-0.8.svn31787 - Update to new upstream snapshot (SVN 31787). - Resolves: CVE-2008-1010 (bug 438532: Arbitrary code execution) and CVE-2008-1011 (bug 438531: Cross-Site Scripting). - Switch to using autotools for building the GTK+ port. * Wed Mar 05 2008 Peter Gordon 1.0.0-0.7.svn30667 - Fix the WebKitGtk pkgconfig data (should depend on gtk+-2.0). Resolves bug 436073 (Requires: gtk+-2.0 missing from WebKitGtk.pc). - Thanks to Mamoru Tasaka for helping find and squash these many bugs. * Sat Mar 01 2008 Peter Gordon 1.0.0-0.6.svn30667 - Fix include directory naming. Resolves: bug 435561 (Header file <> header file location mismatch) - Remove qt4-devel runtime dependency and .prl file from WebKit-gtk-devel. Resolves: bug 433138 (WebKit-gtk-devel has a requirement on qt4-devel) * Fri Feb 29 2008 Peter Gordon 1.0.0-0.5.svn30667 - Update to new upstream snapshot (SVN 30667) - Add some build fixes for GCC 4.3: + gcc43.patch * Tue Feb 19 2008 Fedora Release Engineering - 1.0.0-0.5.svn29336 - Autorebuild for GCC 4.3 * Wed Jan 09 2008 Peter Gordon 1.0.0-0.4.svn29336 - Update to new upstream snapshot (SVN 29336). - Drop TCSpinLock pthread workaround (fixed upstream): - TCSpinLock-use-pthread-stubs.patch * Thu Dec 06 2007 Peter Gordon 1.0.0-0.3.svn28482 - Add proper %%defattr line to qt, qt-devel, and doc subpackages. - Add patch to forcibly build the TCSpinLock code using the pthread implementation: + TCSpinLock-use-pthread-stubs.patch * Thu Dec 06 2007 Peter Gordon 1.0.0-0.2.svn28482 - Package renamed from WebKitGtk. - Update to SVN 28482. - Build both the GTK and Qt ports, putting each into their own respective subpackages. - Invoke qmake-qt4 and make directly (with SMP build flags) instead of using the build-webkit script from upstream. - Add various AUTHORS, README, and LICENSE files (via the doc subpackage). * Tue Dec 04 2007 Peter Gordon 1.0.0-0.1.svn28383 - Initial packaging for Fedora.