2a19afecb4
Add an option to enable WebKit's sandbox, which uses kernel namespaces to isolate the processes used for Web content rendering (WebKitWebProcess) and network/disk access (WebKitNetworkProcess). The reason to have an option is that it needs additional dependencies (bubblewrap, xdg-dbus-proxy, libseccomp), and that some users may choose to deploy alternative solution (for example: putting all of WebKit inside its own container, using systemd-nspawn or the like). Signed-off-by: Adrian Perez de Castro <aperez@igalia.com> [Peter: select libseccomp] Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
126 lines
4.5 KiB
Plaintext
126 lines
4.5 KiB
Plaintext
config BR2_PACKAGE_WPEWEBKIT_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 "wpewebkit needs a toolchain w/ C++, wchar, threads, dynamic library, gcc >= 6"
|
|
depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS
|
|
depends on !BR2_BINFMT_FLAT
|
|
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR \
|
|
|| !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS \
|
|
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
|
|
|
comment "wpewebkit needs an OpenGL ES w/ EGL-capable Wayland backend"
|
|
depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS
|
|
depends on !BR2_BINFMT_FLAT
|
|
depends on !BR2_PACKAGE_HAS_LIBGLES || !BR2_PACKAGE_HAS_LIBEGL \
|
|
|| !BR2_PACKAGE_HAS_LIBEGL_WAYLAND
|
|
|
|
config BR2_PACKAGE_WPEWEBKIT
|
|
bool "wpewebkit"
|
|
depends on !BR2_STATIC_LIBS # wayland
|
|
depends on !BR2_BINFMT_FLAT # icu
|
|
depends on BR2_INSTALL_LIBSTDCPP # harfbuzz, icu
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, icu, libsoup
|
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_6
|
|
depends on BR2_USE_WCHAR # icu, libsoup
|
|
depends on BR2_PACKAGE_HAS_LIBGLES # libepoxy
|
|
depends on BR2_PACKAGE_HAS_LIBEGL # libepoxy
|
|
depends on BR2_PACKAGE_HAS_LIBEGL_WAYLAND # wpebackend-fdo
|
|
depends on BR2_PACKAGE_WPEWEBKIT_ARCH_SUPPORTS
|
|
select BR2_PACKAGE_CAIRO
|
|
select BR2_PACKAGE_CAIRO_PNG
|
|
select BR2_PACKAGE_HARFBUZZ
|
|
select BR2_PACKAGE_ICU
|
|
select BR2_PACKAGE_JPEG
|
|
select BR2_PACKAGE_LIBEPOXY
|
|
select BR2_PACKAGE_LIBGCRYPT
|
|
select BR2_PACKAGE_LIBPNG
|
|
select BR2_PACKAGE_LIBSOUP
|
|
select BR2_PACKAGE_LIBTASN1
|
|
select BR2_PACKAGE_LIBXSLT
|
|
select BR2_PACKAGE_OPENJPEG
|
|
select BR2_PACKAGE_WAYLAND
|
|
select BR2_PACKAGE_WAYLAND_PROTOCOLS
|
|
select BR2_PACKAGE_WEBP
|
|
select BR2_PACKAGE_WEBP_DEMUX
|
|
select BR2_PACKAGE_WPEBACKEND_FDO
|
|
help
|
|
WPE (Web Platform for Embedded) port of the WebKit engine,
|
|
to allow embedders to create simple and performant systems
|
|
based on Web platform technologies.
|
|
|
|
https://wpewebkit.org/
|
|
|
|
if BR2_PACKAGE_WPEWEBKIT
|
|
|
|
config BR2_PACKAGE_WPEWEBKIT_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 asccess, and Web content rendering.
|
|
|
|
comment "sandboxing supports 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_WPEWEBKIT_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_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_WPEWEBKIT_MULTIMEDIA
|
|
|
|
config BR2_PACKAGE_WPEWEBKIT_USE_GSTREAMER_GL
|
|
bool "use gstreamer-gl"
|
|
default y
|
|
depends on BR2_PACKAGE_GST1_PLUGINS_BASE_LIB_OPENGL_OPENGL
|
|
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_WPEWEBKIT_WEBDRIVER
|
|
bool "WebDriver support"
|
|
help
|
|
Enable support for WebDriver. This will build and install the
|
|
WebKitWebDriver program in the target.
|
|
|
|
endif
|