Files
android/libwvdrmengine/Android.mk
Fred Gylys-Colwell 96dc665cd5 Remove ODK from unused makefiles
Merge from Widevine repo of http://go/wvgerrit/95087

The ODK library is used in OEMCrypto, and in test code, but it is not
needed in the CDM layer. As such, it can be removed from the
Android.mk for cdm libraries.

Bug: 150809634
Test: unit tests
Change-Id: If29458e7d3d940f9a383d77e5082e7388e19c32f
2020-03-06 18:58:50 +00:00

265 lines
7.7 KiB
Makefile

# -----------------------------------------------------------------------------
# CDM top level makefile
#
LOCAL_PATH := $(call my-dir)
# -----------------------------------------------------------------------------
# Copies move script to /system/bin.
#
# The move script is only needed for existing devices that
# are running Widevine DRM and are upgrading to Pi or later
# Android releases. New devices release with Pi and future
# Android releases do not need to run this script.
#
# To run this script, vendor must add the dependency to the
# corresponding device.mk file and build from ANDROID_ROOT.
#
# For example:
# PRODUCT_PACKAGES += \
# android.hardware.drm@1.0-impl \
# android.hardware.drm@1.0-service \
# android.hardware.drm@1.0-service.widevine \
# move_widevine_data.sh
#
# In addition, vendor needs to update device SELinux policy.
#
# The mv command preserves SELinux labels(i.e. media_data_file).
# We need to run restorecon to put the correct context after the move.
# However, restorecon is not implemented for /vendor/bin, so we put
# the script in /system/bin.
#
include $(CLEAR_VARS)
LOCAL_SRC_FILES := move_widevine_data.sh
LOCAL_MODULE_CLASS := EXECUTABLES
LOCAL_MODULE := $(LOCAL_SRC_FILES)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
include $(BUILD_PREBUILT)
# -----------------------------------------------------------------------------
# Builds android.hardware.drm@1.2-service.widevine
#
include $(CLEAR_VARS)
include $(LOCAL_PATH)/common_widevine_service.mk
LOCAL_SRC_FILES := src_hidl/service.cpp
LOCAL_MODULE := android.hardware.drm@1.2-service.widevine
LOCAL_INIT_RC := src_hidl/android.hardware.drm@1.2-service.widevine.rc
LOCAL_VINTF_FRAGMENTS := manifest_android.hardware.drm@1.2-service.widevine.xml
include $(BUILD_EXECUTABLE)
# -----------------------------------------------------------------------------
# Builds android.hardware.drm@1.2-service-lazy.widevine
#
include $(CLEAR_VARS)
include $(LOCAL_PATH)/common_widevine_service.mk
LOCAL_SRC_FILES := src_hidl/serviceLazy.cpp
LOCAL_MODULE := android.hardware.drm@1.2-service-lazy.widevine
LOCAL_OVERRIDES_MODULES := android.hardware.drm@1.2-service.widevine
LOCAL_INIT_RC := src_hidl/android.hardware.drm@1.2-service-lazy.widevine.rc
LOCAL_VINTF_FRAGMENTS := manifest_android.hardware.drm@1.2-service.widevine.xml
include $(BUILD_EXECUTABLE)
# -----------------------------------------------------------------------------
# Builds android.hardware.drm@1.3-service.widevine
#
include $(CLEAR_VARS)
include $(LOCAL_PATH)/common_widevine_service.mk
LOCAL_SRC_FILES := src_hidl/service.cpp
LOCAL_MODULE := android.hardware.drm@1.3-service.widevine
LOCAL_INIT_RC := src_hidl/android.hardware.drm@1.3-service.widevine.rc
LOCAL_VINTF_FRAGMENTS := manifest_android.hardware.drm@1.3-service.widevine.xml
include $(BUILD_EXECUTABLE)
# -----------------------------------------------------------------------------
# Builds android.hardware.drm@1.3-service-lazy.widevine
#
include $(CLEAR_VARS)
include $(LOCAL_PATH)/common_widevine_service.mk
LOCAL_SRC_FILES := src_hidl/serviceLazy.cpp
LOCAL_MODULE := android.hardware.drm@1.3-service-lazy.widevine
LOCAL_OVERRIDES_MODULES := android.hardware.drm@1.3-service.widevine
LOCAL_INIT_RC := src_hidl/android.hardware.drm@1.3-service-lazy.widevine.rc
LOCAL_VINTF_FRAGMENTS := manifest_android.hardware.drm@1.3-service.widevine.xml
include $(BUILD_EXECUTABLE)
# -----------------------------------------------------------------------------
# Builds libcdm_utils.a
#
include $(CLEAR_VARS)
LOCAL_MODULE := libcdm_utils
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
LOCAL_PROPRIETARY_MODULE := true
LOCAL_C_INCLUDES := \
vendor/widevine/libwvdrmengine/cdm/core/include \
vendor/widevine/libwvdrmengine/cdm/include \
vendor/widevine/libwvdrmengine/cdm/util/include \
vendor/widevine/libwvdrmengine/oemcrypto/include \
LOCAL_HEADER_LIBRARIES := \
libbase_headers \
libutils_headers \
LOCAL_SHARED_LIBRARIES := \
liblog \
libcrypto
LOCAL_CFLAGS := -DCORE_UTIL_IMPLEMENTATION
SRC_DIR := cdm/src
UTIL_SRC_DIR := cdm/util/src
CORE_SRC_DIR := cdm/core/src
LOCAL_SRC_FILES := \
$(CORE_SRC_DIR)/properties.cpp \
$(UTIL_SRC_DIR)/cdm_random.cpp \
$(UTIL_SRC_DIR)/clock.cpp \
$(UTIL_SRC_DIR)/file_store.cpp \
$(UTIL_SRC_DIR)/file_utils.cpp \
$(UTIL_SRC_DIR)/log.cpp \
$(UTIL_SRC_DIR)/platform.cpp \
$(UTIL_SRC_DIR)/rw_lock.cpp \
$(UTIL_SRC_DIR)/string_conversions.cpp \
$(SRC_DIR)/properties_android.cpp \
$(SRC_DIR)/timer.cpp \
include $(BUILD_STATIC_LIBRARY)
# -----------------------------------------------------------------------------
# Builds libwvdrmengine.so
#
include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
src/WVCDMSingleton.cpp \
src/WVCreatePluginFactories.cpp \
src/WVCryptoFactory.cpp \
src/WVDrmFactory.cpp \
src/WVUUID.cpp \
LOCAL_C_INCLUDES := \
frameworks/av/include \
frameworks/native/include \
vendor/widevine/libwvdrmengine/cdm/core/include \
vendor/widevine/libwvdrmengine/cdm/metrics/include \
vendor/widevine/libwvdrmengine/cdm/util/include \
vendor/widevine/libwvdrmengine/cdm/include \
vendor/widevine/libwvdrmengine/include \
vendor/widevine/libwvdrmengine/mediacrypto/include \
vendor/widevine/libwvdrmengine/mediadrm/include \
vendor/widevine/libwvdrmengine/oemcrypto/include \
LOCAL_STATIC_LIBRARIES := \
libcdm \
libcdm_protos \
libcdm_utils \
libjsmn \
libwvdrmcryptoplugin \
libwvdrmdrmplugin \
libwvlevel3 \
LOCAL_SHARED_LIBRARIES := \
libbase \
libcrypto \
libdl \
liblog \
libprotobuf-cpp-lite \
libstagefright_foundation \
libutils \
LOCAL_HEADER_LIBRARIES := \
libutils_headers \
libstagefright_headers
LOCAL_MODULE := libwvdrmengine
LOCAL_MODULE_RELATIVE_PATH := mediadrm
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_PROPRIETARY_MODULE := true
include $(BUILD_SHARED_LIBRARY)
# -----------------------------------------------------------------------------
# Builds libwvhidl.so
#
include $(CLEAR_VARS)
LOCAL_SRC_FILES := \
src/WVCDMSingleton.cpp \
src/WVUUID.cpp \
src_hidl/WVCreatePluginFactories.cpp \
src_hidl/WVCryptoFactory.cpp \
src_hidl/WVDrmFactory.cpp \
LOCAL_C_INCLUDES := \
frameworks/av/include \
frameworks/native/include \
vendor/widevine/libwvdrmengine/cdm/core/include \
vendor/widevine/libwvdrmengine/cdm/metrics/include \
vendor/widevine/libwvdrmengine/cdm/util/include \
vendor/widevine/libwvdrmengine/cdm/include \
vendor/widevine/libwvdrmengine/include_hidl \
vendor/widevine/libwvdrmengine/include \
vendor/widevine/libwvdrmengine/mediacrypto/include_hidl \
vendor/widevine/libwvdrmengine/mediacrypto/include \
vendor/widevine/libwvdrmengine/mediadrm/include_hidl \
vendor/widevine/libwvdrmengine/mediadrm/include \
vendor/widevine/libwvdrmengine/oemcrypto/include \
LOCAL_STATIC_LIBRARIES := \
libcdm \
libcdm_protos \
libcdm_utils \
libjsmn \
libwvdrmcryptoplugin_hidl \
libwvdrmdrmplugin_hidl \
libwvlevel3 \
LOCAL_SHARED_LIBRARIES := \
android.hardware.drm@1.0 \
android.hardware.drm@1.1 \
android.hardware.drm@1.2 \
android.hardware.drm@1.3 \
android.hidl.memory@1.0 \
libbase \
libcrypto \
libdl \
libhidlbase \
libhidlmemory \
liblog \
libprotobuf-cpp-lite \
libutils \
LOCAL_HEADER_LIBRARIES := \
libstagefright_foundation_headers \
LOCAL_MODULE := libwvhidl
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_PROPRIETARY_MODULE := true
include $(BUILD_SHARED_LIBRARY)
include vendor/widevine/libwvdrmengine/level3/Android.mk
include vendor/widevine/libwvdrmengine/mediacrypto/Android.mk
include vendor/widevine/libwvdrmengine/mediadrm/Android.mk
include vendor/widevine/libwvdrmengine/vts/vendor_module/Android.mk