Install proprietary userspace modules under /vendor.
BUG: 5284436 Change-Id: I9921b8446626b7041a3fc66bff918d3adac5bbe1
This commit is contained in:
51
CleanSpec.mk
Normal file
51
CleanSpec.mk
Normal file
@@ -0,0 +1,51 @@
|
|||||||
|
# Copyright (C) 2011 The Android Open Source Project
|
||||||
|
#
|
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
# you may not use this file except in compliance with the License.
|
||||||
|
# You may obtain a copy of the License at
|
||||||
|
#
|
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
#
|
||||||
|
# Unless required by applicable law or agreed to in writing, software
|
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
# See the License for the specific language governing permissions and
|
||||||
|
# limitations under the License.
|
||||||
|
#
|
||||||
|
|
||||||
|
# If you don't need to do a full clean build but would like to touch
|
||||||
|
# a file or delete some intermediate files, add a clean step to the end
|
||||||
|
# of the list. These steps will only be run once, if they haven't been
|
||||||
|
# run before.
|
||||||
|
#
|
||||||
|
# E.g.:
|
||||||
|
# $(call add-clean-step, touch -c external/sqlite/sqlite3.h)
|
||||||
|
# $(call add-clean-step, rm -rf $(PRODUCT_OUT)/obj/STATIC_LIBRARIES/libz_intermediates)
|
||||||
|
#
|
||||||
|
# Always use "touch -c" and "rm -f" or "rm -rf" to gracefully deal with
|
||||||
|
# files that are missing or have been moved.
|
||||||
|
#
|
||||||
|
# Use $(PRODUCT_OUT) to get to the "out/target/product/blah/" directory.
|
||||||
|
# Use $(OUT_DIR) to refer to the "out" directory.
|
||||||
|
#
|
||||||
|
# If you need to re-do something that's already mentioned, just copy
|
||||||
|
# the command and add it to the bottom of the list. E.g., if a change
|
||||||
|
# that you made last week required touching a file and a change you
|
||||||
|
# made today requires touching the same file, just copy the old
|
||||||
|
# touch step and add it to the end of the list.
|
||||||
|
#
|
||||||
|
# ************************************************
|
||||||
|
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
|
||||||
|
# ************************************************
|
||||||
|
|
||||||
|
# For example:
|
||||||
|
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/APPS/AndroidTests_intermediates)
|
||||||
|
#$(call add-clean-step, rm -rf $(OUT_DIR)/target/common/obj/JAVA_LIBRARIES/core_intermediates)
|
||||||
|
#$(call add-clean-step, find $(OUT_DIR) -type f -name "IGTalkSession*" -print0 | xargs -0 rm -f)
|
||||||
|
#$(call add-clean-step, rm -rf $(PRODUCT_OUT)/data/*)
|
||||||
|
|
||||||
|
$(call add-clean-step, rm -rf $(PRODUCT_OUT)/system/lib/drm $(PRODUCT_OUT)/system/lib/libwv* $(PRODUCT_OUT)/system/lib/libWV*)
|
||||||
|
|
||||||
|
# ************************************************
|
||||||
|
# NEWER CLEAN STEPS MUST BE AT THE END OF THE LIST
|
||||||
|
# ************************************************
|
||||||
@@ -15,5 +15,5 @@
|
|||||||
-->
|
-->
|
||||||
<permissions>
|
<permissions>
|
||||||
<library name="com.google.widevine.software.drm"
|
<library name="com.google.widevine.software.drm"
|
||||||
file="/system/lib/drm/libdrmwvmplugin.so"/>
|
file="/vendor/lib/drm/libdrmwvmplugin.so"/>
|
||||||
</permissions>
|
</permissions>
|
||||||
|
|||||||
@@ -2,14 +2,34 @@ ifeq ($(TARGET_ARCH),arm)
|
|||||||
|
|
||||||
LOCAL_PATH:= $(call my-dir)
|
LOCAL_PATH:= $(call my-dir)
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# libwvdrm_L?.so
|
||||||
|
|
||||||
|
include $(CLEAR_VARS)
|
||||||
include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk
|
include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk
|
||||||
|
|
||||||
LOCAL_PREBUILT_LIBS := \
|
LOCAL_MODULE := libwvdrm_L$(LOCAL_OEMCRYPTO_LEVEL)
|
||||||
libwvdrm_L$(LOCAL_OEMCRYPTO_LEVEL).so \
|
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
|
||||||
libwvocs_L$(LOCAL_OEMCRYPTO_LEVEL).a
|
LOCAL_MODULE_SUFFIX := .so
|
||||||
|
LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
|
||||||
|
LOCAL_PROPRIETARY_MODULE := true
|
||||||
LOCAL_STRIP_MODULE := true
|
LOCAL_STRIP_MODULE := true
|
||||||
|
|
||||||
LOCAL_MODULE_TAGS := optional
|
LOCAL_MODULE_TAGS := optional
|
||||||
include $(BUILD_MULTI_PREBUILT)
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
|
#########################################################################
|
||||||
|
# libwvocs_L?.a
|
||||||
|
|
||||||
|
include $(CLEAR_VARS)
|
||||||
|
include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk
|
||||||
|
|
||||||
|
LOCAL_MODULE := libwvocs_L$(LOCAL_OEMCRYPTO_LEVEL)
|
||||||
|
LOCAL_MODULE_CLASS := STATIC_LIBRARIES
|
||||||
|
LOCAL_MODULE_SUFFIX := .a
|
||||||
|
LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
|
||||||
|
|
||||||
|
LOCAL_MODULE_TAGS := optional
|
||||||
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -56,7 +56,7 @@ private:
|
|||||||
void WVMDrmPluginTest::Run()
|
void WVMDrmPluginTest::Run()
|
||||||
{
|
{
|
||||||
cout << "WVDrmPluginTest::Run" << endl;
|
cout << "WVDrmPluginTest::Run" << endl;
|
||||||
const char *path = "/system/lib/drm/libdrmwvmplugin.so";
|
const char *path = "/vendor/lib/drm/libdrmwvmplugin.so";
|
||||||
void *handle = dlopen(path, RTLD_NOW);
|
void *handle = dlopen(path, RTLD_NOW);
|
||||||
if (handle == NULL) {
|
if (handle == NULL) {
|
||||||
fprintf(stderr, "Can't open plugin: %s %s\n", path, dlerror());
|
fprintf(stderr, "Can't open plugin: %s %s\n", path, dlerror());
|
||||||
|
|||||||
@@ -5,11 +5,14 @@ LOCAL_PATH:= $(call my-dir)
|
|||||||
include $(CLEAR_VARS)
|
include $(CLEAR_VARS)
|
||||||
include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk
|
include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk
|
||||||
|
|
||||||
LOCAL_PREBUILT_LIBS := \
|
LOCAL_MODULE := libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL)
|
||||||
libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL).so
|
LOCAL_MODULE_CLASS := SHARED_LIBRARIES
|
||||||
|
LOCAL_MODULE_SUFFIX := .so
|
||||||
|
LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
|
||||||
|
LOCAL_PROPRIETARY_MODULE := true
|
||||||
LOCAL_STRIP_MODULE := true
|
LOCAL_STRIP_MODULE := true
|
||||||
|
|
||||||
LOCAL_MODULE_TAGS := optional
|
LOCAL_MODULE_TAGS := optional
|
||||||
include $(BUILD_MULTI_PREBUILT)
|
include $(BUILD_PREBUILT)
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|||||||
@@ -191,7 +191,7 @@ static void PrintMessage(const char *msg)
|
|||||||
|
|
||||||
static void OpenDrmPlugin()
|
static void OpenDrmPlugin()
|
||||||
{
|
{
|
||||||
const char *path = "/system/lib/drm/libdrmwvmplugin.so";
|
const char *path = "/vendor/lib/drm/libdrmwvmplugin.so";
|
||||||
sSharedLibHandle = dlopen(path, RTLD_NOW);
|
sSharedLibHandle = dlopen(path, RTLD_NOW);
|
||||||
if (sSharedLibHandle == NULL) {
|
if (sSharedLibHandle == NULL) {
|
||||||
fprintf(stderr, "Can't open plugin: %s\n", path);
|
fprintf(stderr, "Can't open plugin: %s\n", path);
|
||||||
|
|||||||
@@ -50,7 +50,7 @@ void TestLibWVM::Load()
|
|||||||
{
|
{
|
||||||
cout << "TestLibWVM::Load" << endl;
|
cout << "TestLibWVM::Load" << endl;
|
||||||
|
|
||||||
const char *path = "/system/lib/libwvm.so";
|
const char *path = "/vendor/lib/libwvm.so";
|
||||||
void *handle = dlopen(path, RTLD_NOW);
|
void *handle = dlopen(path, RTLD_NOW);
|
||||||
if (handle == NULL) {
|
if (handle == NULL) {
|
||||||
fprintf(stderr, "Can't open plugin: %s: %s\n", path, dlerror());
|
fprintf(stderr, "Can't open plugin: %s: %s\n", path, dlerror());
|
||||||
|
|||||||
Reference in New Issue
Block a user