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

Commit 5f45216c authored by Jooyung Han's avatar Jooyung Han Committed by Automerger Merge Worker
Browse files

Merge "Add drm clearkey APEX" into main am: 66c4eddb

parents 6289d7b0 66c4eddb
Loading
Loading
Loading
Loading
+91 −17
Original line number Diff line number Diff line
@@ -8,37 +8,63 @@ package {
}

cc_defaults {
    name: "aidl_clearkey_service_defaults",
    vendor: true,
    name: "aidl_clearkey_service_defaults-use-shared-deps",

    srcs: [
        "CreatePluginFactories.cpp",
        "CryptoPlugin.cpp",
        "DrmFactory.cpp",
        "DrmPlugin.cpp",
    shared_libs: [
        "libbase",
        "libbinder_ndk",
        "libcrypto",
        "liblog",
        "libprotobuf-cpp-lite",
        "libutils",
        "android.hardware.drm-V1-ndk",
    ],

    relative_install_path: "hw",
    static_libs: [
        "android.hardware.common-V2-ndk",
        "libclearkeybase",
        "libjsoncpp",
    ],
}

    cflags: ["-Wall", "-Werror", "-Wthread-safety"],
cc_defaults {
    name: "aidl_clearkey_service_defaults-use-static-deps",

    include_dirs: ["frameworks/av/include"],
    stl: "c++_static",

    shared_libs: [
        "libbase",
        "libbinder_ndk",
        "libcrypto",
        "liblog",
        "libprotobuf-cpp-lite",
        "libutils",
        "android.hardware.drm-V1-ndk",
    ],

    static_libs: [
        "android.hardware.common-V2-ndk",
        "android.hardware.drm-V1-ndk",
        "libbase",
        "libclearkeybase",
        "libjsoncpp",
        "libprotobuf-cpp-lite",
        "libutils",
    ],
}

cc_defaults {
    name: "aidl_clearkey_service_defaults",
    vendor: true,

    srcs: [
        "CreatePluginFactories.cpp",
        "CryptoPlugin.cpp",
        "DrmFactory.cpp",
        "DrmPlugin.cpp",
    ],

    relative_install_path: "hw",

    cflags: ["-Wall", "-Werror", "-Wthread-safety"],

    include_dirs: ["frameworks/av/include"],

    local_include_dirs: ["include"],

@@ -49,7 +75,10 @@ cc_defaults {

cc_binary {
    name: "android.hardware.drm-service.clearkey",
    defaults: ["aidl_clearkey_service_defaults"],
    defaults: [
        "aidl_clearkey_service_defaults",
        "aidl_clearkey_service_defaults-use-shared-deps",
    ],
    srcs: ["Service.cpp"],
    init_rc: ["android.hardware.drm-service.clearkey.rc"],
    vintf_fragments: ["android.hardware.drm-service.clearkey.xml"],
@@ -57,17 +86,31 @@ cc_binary {

cc_binary {
    name: "android.hardware.drm-service-lazy.clearkey",
    defaults: ["aidl_clearkey_service_defaults"],
    defaults: [
        "aidl_clearkey_service_defaults",
        "aidl_clearkey_service_defaults-use-shared-deps",
    ],
    overrides: ["android.hardware.drm-service.clearkey"],
    srcs: ["ServiceLazy.cpp"],
    init_rc: ["android.hardware.drm-service-lazy.clearkey.rc"],
    vintf_fragments: ["android.hardware.drm-service.clearkey.xml"],
}

cc_binary {
    name: "android.hardware.drm-service.clearkey.apex",
    stem: "android.hardware.drm-service.clearkey",
    defaults: [
        "aidl_clearkey_service_defaults",
        "aidl_clearkey_service_defaults-use-static-deps",
    ],
    srcs: ["Service.cpp"],
    installable: false, // installed in APEX
}

phony {
    name: "android.hardware.drm@latest-service.clearkey",
    required: [
        "android.hardware.drm-service.clearkey",
        "com.android.hardware.drm.clearkey",
    ],
}

@@ -123,3 +166,34 @@ cc_fuzz {
        ],
    },
}

apex {
    name: "com.android.hardware.drm.clearkey",
    manifest: "manifest.json",
    file_contexts: "file_contexts",
    key: "com.android.hardware.key",
    certificate: ":com.android.hardware.certificate",
    vendor: true,
    updatable: false,

    binaries: [
        "android.hardware.drm-service.clearkey.apex",
    ],
    prebuilts: [
        "android.hardware.drm-service.clearkey.apex.rc",
        "android.hardware.drm-service.clearkey.xml"
    ],
}

prebuilt_etc {
    name: "android.hardware.drm-service.clearkey.apex.rc",
    src: "android.hardware.drm-service.clearkey.apex.rc",
    installable: false,
}

prebuilt_etc {
    name: "android.hardware.drm-service.clearkey.xml",
    src: "android.hardware.drm-service.clearkey.xml",
    sub_dir: "vintf",
    installable: false,
}
+7 −0
Original line number Diff line number Diff line
service vendor.drm-clearkey-service /apex/com.android.hardware.drm.clearkey/bin/hw/android.hardware.drm-service.clearkey
    class hal
    user media
    group mediadrm drmrpc
    ioprio rt 4
    task_profiles ProcessCapacityHigh
    interface aidl android.hardware.drm.IDrmFactory/clearkey
+3 −0
Original line number Diff line number Diff line
(/.*)?                                                      u:object_r:vendor_file:s0
/etc(/.*)?                                                  u:object_r:vendor_configs_file:s0
/bin/hw/android\.hardware\.drm-service(-lazy)?\.clearkey    u:object_r:hal_drm_clearkey_aidl_exec:s0
+4 −0
Original line number Diff line number Diff line
{
  "name": "com.android.hardware.drm.clearkey",
  "version": 1
}