Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4e9d7b3c authored by Cole Faust's avatar Cole Faust Committed by Gerrit Code Review
Browse files

Merge "Define android_gsi module" into main

parents 44e780c3 be78edc9
Loading
Loading
Loading
Loading
+34 −17
Original line number Diff line number Diff line
android_rootdirs = [
generic_rootdirs = [
    "acct",
    "apex",
    "bootstrap-apex",
@@ -15,19 +15,22 @@ android_rootdirs = [
    "oem",
    "postinstall",
    "proc",
    "product",
    "second_stage_resources",
    "storage",
    "sys",
    "system",
    "system_dlkm",
    "system_ext",
    "tmp",
    "vendor",
    "vendor_dlkm",
]

android_symlinks = [
android_rootdirs = [
    "system_ext",
    "product",
]

generic_symlinks = [
    {
        target: "/system/bin/init",
        name: "init",
@@ -40,18 +43,10 @@ android_symlinks = [
        target: "/system/bin",
        name: "bin",
    },
    {
        target: "/product",
        name: "system/product",
    },
    {
        target: "/vendor",
        name: "system/vendor",
    },
    {
        target: "/system_ext",
        name: "system/system_ext",
    },
    {
        target: "/system_dlkm/lib/modules",
        name: "system/lib/modules",
@@ -121,6 +116,17 @@ android_symlinks = [
    },
]

android_symlinks = [
    {
        target: "/product",
        name: "system/product",
    },
    {
        target: "/system_ext",
        name: "system/system_ext",
    },
]

filegroup {
    name: "generic_system_sign_key",
    srcs: [":avb_testkey_rsa4096"],
@@ -340,13 +346,17 @@ phony {
    ],
}

android_system_image {
    name: "generic_system_image",
filegroup {
    name: "system_image_erofs_compress_hints.txt",
    srcs: ["erofs_compress_hints.txt"],
}

android_filesystem_defaults {
    name: "system_image_defaults",
    partition_name: "system",
    base_dir: "system",
    dirs: android_rootdirs,
    symlinks: android_symlinks,
    dirs: generic_rootdirs,
    symlinks: generic_symlinks,
    file_contexts: ":plat_file_contexts",
    linker_config: {
        gen_linker_config: true,
@@ -367,7 +377,7 @@ android_system_image {
    type: "erofs",
    erofs: {
        compressor: "lz4hc,9",
        compress_hints: "erofs_compress_hints.txt",
        compress_hints: ":system_image_erofs_compress_hints.txt",
    },
    build_logtags: true,
    gen_aconfig_flags_pb: true,
@@ -873,3 +883,10 @@ android_system_image {
        },
    },
}

android_system_image {
    name: "generic_system_image",
    defaults: ["system_image_defaults"],
    dirs: android_rootdirs,
    symlinks: android_symlinks,
}
+136 −0
Original line number Diff line number Diff line
@@ -61,3 +61,139 @@ prebuilt_etc {
    system_ext_specific: true,
    relative_install_path: "gsi",
}

gsi_symlinks = [
    {
        target: "/system/system_ext",
        name: "system_ext",
    },
    {
        target: "/system/product",
        name: "product",
    },
]

android_system_image {
    name: "android_gsi",
    defaults: ["system_image_defaults"],
    symlinks: gsi_symlinks,
    deps: [
        ///////////////////////////////////////////
        // gsi_system_ext
        ///////////////////////////////////////////

        // handheld packages
        "Launcher3QuickStep",
        "Provision",
        "Settings",
        "StorageManager",
        "SystemUI",

        // telephony packages
        "CarrierConfig",

        // Install a copy of the debug policy to the system_ext partition, and allow
        // init-second-stage to load debug policy from system_ext.
        // This option is only meant to be set by compliance GSI targets.
        "system_ext_userdebug_plat_sepolicy.cil",

        ///////////////////////////////////////////
        // base_system_ext
        ///////////////////////////////////////////
        "build_flag_system_ext",
        "fs_config_dirs_system_ext",
        "fs_config_files_system_ext",
        "group_system_ext",
        "passwd_system_ext",
        "SatelliteClient",
        "selinux_policy_system_ext",
        "system_ext_manifest.xml",
        "system_ext-build.prop",
        // Base modules when shipping api level is less than or equal to 34
        "hwservicemanager",
        "android.hidl.allocator@1.0-service",

        ///////////////////////////////////////////
        // window_extensions_base
        ///////////////////////////////////////////
        "androidx.window.extensions",
        "androidx.window.sidecar",

        ///////////////////////////////////////////
        // gsi_release
        ///////////////////////////////////////////
        "gsi_skip_mount.cfg",
        "init.gsi.rc",
        "init.vndk-nodef.rc",
        // Overlay the GSI specific setting for framework and SystemUI
        "gsi_overlay_framework",
        "gsi_overlay_systemui",

        ///////////////////////////////////////////
        // VNDK
        ///////////////////////////////////////////
        "com.android.vndk.v30",
        "com.android.vndk.v31",
        "com.android.vndk.v32",
        "com.android.vndk.v33",
        "com.android.vndk.v34",

        ///////////////////////////////////////////
        // AVF
        ///////////////////////////////////////////
        "com.android.compos",
        "features_com.android.virt.xml",

        ///////////////////////////////////////////
        // gsi_product
        ///////////////////////////////////////////
        "Browser2",
        "Camera2",
        "Dialer",
        "LatinIME",
        "apns-full-conf.xml",

        ///////////////////////////////////////////
        // media_product
        ///////////////////////////////////////////
        "webview",

        ///////////////////////////////////////////
        // base_product
        ///////////////////////////////////////////

        // Base modules and settings for the product partition.
        "build_flag_product",
        "fs_config_dirs_product",
        "fs_config_files_product",
        "group_product",
        "ModuleMetadata",
        "passwd_product",
        "product_compatibility_matrix.xml",
        "product_manifest.xml",
        "selinux_policy_product",
        "product-build.prop",

        // AUDIO
        "frameworks_sounds",

        ///////////////////////////////////////////
        // base_system
        ///////////////////////////////////////////
        "charger",
    ] + select(product_variable("debuggable"), {
        // Packages included only for eng or userdebug builds, previously debug tagged
        true: ["adb_keys"],
        default: [],
    }),
    multilib: {
        both: {
            // PRODUCT_PACKAGES_SHIPPING_API_LEVEL_34
            deps: ["android.hidl.memory@1.0-impl"],
        },
    },
    enabled: select(soong_config_variable("ANDROID", "PRODUCT_INSTALL_DEBUG_POLICY_TO_SYSTEM_EXT"), {
        "true": true,
        default: false,
    }),
}