Android.mk revision 136b5e46eca868a99d0c581659785756c25ec6f3
1d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker#
2d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# Copyright (C) 2016 The Android Open Source Project
3d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker#
4d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# Licensed under the Apache License, Version 2.0 (the "License");
5d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# you may not use this file except in compliance with the License.
6d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# You may obtain a copy of the License at
7d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker#
8d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker#      http://www.apache.org/licenses/LICENSE-2.0
9d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker#
10d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# Unless required by applicable law or agreed to in writing, software
11d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# distributed under the License is distributed on an "AS IS" BASIS,
12d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# See the License for the specific language governing permissions and
14d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker# limitations under the License.
15d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
16d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
17da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker############# Build legacy drm service ############
18da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
19d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_PATH := $(call my-dir)
20d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
21d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinkerinclude $(CLEAR_VARS)
22d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_MODULE := android.hardware.drm@1.0-service
23d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_INIT_RC := android.hardware.drm@1.0-service.rc
24a0da1a1c3dadac195e598890360c7b9226874ba8Steven MorelandLOCAL_PROPRIETARY_MODULE := true
25d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_MODULE_RELATIVE_PATH := hw
26d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_SRC_FILES := \
27d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker  service.cpp \
28d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
29d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_SHARED_LIBRARIES := \
30da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker  android.hardware.drm@1.0 \
31da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker  android.hidl.memory@1.0 \
32d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker  libhidlbase \
33d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker  libhidltransport \
34da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker  libhardware \
35da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker  liblog \
36d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker  libutils \
37136b5e46eca868a99d0c581659785756c25ec6f3Iliyan Malchev  libbinder \
38d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
39d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_C_INCLUDES := \
40d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker  hardware/interfaces/drm
41d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
42fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# TODO(b/18948909) Some legacy DRM plugins only support 32-bit. They need to be
43fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# migrated to 64-bit. Once all of a device's legacy DRM plugins support 64-bit,
44fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# that device can turn on ENABLE_MEDIADRM_64 to build this service as 64-bit.
45fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruceifneq ($(ENABLE_MEDIADRM_64), true)
46d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_32_BIT_ONLY := true
47fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruceendif
48d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker
49d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinkerinclude $(BUILD_EXECUTABLE)
50da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
51da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker############# Build legacy drm impl library ############
52da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
53da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinkerinclude $(CLEAR_VARS)
54da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_MODULE := android.hardware.drm@1.0-impl
55a0da1a1c3dadac195e598890360c7b9226874ba8Steven MorelandLOCAL_PROPRIETARY_MODULE := true
56da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_MODULE_RELATIVE_PATH := hw
57da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_SRC_FILES := \
58da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    DrmFactory.cpp \
59da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    DrmPlugin.cpp \
60da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    CryptoFactory.cpp \
61da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    CryptoPlugin.cpp \
62fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce    LegacyPluginPath.cpp \
63da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    TypeConvert.cpp \
64da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
65da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_SHARED_LIBRARIES := \
66da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    android.hardware.drm@1.0 \
67da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    android.hidl.memory@1.0 \
68fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce    libcutils \
69da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    libhidlbase \
70da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    libhidlmemory \
71da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    libhidltransport \
72da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    liblog \
73da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    libmediadrm \
74da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    libstagefright_foundation \
75da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    libutils \
76da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
77da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_C_INCLUDES := \
78da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    frameworks/native/include \
79da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker    frameworks/av/include
80da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
81fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# TODO: Some legacy DRM plugins only support 32-bit. They need to be migrated to
82fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# 64-bit. (b/18948909) Once all of a device's legacy DRM plugins support 64-bit,
83fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# that device can turn on ENABLE_MEDIADRM_64 to build this impl as 64-bit.
84fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruceifneq ($(ENABLE_MEDIADRM_64), true)
85da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_32_BIT_ONLY := true
86fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruceendif
87da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker
88da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinkerinclude $(BUILD_SHARED_LIBRARY)
89