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 3907770c78e18c5b09ba116fa1e779fe4408c42e3fJiyong ParkLOCAL_STATIC_LIBRARIES := \ 4007770c78e18c5b09ba116fa1e779fe4408c42e3fJiyong Park android.hardware.drm@1.0-helper \ 4107770c78e18c5b09ba116fa1e779fe4408c42e3fJiyong Park 42d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_C_INCLUDES := \ 43d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker hardware/interfaces/drm 44d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker 45323d172db73f2512fbc230e739e49d55f25bdb71Jiyong ParkLOCAL_HEADER_LIBRARIES := \ 46323d172db73f2512fbc230e739e49d55f25bdb71Jiyong Park media_plugin_headers 47323d172db73f2512fbc230e739e49d55f25bdb71Jiyong Park 48fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# TODO(b/18948909) Some legacy DRM plugins only support 32-bit. They need to be 49fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# migrated to 64-bit. Once all of a device's legacy DRM plugins support 64-bit, 50467c0db62c648da651a41c000381055b1703c5dcJohn W. Bruce# that device can turn on TARGET_ENABLE_MEDIADRM_64 to build this service as 51467c0db62c648da651a41c000381055b1703c5dcJohn W. Bruce# 64-bit. 52467c0db62c648da651a41c000381055b1703c5dcJohn W. Bruceifneq ($(TARGET_ENABLE_MEDIADRM_64), true) 53d59d36252e688b1b04661061d243ca2cde03de14Jeff TinkerLOCAL_32_BIT_ONLY := true 54fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruceendif 55d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinker 56d59d36252e688b1b04661061d243ca2cde03de14Jeff Tinkerinclude $(BUILD_EXECUTABLE) 57da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker 58da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker############# Build legacy drm impl library ############ 59da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker 60da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinkerinclude $(CLEAR_VARS) 61da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_MODULE := android.hardware.drm@1.0-impl 62a0da1a1c3dadac195e598890360c7b9226874ba8Steven MorelandLOCAL_PROPRIETARY_MODULE := true 63da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_MODULE_RELATIVE_PATH := hw 64da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_SRC_FILES := \ 65da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker DrmFactory.cpp \ 66da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker DrmPlugin.cpp \ 67da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker CryptoFactory.cpp \ 68da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker CryptoPlugin.cpp \ 69fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce LegacyPluginPath.cpp \ 70da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker TypeConvert.cpp \ 71da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker 72da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_SHARED_LIBRARIES := \ 73da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker android.hardware.drm@1.0 \ 74da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker android.hidl.memory@1.0 \ 75fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce libcutils \ 76da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker libhidlbase \ 77da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker libhidlmemory \ 78da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker libhidltransport \ 79da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker liblog \ 80c019787ce9fb9f251c96cdb5a5d3a9ef21842d9bSteven Moreland libstagefright_foundation \ 81da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker libutils \ 82da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker 8307770c78e18c5b09ba116fa1e779fe4408c42e3fJiyong ParkLOCAL_STATIC_LIBRARIES := \ 8407770c78e18c5b09ba116fa1e779fe4408c42e3fJiyong Park android.hardware.drm@1.0-helper \ 8507770c78e18c5b09ba116fa1e779fe4408c42e3fJiyong Park 86da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_C_INCLUDES := \ 87da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker frameworks/native/include \ 88da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker frameworks/av/include 89da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker 90fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# TODO: Some legacy DRM plugins only support 32-bit. They need to be migrated to 91fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruce# 64-bit. (b/18948909) Once all of a device's legacy DRM plugins support 64-bit, 92467c0db62c648da651a41c000381055b1703c5dcJohn W. Bruce# that device can turn on TARGET_ENABLE_MEDIADRM_64 to build this impl as 93467c0db62c648da651a41c000381055b1703c5dcJohn W. Bruce# 64-bit. 94467c0db62c648da651a41c000381055b1703c5dcJohn W. Bruceifneq ($(TARGET_ENABLE_MEDIADRM_64), true) 95da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff TinkerLOCAL_32_BIT_ONLY := true 96fcde9ff3a08a2c569f0ec90fa3487ecb9d34444dJohn W. Bruceendif 97da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinker 98da002fe6415cee1e37cc3131aafb79ddb53f01e5Jeff Tinkerinclude $(BUILD_SHARED_LIBRARY) 99