summaryrefslogtreecommitdiffstats
path: root/meta-agl-flutter/tools/configs/desktop-auto.json
diff options
context:
space:
mode:
Diffstat (limited to 'meta-agl-flutter/tools/configs/desktop-auto.json')
-rw-r--r--meta-agl-flutter/tools/configs/desktop-auto.json136
1 files changed, 136 insertions, 0 deletions
diff --git a/meta-agl-flutter/tools/configs/desktop-auto.json b/meta-agl-flutter/tools/configs/desktop-auto.json
new file mode 100644
index 00000000..66cec712
--- /dev/null
+++ b/meta-agl-flutter/tools/configs/desktop-auto.json
@@ -0,0 +1,136 @@
+{
+ "id": "desktop-auto",
+ "load": true,
+ "supported_archs": [
+ "x86_64"
+ ],
+ "supported_host_types": [
+ "ubuntu",
+ "fedora"
+ ],
+ "flutter_runtime": "debug",
+ "type": "host",
+ "env": {
+ "FLUTTER_AUTO_SRC_DIR": "${FLUTTER_WORKSPACE}/app/ivi-homescreen",
+ "FLUTTER_AUTO_BUILD_DIR": "${FLUTTER_WORKSPACE}/app/ivi-homescreen/build",
+ "FLUTTER_AUTO_CMAKE_ARGS": "-DCMAKE_BUILD_TYPE=Debug -DBUILD_PLUGIN_SECURE_STORAGE=ON",
+ "COMP_SURF_PBR_SRC_DIR": "${FLUTTER_WORKSPACE}/app/comp_surf_pbr",
+ "COMP_SURF_PBR_BUILD_DIR": "${FLUTTER_WORKSPACE}/app/comp_surf_pbr/build",
+ "COMP_SURF_PBR_CMAKE_ARGS": "-DCMAKE_BUILD_TYPE=Debug",
+ "FLUTTER_AUTO_EXE": "LD_LIBRARY_PATH=${COMP_SURF_PBR_BUILD_DIR} ${FLUTTER_AUTO_BUILD_DIR}/shell/flutter-auto --j=${PLATFORM_ID_DIR_RELATIVE}/default_config.json --b=${PLATFORM_ID_DIR_RELATIVE}",
+ "PING_CMD": "loginctl show-session $(awk '/tty/ {print $1}' <(loginctl)) -p Type",
+ "CREATE_BUNDLE_FOLDER": "mkdir -p ${PLATFORM_ID_DIR_RELATIVE}/data",
+ "COPY_PLATFORM_ID_TO_BUNDLE_FOLDER": "cp -r ${PLATFORM_ID_DIR}/default_config.json ${PLATFORM_ID_DIR_RELATIVE}/",
+ "COPY_BUNDLE_FOLDER_TO_PLATOFRM_ID": "cp -r ${BUNDLE_FOLDER}/* ${PLATFORM_ID_DIR_RELATIVE}/",
+ "CREATE_ASSET_SYMLINK": "ln -rsf build/flutter_assets ${PLATFORM_ID_DIR_RELATIVE}/data/flutter_assets",
+ "STAGE_BUNDLE_FOLDER": "${CREATE_BUNDLE_FOLDER} && ${COPY_PLATFORM_ID_TO_BUNDLE_FOLDER} && ${COPY_BUNDLE_FOLDER_TO_PLATOFRM_ID} && ${CREATE_ASSET_SYMLINK}"
+ },
+ "runtime": {
+ "config": {
+ "view": [
+ {
+ "width": 1920,
+ "height": 1080,
+ "cursor_theme": "DMZ-White",
+ "fullscreen": false
+ }
+ ]
+ },
+ "pre-requisites": {
+ "x86_64": {
+ "ubuntu": {
+ "cmds": [
+ "sudo snap install cmake --classic",
+ "sudo add-apt-repository -y ppa:kisak/kisak-mesa",
+ "sudo apt update -y",
+ "sudo apt install lsb-release wget software-properties-common gnupg apt-file",
+ "sudo apt-file update",
+ "wget https://apt.llvm.org/llvm.sh",
+ "chmod +x ./llvm.sh",
+ "sed -i 's|add-apt-repository \"${REPO_NAME}\"|add-apt-repository -y \"${REPO_NAME}\"|g' ./llvm.sh",
+ "sudo ./llvm.sh 14",
+ "rm ./llvm.sh",
+ "sudo apt install -y clang-14 lldb-14 lld-14 clangd-14 clang-tidy-14 clang-format-14 clang-tools-14 llvm-14-dev lld-14 lldb-14 llvm-14-tools libomp-14-dev libc++-14-dev libc++abi-14-dev libclang-common-14-dev libclang-14-dev libclang-cpp14-dev libunwind-14-dev",
+ "sudo apt install -y libwayland-dev wayland-protocols mesa-common-dev libegl1-mesa-dev libgles2-mesa-dev mesa-utils libxkbcommon-dev ninja-build",
+ "sudo apt install -y build-essential libvulkan-dev vulkan-tools vulkan-validationlayers vulkan-utils libtool",
+ "sudo apt autoremove -y",
+ "sudo apt clean -y",
+ "cmake --version",
+ "clang++ --version",
+ "apt-file search cmake",
+ "apt-file search clang++"
+ ]
+ },
+ "fedora": {
+ "cmds": [
+ "sudo dnf -y update",
+ "sudo dnf -y upgrade",
+ "sudo dnf -y install wayland-devel wayland-protocols-devel libxkbcommon-devel cmake ninja-build mesa-dri-drivers mesa-filesystem mesa-libEGL-devel mesa-libGL-devel mesa-libGLU-devel mesa-libgbm-devel mesa-libglapi mesa-libxatracker mesa-vulkan-drivers vulkan-tools libunwind-devel clang clang-analyzer clang-devel clang-libs clang-resource-filesystem llvm-devel clang-tools-extra lld lld-libs lldb libcxx libcxx-devel libcxx-static libcxxabi libcxxabi-devel libcxxabi-static gstreamer1-devel gstreamer1-plugins-base-devel gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras gstreamer1-plugins-base-tools gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly-free libtool",
+ "sudo dnf -y autoremove",
+ "cmake --version",
+ "clang++ --version",
+ "dnf provides cmake",
+ "dnf provides clang++"
+ ]
+ }
+ }
+ },
+ "post_cmds": [
+ {
+ "ubuntu": {
+ "env": {
+ "CC": "/usr/bin/clang",
+ "CXX": "/usr/bin/clang++"
+ }
+ },
+ "fedora": {
+ "env": {
+ "CC": "/usr/lib64/ccache/clang",
+ "CXX": "/usr/lib64/ccache/clang++"
+ }
+ },
+ "cwd": "${FLUTTER_AUTO_BUILD_DIR}",
+ "cmds": [
+ "cmake ${FLUTTER_AUTO_SRC_DIR} ${FLUTTER_AUTO_CMAKE_ARGS}",
+ "make flutter-auto -j"
+ ]
+ },
+ {
+ "ubuntu": {
+ "env": {
+ "CC": "/usr/bin/clang",
+ "CXX": "/usr/bin/clang++"
+ }
+ },
+ "fedora": {
+ "env": {
+ "CC": "/usr/lib64/ccache/clang",
+ "CXX": "/usr/lib64/ccache/clang++"
+ }
+ },
+ "cwd": "${COMP_SURF_PBR_BUILD_DIR}",
+ "cmds": [
+ "cmake ${COMP_SURF_PBR_SRC_DIR} ${COMP_SURF_PBR_CMAKE_ARGS}",
+ "make comp_surf_pbr -j"
+ ]
+ }
+ ]
+ },
+ "overwrite-existing": true,
+ "custom-device": {
+ "id": "desktop-auto",
+ "label": "Toyota flutter-auto",
+ "sdkNameAndVersion": "flutter-auto x86_64",
+ "platform": "linux-x64",
+ "enabled": true,
+ "ping": "bash -c \"${PING_CMD}\"",
+ "pingSuccessRegex": "Type=wayland",
+ "postBuild": "bash -c \"rm -rf ${PLATFORM_ID_DIR_RELATIVE}\"",
+ "install": "bash -c \"${STAGE_BUNDLE_FOLDER}\"",
+ "uninstall": "bash -c \"rm -rf ${PLATFORM_ID_DIR_RELATIVE}\"",
+ "runDebug": "bash -c \"${FLUTTER_AUTO_EXE}\"",
+ "forwardPort": null,
+ "forwardPortSuccessRegex": null,
+ "screenshot": null
+ }
+} \ No newline at end of file