kumquat-buildroot/package/webkitgtk/Config.in
Adrian Perez de Castro 4140e0ffdf package/webkitgtk: allow building with musl and uclibc
WebKitGTK 2.32.1 includes fixes for building with the Musl libc, which
also makes it possible to use uClibc as well, therefore arrange
dependencies to allow selecting the package any of the C libraries is in
use. This is done by making the dependencies be more granular, basically
following what the wpewebkit package does.

In order to make make it build against uClibc a small patch that has
been submitted to the upstream's Bugzilla is needed.

Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
[yann.morin.1998@free.fr: add upstream commit refs in backported patch]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2021-06-04 22:37:26 +02:00

136 lines
4.8 KiB
Plaintext

config BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
bool
# ARM needs BLX, so v5t+, BE completely untested so disabled
default y if BR2_arm && !BR2_ARM_CPU_ARMV4
default y if BR2_aarch64 || BR2_aarch64_be
default y if BR2_i386 || BR2_x86_64
# Disabled on MIPS big endian due to sigbus
default y if BR2_mipsel || BR2_mips64el
# Disabled on PowerPC pending runtime testing
# Disabled on SuperH because of segfault
depends on BR2_USE_MMU # libglib2
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on BR2_PACKAGE_LIBGPG_ERROR_ARCH_SUPPORTS # libgcrypt
comment "webkitgtk needs libgtk3 and a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 7, host gcc >= 4.9"
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
depends on !BR2_BINFMT_FLAT
depends on !BR2_PACKAGE_LIBGTK3 || !BR2_INSTALL_LIBSTDCPP || \
!BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
!BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \
!BR2_HOST_GCC_AT_LEAST_4_9
depends on BR2_USE_MMU
config BR2_PACKAGE_WEBKITGTK
bool "webkitgtk"
depends on !BR2_STATIC_LIBS # wayland
depends on !BR2_BINFMT_FLAT # icu
depends on BR2_HOST_GCC_AT_LEAST_4_9 # icu
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_7
depends on BR2_USE_WCHAR # icu, libsoup
depends on BR2_PACKAGE_LIBGTK3
depends on BR2_PACKAGE_WEBKITGTK_ARCH_SUPPORTS
select BR2_PACKAGE_CAIRO
select BR2_PACKAGE_CAIRO_PNG
select BR2_PACKAGE_ENCHANT
select BR2_PACKAGE_HARFBUZZ
select BR2_PACKAGE_ICU
select BR2_PACKAGE_JPEG
select BR2_PACKAGE_LIBGCRYPT
select BR2_PACKAGE_LIBSECRET
select BR2_PACKAGE_LIBSOUP
select BR2_PACKAGE_LIBTASN1
select BR2_PACKAGE_LIBXML2
select BR2_PACKAGE_LIBXSLT
select BR2_PACKAGE_OPENJPEG
select BR2_PACKAGE_SQLITE
select BR2_PACKAGE_WEBP
select BR2_PACKAGE_WEBP_DEMUX
select BR2_PACKAGE_WOFF2
select BR2_PACKAGE_XLIB_LIBXCOMPOSITE if BR2_PACKAGE_LIBGTK3_X11
select BR2_PACKAGE_XLIB_LIBXDAMAGE if BR2_PACKAGE_LIBGTK3_X11
select BR2_PACKAGE_XLIB_LIBXRENDER if BR2_PACKAGE_LIBGTK3_X11
select BR2_PACKAGE_XLIB_LIBXT if BR2_PACKAGE_LIBGTK3_X11
help
WebKit is an open source, standards compliant web browser
engine.
http://www.webkitgtk.org/
if BR2_PACKAGE_WEBKITGTK
config BR2_PACKAGE_WEBKITGTK_SANDBOX
bool "sandboxing support"
depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12 # libseccomp
select BR2_PACKAGE_BUBBLEWRAP # runtime
select BR2_PACKAGE_XDG_DBUS_PROXY # runtime
select BR2_PACKAGE_LIBSECCOMP
help
Enable sandboxing of the processes used for network operation,
disk access, and Web content rendering.
comment "sandboxing support needs a toolchain w/ headers >= 3.12"
depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS
depends on !BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_12
config BR2_PACKAGE_WEBKITGTK_HTTPS
bool "HTTPS support"
depends on !BR2_STATIC_LIBS # libsoup -> glib-networking, gnutls
select BR2_PACKAGE_CA_CERTIFICATES # runtime
select BR2_PACKAGE_LIBSOUP_SSL
help
Enable HTTPS protocol support.
comment "webkitgtk https support needs a toolchain w/ dynamic library"
depends on BR2_STATIC_LIBS
config BR2_PACKAGE_WEBKITGTK_MULTIMEDIA
bool "multimedia support"
select BR2_PACKAGE_GSTREAMER1
select BR2_PACKAGE_GST1_PLUGINS_BAD
select BR2_PACKAGE_GST1_PLUGINS_BAD_PLUGIN_MPEGTSDEMUX
select BR2_PACKAGE_GST1_PLUGINS_BASE
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_ALSA
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_APP
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIOCONVERT
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_AUDIORESAMPLE
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_PLAYBACK
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOCONVERT
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VIDEOSCALE
select BR2_PACKAGE_GST1_PLUGINS_BASE_PLUGIN_VOLUME
select BR2_PACKAGE_GST1_PLUGINS_GOOD
select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_AUTODETECT
select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_ISOMP4
select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_MATROSKA
select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_RTSP
select BR2_PACKAGE_GST1_PLUGINS_GOOD_PLUGIN_VPX
select BR2_PACKAGE_GST1_LIBAV
help
This option pulls in all of the required dependencies
to enable multimedia (video/audio) support.
if BR2_PACKAGE_WEBKITGTK_MULTIMEDIA
config BR2_PACKAGE_WEBKITGTK_USE_GSTREAMER_GL
bool "use gstreamer-gl"
default y
depends on BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_HAS_PLATFORM
help
Use the GStreamer GL elements for handling video content.
This is recommended as it improves performance of video
playback. In some target configurations incorrect rendering
might be produced, and disabling this option may help.
endif
config BR2_PACKAGE_WEBKITGTK_WEBDRIVER
bool "WebDriver support"
help
Enable support for WebDriver. This will build and install the
WebKitWebDriver program in the target.
endif