//
// Copyright (C) 2025 The LineageOS Project
//
// SPDX-License-Identifier: Apache-2.0
//

// fstab
prebuilt_etc {
    name: "fstab.qcom",
    src: "etc/fstab.qcom",
    vendor: true,
    vendor_ramdisk_available: true,
}

// zram
prebuilt_etc {
    name: "init.recovery.qcom.rc",
    src: "etc/init.recovery.qcom.rc",
    sub_dir: "init",
    recovery: true,
}

// Init configuration files
prebuilt_etc {
    name: "init.qcom.rc",
    src: "etc/init.qcom.rc",
    sub_dir: "init/hw",
    vendor: true,
}

prebuilt_etc {
    name: "init.qti.kernel.rc",
    src: "etc/init.qti.kernel.rc",
    sub_dir: "init/hw",
    vendor: true,
}

prebuilt_etc {
    name: "init.recovery.qcom.rc",
    src: "etc/init.recovery.qcom.rc",
    sub_dir: "init",
    recovery: true,
}

prebuilt_etc {
    name: "init.target.rc",
    src: "etc/init.target.rc",
    sub_dir: "init/hw",
    vendor: true,
}

prebuilt_etc {
    name: "ueventd.qcom.rc",
    filename: "ueventd.rc",
    src: "etc/ueventd.qcom.rc",
    vendor: true,
}

// Init scripts
sh_binary {
    name: "init.class_main.sh",
    src: "bin/init.class_main.sh",
    vendor: true,
}

sh_binary {
    name: "init.kernel.post_boot-bengal.sh",
    src: "bin/init.kernel.post_boot-bengal.sh",
    vendor: true,
}

sh_binary {
    name: "init.kernel.post_boot-bengal-iot.sh",
    src: "bin/init.kernel.post_boot-bengal-iot.sh",
    vendor: true,
}

sh_binary {
    name: "init.kernel.post_boot.sh",
    src: "bin/init.kernel.post_boot.sh",
    vendor: true,
}

sh_binary {
    name: "init.qcom.class_core.sh",
    src: "bin/init.qcom.class_core.sh",
    vendor: true,
}

sh_binary {
    name: "init.qcom.early_boot.sh",
    src: "bin/init.qcom.early_boot.sh",
    vendor: true,
}

sh_binary {
    name: "init.qcom.sh",
    src: "bin/init.qcom.sh",
    vendor: true,
}

sh_binary {
    name: "init.qti.dcvs.sh",
    src: "bin/init.qti.dcvs.sh",
    vendor: true,
}

sh_binary {
    name: "init.qti.early_init.sh",
    src: "bin/init.qti.early_init.sh",
    vendor: true,
}

sh_binary {
    name: "init.qti.kernel.sh",
    src: "bin/init.qti.kernel.sh",
    vendor: true,
}

sh_binary {
    name: "init.qti.write.sh",
    src: "bin/init.qti.write.sh",
    vendor: true,
}

sh_binary {
    name: "system_dlkm_modprobe.sh",
    src: "bin/system_dlkm_modprobe.sh",
    vendor: true,
}

sh_binary {
    name: "vendor_modprobe.sh",
    src: "bin/vendor_modprobe.sh",
    vendor: true,
}
