Generate snapshot list modules

This will additionally generate {image}_snapshot module which contains
a list of vndk and snapshot libraries. This information will be used by
Soong to override source modules, and will look like:

    vendor_snapshot {
        name: "vendor_snapshot",
        version: "30",
        arch: {
            arm: {
                vndk_libs: ["libvndk", ...],
                shared_libs: ["libc++", ...],
                static_libs: ["libc++_static", ...],
                header_libs: ["libbase_headers", ...],
                binaries: ["sh.vendor", ...],
                objects: ["crtbegin_so", ...],
            },
            arm64: {
                ...
            },
            ...
        },
    }

As shared/static/header/binary/object snapshots may differ among
archtecture, they will be placed under arch properties.

Bug: 177098205
Test: run script and see results
Change-Id: I774f4a6394c0a8552be6822a9592c6511a849160
1 file changed