summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorBalló György2017-06-30 09:40:14 +0200
committerBalló György2017-06-30 09:40:14 +0200
commit500360c55e9e13c93d27936b519ccf34ea7cc63e (patch)
tree50ab6249a7b19c6c9bc07bf9563794bf05b94012
downloadaur-500360c55e9e13c93d27936b519ccf34ea7cc63e.tar.gz
Moved from [extra]
-rw-r--r--.SRCINFO81
-rw-r--r--PKGBUILD86
-rw-r--r--icu59.patch38
-rw-r--r--webkitgtk-2.4.9-abs.patch26
-rw-r--r--webkitgtk.install14
5 files changed, 245 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..9c1387f0864f
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,81 @@
+pkgbase = webkitgtk
+ pkgdesc = Legacy Web content engine
+ pkgver = 2.4.11
+ pkgrel = 6
+ url = https://webkitgtk.org/
+ install = webkitgtk.install
+ arch = i686
+ arch = x86_64
+ license = custom
+ makedepends = gtk3
+ makedepends = gtk2
+ makedepends = gperf
+ makedepends = gobject-introspection
+ makedepends = python2
+ makedepends = mesa
+ makedepends = ruby
+ depends = libxt
+ depends = libxslt
+ depends = sqlite
+ depends = libsoup
+ depends = enchant
+ depends = libgl
+ depends = geoclue2
+ depends = gst-plugins-base-libs
+ depends = libsecret
+ depends = libwebp
+ depends = harfbuzz-icu
+ optdepends = gst-plugins-base: free media decoding
+ optdepends = gst-plugins-good: media decoding
+ optdepends = gst-libav: nonfree media decoding
+ options = !emptydirs
+ source = https://webkitgtk.org/releases/webkitgtk-2.4.11.tar.xz
+ source = webkitgtk-2.4.9-abs.patch
+ source = icu59.patch
+ sha256sums = 588aea051bfbacced27fdfe0335a957dca839ebe36aa548df39c7bbafdb65bf7
+ sha256sums = ec294bbb5588a1802a68e3615c6718486b22f922645c5fef686d3d103014bf70
+ sha256sums = eb791b9c8dcb84996904846dedf8c3ddf1a5fde32330177f3f0071510bd8ca6d
+
+pkgname = webkitgtk
+ pkgdesc = Legacy Web content engine for GTK+ 3
+ depends = libxt
+ depends = libxslt
+ depends = sqlite
+ depends = libsoup
+ depends = enchant
+ depends = libgl
+ depends = geoclue2
+ depends = gst-plugins-base-libs
+ depends = libsecret
+ depends = libwebp
+ depends = harfbuzz-icu
+ depends = gtk3
+ optdepends = gst-plugins-base: free media decoding
+ optdepends = gst-plugins-good: media decoding
+ optdepends = gst-libav: nonfree media decoding
+ optdepends = gtk2: Netscape plugin support
+ provides = webkitgtk3=2.4.11
+ provides = libwebkit3=2.4.11
+ conflicts = webkitgtk3
+ conflicts = libwebkit3
+ replaces = webkitgtk3
+ replaces = libwebkit3
+
+pkgname = webkitgtk2
+ pkgdesc = Legacy Web content engine for GTK+ 2
+ depends = libxt
+ depends = libxslt
+ depends = sqlite
+ depends = libsoup
+ depends = enchant
+ depends = libgl
+ depends = geoclue2
+ depends = gst-plugins-base-libs
+ depends = libsecret
+ depends = libwebp
+ depends = harfbuzz-icu
+ depends = gtk2
+ provides = libwebkit=2.4.11
+ conflicts = libwebkit
+ replaces = libwebkit
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..cfcc69060403
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,86 @@
+# $Id: PKGBUILD 294869 2017-04-27 03:06:45Z foutrelis $
+# Contributor: Andreas Radke <andyrtr@archlinux.org>
+
+pkgbase=webkitgtk
+pkgname=(webkitgtk webkitgtk2)
+pkgver=2.4.11
+pkgrel=6
+pkgdesc="Legacy Web content engine"
+arch=(i686 x86_64)
+url="https://webkitgtk.org/"
+license=(custom)
+depends=(libxt libxslt sqlite libsoup enchant libgl geoclue2 gst-plugins-base-libs
+ libsecret libwebp harfbuzz-icu)
+makedepends=(gtk3 gtk2 gperf gobject-introspection python2 mesa ruby)
+optdepends=('gst-plugins-base: free media decoding'
+ 'gst-plugins-good: media decoding'
+ 'gst-libav: nonfree media decoding')
+options=(!emptydirs)
+install=webkitgtk.install
+source=(https://webkitgtk.org/releases/$pkgbase-${pkgver}.tar.xz
+ webkitgtk-2.4.9-abs.patch
+ icu59.patch)
+sha256sums=('588aea051bfbacced27fdfe0335a957dca839ebe36aa548df39c7bbafdb65bf7'
+ 'ec294bbb5588a1802a68e3615c6718486b22f922645c5fef686d3d103014bf70'
+ 'eb791b9c8dcb84996904846dedf8c3ddf1a5fde32330177f3f0071510bd8ca6d')
+
+prepare() {
+ mkdir build-gtk{,2} path
+ ln -s /usr/bin/python2 path/python
+
+ cd $pkgbase-$pkgver
+ patch -Np1 -i ../webkitgtk-2.4.9-abs.patch
+ patch -Np1 -i ../icu59.patch
+}
+
+_build() (
+ _ver="$1"; shift
+ cd build-${_ver}
+
+ PATH="$srcdir/path:$PATH"
+
+ CXXFLAGS+=" -fno-delete-null-pointer-checks"
+ CFLAGS+=" -fno-delete-null-pointer-checks"
+
+ ../$pkgbase-$pkgver/configure --prefix=/usr \
+ --libexecdir=/usr/lib/webkit${_ver} \
+ --enable-introspection \
+ --disable-webkit2 \
+ --disable-gtk-doc \
+ "$@"
+
+ # https://bugzilla.gnome.org/show_bug.cgi?id=655517
+ sed -i 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+ make all stamp-po
+)
+
+build() {
+ _build gtk
+ _build gtk2 --with-gtk=2.0
+}
+
+package_webkitgtk() {
+ pkgdesc+=" for GTK+ 3"
+ depends+=(gtk3)
+ optdepends+=('gtk2: Netscape plugin support')
+ provides=("webkitgtk3=${pkgver}" "libwebkit3=${pkgver}")
+ conflicts=(webkitgtk3 libwebkit3)
+ replaces=(webkitgtk3 libwebkit3)
+
+ make -C build-gtk -j1 DESTDIR="$pkgdir" install
+ install -Dm644 $pkgbase-$pkgver/Source/WebKit/LICENSE \
+ "$pkgdir/usr/share/licenses/webkitgtk/LICENSE"
+}
+
+package_webkitgtk2() {
+ pkgdesc+=" for GTK+ 2"
+ depends+=(gtk2)
+ provides=("libwebkit=${pkgver}")
+ conflicts=(libwebkit)
+ replaces=(libwebkit)
+
+ make -C build-gtk2 -j1 DESTDIR="$pkgdir" install
+ install -Dm644 $pkgbase-$pkgver/Source/WebKit/LICENSE \
+ "$pkgdir/usr/share/licenses/webkitgtk2/LICENSE"
+}
diff --git a/icu59.patch b/icu59.patch
new file mode 100644
index 000000000000..39ff89ee63d3
--- /dev/null
+++ b/icu59.patch
@@ -0,0 +1,38 @@
+--- webkitgtk-2.16.1/Source/JavaScriptCore/API/JSStringRef.h.orig 2017-02-20 17:20:08.000000000 +0100
++++ webkitgtk-2.16.1/Source/JavaScriptCore/API/JSStringRef.h 2017-04-22 14:35:00.926530142 +0200
+@@ -32,6 +32,7 @@
+ #include <stdbool.h>
+ #endif
+ #include <stddef.h> /* for size_t */
++#include <uchar.h>
+
+ #ifdef __cplusplus
+ extern "C" {
+@@ -46,7 +47,7 @@
+ character. As with all scalar types, endianness depends on the underlying
+ architecture.
+ */
+- typedef unsigned short JSChar;
++ typedef char16_t JSChar;
+ #else
+ typedef wchar_t JSChar;
+ #endif
+--- webkitgtk-2.16.1/Source/WebKit2/Shared/API/c/WKString.h.orig 2017-02-20 17:20:17.000000000 +0100
++++ webkitgtk-2.16.1/Source/WebKit2/Shared/API/c/WKString.h 2017-04-22 14:35:56.853196170 +0200
+@@ -28,6 +28,7 @@
+
+ #include <WebKit/WKBase.h>
+ #include <stddef.h>
++#include <uchar.h>
+
+ #ifndef __cplusplus
+ #include <stdbool.h>
+@@ -39,7 +40,7 @@
+
+ #if !defined(WIN32) && !defined(_WIN32) \
+ && !((defined(__CC_ARM) || defined(__ARMCC__)) && !defined(__linux__)) /* RVCT */
+- typedef unsigned short WKChar;
++ typedef char16_t WKChar;
+ #else
+ typedef wchar_t WKChar;
+ #endif
diff --git a/webkitgtk-2.4.9-abs.patch b/webkitgtk-2.4.9-abs.patch
new file mode 100644
index 000000000000..9a1c5f990de6
--- /dev/null
+++ b/webkitgtk-2.4.9-abs.patch
@@ -0,0 +1,26 @@
+diff -Nur webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/GtkClickCounter.cpp webkitgtk-2.4.9/Source/WebCore/platform/gtk/GtkClickCounter.cpp
+--- webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/GtkClickCounter.cpp 2015-05-20 03:03:24.000000000 -0600
++++ webkitgtk-2.4.9/Source/WebCore/platform/gtk/GtkClickCounter.cpp 2016-02-07 11:30:42.392686308 -0700
+@@ -85,8 +85,8 @@
+ guint32 eventTime = getEventTime(event);
+
+ if ((event->type == GDK_2BUTTON_PRESS || event->type == GDK_3BUTTON_PRESS)
+- || ((abs(buttonEvent->x - m_previousClickPoint.x()) < doubleClickDistance)
+- && (abs(buttonEvent->y - m_previousClickPoint.y()) < doubleClickDistance)
++ || ((fabs(buttonEvent->x - m_previousClickPoint.x()) < doubleClickDistance)
++ && (fabs(buttonEvent->y - m_previousClickPoint.y()) < doubleClickDistance)
+ && (eventTime - m_previousClickTime < static_cast<guint>(doubleClickTime))
+ && (buttonEvent->button == m_previousClickButton)))
+ m_currentClickCount++;
+diff -Nur webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp webkitgtk-2.4.9/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp
+--- webkitgtk-2.4.9.orig/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2015-05-20 03:03:24.000000000 -0600
++++ webkitgtk-2.4.9/Source/WebCore/platform/gtk/LocalizedStringsGtk.cpp 2016-02-07 11:49:36.384691005 -0700
+@@ -659,7 +659,7 @@
+ if (!std::isfinite(time))
+ return String::fromUTF8(_("indefinite time"));
+
+- int seconds = static_cast<int>(abs(time));
++ int seconds = static_cast<int>(fabs(time));
+ int days = seconds / (60 * 60 * 24);
+ int hours = seconds / (60 * 60);
+ int minutes = (seconds / 60) % 60;
diff --git a/webkitgtk.install b/webkitgtk.install
new file mode 100644
index 000000000000..245d07b198f2
--- /dev/null
+++ b/webkitgtk.install
@@ -0,0 +1,14 @@
+post_install() {
+ post_upgrade $1 0
+}
+
+post_upgrade() {
+ if (( $(vercmp $2 2.4.11-4) < 0)); then
+ cat <<END
+
+ > WARNING: WebKitGTK+ 2.4 is known to have many security vulnerabilities that
+ will NOT be fixed. Avoid browsing with it.
+
+END
+ fi
+}