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

Commit 2df0a109 authored by Anton Hansson's avatar Anton Hansson Committed by Gerrit Code Review
Browse files

Merge "Add genrule for the current sdk proto"

parents 6e302049 1911d7c1
Loading
Loading
Loading
Loading
+29 −1
Original line number Original line Diff line number Diff line
@@ -17,7 +17,10 @@ apex {
    manifest: "manifest.json",
    manifest: "manifest.json",
    binaries: [ "derive_sdk" ],
    binaries: [ "derive_sdk" ],
    java_libs: [ "framework-sdkext" ],
    java_libs: [ "framework-sdkext" ],
    prebuilts: [ "com.android.sdkext.ldconfig" ],
    prebuilts: [
      "com.android.sdkext.ldconfig",
      "cur_sdkinfo",
    ],
    key: "com.android.sdkext.key",
    key: "com.android.sdkext.key",
    certificate: ":com.android.sdkext.certificate",
    certificate: ":com.android.sdkext.certificate",
}
}
@@ -39,3 +42,28 @@ prebuilt_etc {
    filename: "ld.config.txt",
    filename: "ld.config.txt",
    installable: false,
    installable: false,
}
}

python_binary_host {
    name: "gen_sdkinfo",
    srcs: [
        "derive_sdk/sdk.proto",
        "gen_sdkinfo.py",
    ],
    proto: {
        canonical_path_from_root: false,
    },
}

gensrcs {
    name: "cur_sdkinfo_src",
    srcs: [""],
    tools: [ "gen_sdkinfo" ],
    cmd: "$(location) -v 0 -o $(out)",
}

prebuilt_etc {
    name: "cur_sdkinfo",
    src: ":cur_sdkinfo_src",
    filename: "sdkinfo.binarypb",
    installable: false,
}
+19 −0
Original line number Original line Diff line number Diff line
import sdk_pb2
import sys

if __name__ == '__main__':
  argv = sys.argv[1:]
  if not len(argv) == 4 or sorted([argv[0], argv[2]]) != ['-o', '-v']:
    print('usage: gen_sdkinfo -v <version> -o <output-file>')
    sys.exit(1)

  for i in range(len(argv)):
    if sys.argv[i] == '-o':
      filename = sys.argv[i+1]
    if sys.argv[i] == '-v':
      version = int(sys.argv[i+1])

  proto = sdk_pb2.SdkVersion()
  proto.version = version
  with open(filename, 'wb') as f:
    f.write(proto.SerializeToString())