inherit gettext qemu pythonnative
-DEPENDS = "virtual/gettext wayland wayland-native pixman freetype glib-2.0 fontconfig openssl pango cairo icu libxkbcommon libexif dbus pciutils udev libcap alsa-lib virtual/egl elfutils-native libdrm atk gperf-native gconf nss nss-native nspr nspr-native bison-native qemu-native"
+DEPENDS = "virtual/gettext wayland wayland-native pixman freetype glib-2.0 fontconfig openssl pango cairo icu libxkbcommon libexif dbus pciutils udev libcap alsa-lib virtual/egl elfutils-native libdrm atk at-spi2-atk gperf-native gconf nss nss-native nspr nspr-native bison-native qemu-native"
PROVIDES = "${BROWSER_APPLICATION}"
B = "${OUT_DIR}/${BUILD_TYPE}"
+OUT_IMAGE_DIR = "${B}/image"
+
WEBRUNTIME_BUILD_TARGET = "webos:weboswebruntime"
BROWSER_APP_BUILD_TARGET = "chrome"
-BROWSER_APPLICATION = "chromium68-browser"
-BROWSER_APPLICATION_DIR = "/opt/chromium68"
+BROWSER_APPLICATION = "chromium84-browser"
+BROWSER_APPLICATION_DIR = "/opt/chromium84"
-TARGET = "${WEBRUNTIME_BUILD_TARGET}"
+TARGET = "${WEBRUNTIME_BUILD_TARGET} ${BROWSER_APP_BUILD_TARGET}"
# Skip do_install_append of webos_system_bus. It is not compatible with this component.
WEBOS_SYSTEM_BUS_FILES_LOCATION = "${S}/files/sysbus"
PACKAGECONFIG[use-linux-v4l2] = "use_v4l2_codec=true use_v4lplugin=true use_linux_v4l2_only=true"
PACKAGECONFIG[use-upstream-wayland] = " \
- ozone_platform_wayland_external=false ozone_platform_wayland=true \
- use_system_minigbm=true, \
- ozone_platform_wayland_external=true ozone_platform_wayland=false \
+ ozone_platform_wayland_external=false ozone_platform_wayland=true, \
+ ozone_platform_wayland_external=true ozone_platform_wayland=false \
"
GN_ARGS = "\
treat_warnings_as_errors=false\
is_agl=true\
use_cbe=true\
- is_chrome_cbe=false\
+ is_chrome_cbe=true\
+ is_component_build=false\
use_cups=false\
use_custom_libcxx=false\
use_kerberos=false\
}
install_chromium_browser() {
+ # Install browser files
+ ${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR}/${BUILD_TYPE} webos/install/default_browser
+
D_DIR=${D}${BROWSER_APPLICATION_DIR}
+ L_DIR=${D}${CBE_DATA_PATH}
install -d ${D_DIR}
+ install -d ${L_DIR}
- # Install browser files
- if [ -e "${SRC_DIR}/webos/install" ]; then
- cd ${OUT_DIR}/${BUILD_TYPE}
- xargs --arg-file=${SRC_DIR}/webos/install/default_browser/binary.list cp -R --no-dereference --preserve=mode,links -v --target-directory=${D_DIR}
- cd ${SRC_DIR}
- xargs --arg-file=${SRC_DIR}/webos/install/default_browser/runtime.list cp -R --no-dereference --preserve=mode,links -v --target-directory=${D_DIR}
- fi
+ cp -R --no-dereference --preserve=mode,links -v ${OUT_IMAGE_DIR}/${BROWSER_APPLICATION_DIR}/* ${D_DIR}
# AGL does not have PMLOG
sed -i.bak s/PmLogCtl.*// ${D_DIR}/run_webbrowser
# gzip -c ${OUT_DIR}/${BUILD_TYPE}/${MKSNAPSHOT_PATH}mksnapshot > ${D}${bindir_cross}/${HOST_SYS}-mksnapshot.gz
install -d ${D}${libdir}
+ install -d ${D}${libdir}/swiftshader
install -d ${D}${includedir}/${BPN}
install -d ${D}${CBE_DATA_PATH}
install -d ${D}${CBE_DATA_LOCALES_PATH}
# Install webos webview files
${S}/depot_tools/ninja ${PARALLEL_MAKE} -C ${OUT_DIR}/${BUILD_TYPE} webos/install/weboswebruntime
+
+ install -v -m 0644 ${OUT_DIR}/${BUILD_TYPE}/swiftshader/*.so ${D}${libdir}/swiftshader
+
+ cp -R --no-dereference --preserve=mode,links -v ${OUT_IMAGE_DIR}/${includedir}/${BPN}/* ${D}${includedir}/${BPN}/
+ install -v -m 0644 ${OUT_IMAGE_DIR}/${libdir}/*.so ${D}${libdir}
+
+ install -v -m 0644 ${OUT_IMAGE_DIR}/${CBE_DATA_PATH}/icudtl.dat ${D}${CBE_DATA_PATH}
+ install -v -m 0644 ${OUT_IMAGE_DIR}/${CBE_DATA_PATH}/snapshot_blob.bin ${D}${CBE_DATA_PATH}
+ # app_runtime_content.pak, webos_content.pak, extensions_shell_and_test.pak
+ install -v -m 0644 ${OUT_IMAGE_DIR}/${CBE_DATA_PATH}/*.pak ${D}${CBE_DATA_PATH}
+
+ cp -R --no-dereference --preserve=mode,links -v ${OUT_IMAGE_DIR}/${CBE_DATA_LOCALES_PATH}/*.pak ${D}${CBE_DATA_LOCALES_PATH}
+
chown root:root -R ${D}${libdir}
chown root:root -R ${D}${includedir}
+ chown root:root -R ${D}${CBE_DATA_LOCALES_PATH}
# move this to separate mksnapshot-cross recipe once we figure out how to build just cross mksnapshot from chromium repository
install -d ${D}${base_bindir}
do_install() {
install_webruntime
+ install_chromium_browser
}
WEBOS_SYSTEM_BUS_DIRS_LEGACY_BROWSER_APPLICATION = " \
FILES_${PN} = " \
${libdir}/*.so \
+ ${libdir}/swiftshader/*.so \
${CBE_DATA_PATH}/* \
${libdir}/${BPN}/*.so \
${WEBOS_SYSTEM_BUS_DIRS} \