95 lines
2.6 KiB
Python
95 lines
2.6 KiB
Python
################################################################################
|
|
# Copyright 2016 Google LLC.
|
|
#
|
|
# This software is licensed under the terms defined in the Widevine Master
|
|
# License Agreement. For a copy of this agreement, please contact
|
|
# widevine-licensing@google.com.
|
|
################################################################################
|
|
|
|
# Build file for provisioning 3.0 SDK.
|
|
|
|
package(
|
|
default_visibility = ["//visibility:public"],
|
|
)
|
|
|
|
# Defines the common copts for cc_library targets. The main option here is
|
|
# -fvisibility=default, which exports symbols from the public APIs in the shared
|
|
# library.
|
|
# Note that the shared library should be built with -fvisibility=hidden.
|
|
PUBLIC_COPTS = ["-fvisibility=default"]
|
|
|
|
filegroup(
|
|
name = "binary_release_files",
|
|
srcs = glob(["*.h"]),
|
|
)
|
|
|
|
cc_binary(
|
|
name = "libprovisioning_sdk.so",
|
|
linkshared = 1,
|
|
deps = [":provisioning_engine"],
|
|
)
|
|
|
|
cc_library(
|
|
name = "libprovisioning_sdk",
|
|
srcs = [":libprovisioning_sdk.so"],
|
|
hdrs = glob(["*.h"]),
|
|
deps = [
|
|
"//base",
|
|
"//common:certificate_type",
|
|
"//protos/public:certificate_provisioning_cc_proto",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "provisioning_engine",
|
|
srcs = ["provisioning_engine.cc"],
|
|
hdrs = ["provisioning_engine.h"],
|
|
copts = PUBLIC_COPTS,
|
|
deps = [
|
|
":provisioning_session",
|
|
":provisioning_status",
|
|
"//base",
|
|
"@abseil_repo//absl/memory",
|
|
"//common:certificate_type",
|
|
"//common:drm_service_certificate",
|
|
"//common:rsa_key",
|
|
"//provisioning_sdk/internal:provisioning30_session_impl",
|
|
"//provisioning_sdk/internal:provisioning_engine_impl",
|
|
"//provisioning_sdk/internal:provisioning_session_impl",
|
|
"//protos/public:certificate_provisioning_cc_proto",
|
|
],
|
|
# Make sure libprovisioning_sdk links in symbols defined in this target.
|
|
alwayslink = 1,
|
|
)
|
|
|
|
cc_test(
|
|
name = "provisioning_engine_test",
|
|
size = "small",
|
|
srcs = ["provisioning_engine_test.cc"],
|
|
deps = [
|
|
":provisioning_engine",
|
|
"//testing:gunit_main",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "provisioning_session",
|
|
srcs = ["provisioning_session.cc"],
|
|
hdrs = ["provisioning_session.h"],
|
|
copts = PUBLIC_COPTS,
|
|
deps = [
|
|
":provisioning_status",
|
|
"//base",
|
|
"//provisioning_sdk/internal:provisioning_session_impl",
|
|
"//protos/public:drm_certificate_cc_proto",
|
|
],
|
|
)
|
|
|
|
cc_library(
|
|
name = "provisioning_status",
|
|
srcs = ["provisioning_status.cc"],
|
|
hdrs = ["provisioning_status.h"],
|
|
copts = PUBLIC_COPTS,
|
|
deps = ["//base"],
|
|
)
|