Files
void-packages/srcpkgs/webkit2gtk/template
q66 4cab13d461 webkit2gtk: update to 2.25.4, refactor template, enable debug
Additionally, gold is now always off (there was no point in
keeping it on and we don't ship it in cross compilers so it
was complicating the overall logic).

JIT is also now off for ARMv6. Upstream seems to have dropped it.

[ci skip]
2019-08-30 14:32:19 +02:00

121 lines
3.9 KiB
Bash

# Template file for 'webkit2gtk'
pkgname=webkit2gtk
version=2.25.4
revision=1
wrksrc="webkitgtk-${version}"
build_style=cmake
build_helper="gir"
configure_args="-DPORT=GTK -DUSE_LD_GOLD=OFF
-DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG
-DCMAKE_CXX_FLAGS_DEBUG=-DNDEBUG
-DCMAKE_CXX_FLAGS_RELWITHDEBINFO=-DNDEBUG
-DCMAKE_C_FLAGS_RELEASE=-DNDEBUG
-DCMAKE_C_FLAGS_DEBUG=-DNDEBUG
-DCMAKE_C_FLAGS_RELWITHDEBINFO=-DNDEBUG
-DCMAKE_LINKER=${XBPS_CROSS_TRIPLET}-gcc
-DRUBY_VERSION=2.6
-DRUBY_CONFIG_INCLUDE_DIR=${XBPS_CROSS_BASE}/usr/include/ruby-2.6.0
-DENABLE_GTKDOC=OFF -DUSE_GSTREAMER_GL=OFF -DUSE_WPE_RENDERER=OFF
-DENABLE_JIT=$(vopt_if jit ON OFF)
-DENABLE_C_LOOP=$(vopt_if jit OFF ON)
-DENABLE_INTROSPECTION=$(vopt_if gir ON OFF)
-DENABLE_WAYLAND_TARGET=$(vopt_if wayland ON OFF)
-DENABLE_X11_TARGET=$(vopt_if x11 ON OFF)
-DENABLE_SAMPLING_PROFILER=$(vopt_if sampling_profiler ON OFF)"
hostmakedepends="perl python pkg-config gperf flex ruby glib-devel geoclue2
$(vopt_if wayland wayland-devel)"
makedepends="at-spi2-core-devel libjpeg-turbo-devel libpng-devel
harfbuzz-devel gst-plugins-base1-devel gst-plugins-bad1-devel sqlite-devel
libsoup-devel libxslt-devel gnutls-devel icu-devel enchant-devel
dbus-glib-devel libwebp-devel gtk+-devel gtk+3-devel libgudev-devel
libsecret-devel ruby-devel geoclue2-devel libnotify-devel hyphen-devel
woff2-devel freetype-devel libopenjpeg2-devel libatomic-devel
qt5-devel $(vopt_if x11 libXt-devel)
$(vopt_if wayland 'MesaLib-devel libxkbcommon-devel wayland-devel wayland-protocols')"
short_desc="GTK+3 port of the WebKit2 browser engine"
maintainer="Enno Boland <gottox@voidlinux.org>"
license="LGPL-2.1-or-later, BSD-2-Clause"
homepage="https://webkitgtk.org/"
distfiles="${homepage}/releases/webkitgtk-${version}.tar.xz"
checksum=9361058c059402117995c779906f4a25232185ce7735663428fda9cf3c79f101
build_options="gir wayland x11 bubblewrap jit sampling_profiler"
build_options_default="gir wayland x11 bubblewrap"
desc_option_bubblewrap="Enable bubblewrap sandbox"
desc_option_jit="JavaScript JIT (Only some architectures)"
desc_option_sampling_profiler="Sampling profiler support (JIT + glibc only)"
# detection + runtime
if [ "$build_option_bubblewrap" ]; then
hostmakedepends+=" bubblewrap xdg-dbus-proxy"
makedepends+=" libseccomp-devel"
depends+=" bubblewrap xdg-dbus-proxy"
fi
# only a few platform support JIT
case "$XBPS_TARGET_MACHINE" in
armv7l*|aarch64*|x86_64*|mips*)
build_options_default+=" jit"
if [ "$XBPS_TARGET_LIBC" = "glibc" ]; then
build_options_default+=" sampling_profiler"
elif [ "$build_option_sampling_profiler" ]; then
broken="sampling_profiler is only supported on glibc"
fi
;;
i686*)
# JIT requires SSE2 so disabled by default
# it's also currently broken
if [ "$build_option_jit" ]; then
broken="OffsetExtractor: No magic values found."
fi
;;
*)
if [ "$build_option_jit" ]; then
broken="JIT is not supported on ${XBPS_TARGET_MACHINE}"
fi
;;
esac
# extra validation
if [ "$build_option_sampling_profiler" -a -z "$build_option_jit" ]; then
broken="sampling_profiler requires JIT"
fi
pre_configure() {
# work around large debug symbols on 32-bit hosts
if [ "$XBPS_WORDSIZE" = "32" ]; then
export CFLAGS="${CFLAGS/-g/-g1}"
export CXXFLAGS="${CXXFLAGS/-g/-g1}"
export LDFLAGS+=" -Wl,--no-keep-memory"
fi
# the above is not enough for 32-bit ppc and debug
case "$XBPS_TARGET_MACHINE" in
ppc64*) ;;
ppc*)
export CFLAGS="${CFLAGS/-O2/-Os}"
export CXXFLAGS="${CXXFLAGS/-O2/-Os}"
;;
esac
}
post_install() {
vlicense Source/WebCore/LICENSE-APPLE
vlicense Source/WebCore/LICENSE-LGPL-2.1
vlicense Source/WebCore/LICENSE-LGPL-2
}
webkit2gtk-devel_package() {
depends="gtk+3-devel libsoup-devel ${sourcepkg}>=${version}_${revision}"
short_desc+=" - development files"
pkg_install() {
vmove usr/include
vmove usr/lib/pkgconfig
if [ "$build_option_gir" ]; then
vmove usr/share/gir-1.0
fi
vmove "usr/lib/*.so"
}
}