Remove Widevine CDM Dependency on STLPort
* Replace an stlport static assert with a C++11 static_assert. * Move some libraries that were being built with the NDK but statically included into platform code off the NDK. * Rebuild the obfuscated binaries to use the new STL. * Remove MIPS support temporarily due to an inability to generate obfuscated binaries for it. (To be fixed in b/19482469.) Bug: 15193147 Change-Id: Icc166583b0c6af68550baf17ab8c33076a1179d3
This commit is contained in:
committed by
John "Juce" Bruce
parent
bcaec72285
commit
723d67c88f
@@ -29,7 +29,6 @@ LOCAL_SRC_FILES := third_party/stringencoders/src/modp_b64w.cpp \
|
||||
$(SRC_DIR)/properties_android.cpp \
|
||||
$(SRC_DIR)/timer.cpp \
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
@@ -55,7 +54,6 @@ LOCAL_EXPORT_C_INCLUDE_DIRS := \
|
||||
$(generated_sources_dir)/proto \
|
||||
$(generated_sources_dir)/proto/$(LOCAL_PATH)/cdm/core/src
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
# proto_generated_headers is a build system internal variable defined in
|
||||
@@ -89,7 +87,6 @@ LOCAL_STATIC_LIBRARIES := \
|
||||
libcdm \
|
||||
libcdm_utils \
|
||||
libwvlevel3 \
|
||||
libprotobuf-cpp-lite \
|
||||
libwvdrmcryptoplugin \
|
||||
libwvdrmdrmplugin \
|
||||
|
||||
@@ -98,13 +95,12 @@ LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
libdl \
|
||||
liblog \
|
||||
libprotobuf-cpp-lite \
|
||||
libutils \
|
||||
libstagefright_foundation \
|
||||
|
||||
LOCAL_WHOLE_STATIC_LIBRARIES := libcdm_protos
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
|
||||
LOCAL_ADDITIONAL_DEPENDENCIES := $(cdm_proto_gen_headers)
|
||||
|
||||
LOCAL_MODULE := libwvdrmengine
|
||||
@@ -117,7 +113,7 @@ LOCAL_MODULE_OWNER := widevine
|
||||
|
||||
LOCAL_PROPRIETARY_MODULE := true
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
|
||||
@@ -36,7 +36,6 @@ LOCAL_SRC_FILES := \
|
||||
|
||||
LOCAL_MODULE := libcdm
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
@@ -35,29 +35,22 @@ LOCAL_STATIC_LIBRARIES := \
|
||||
libcdm \
|
||||
libcdm_protos \
|
||||
libgmock \
|
||||
libgtest_ndk \
|
||||
libgtest_main_ndk \
|
||||
libgtest \
|
||||
libgtest_main \
|
||||
libwvlevel3 \
|
||||
libcdm_utils \
|
||||
libprotobuf-cpp-lite
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
libcrypto \
|
||||
libcutils \
|
||||
libdl \
|
||||
liblog \
|
||||
libprotobuf-cpp-lite \
|
||||
libssl \
|
||||
libutils
|
||||
libutils \
|
||||
|
||||
LOCAL_CFLAGS += -DUNIT_TEST
|
||||
|
||||
# Needed to use gMock 1.7.0 on Android
|
||||
LOCAL_CFLAGS += \
|
||||
-DGTEST_HAS_TR1_TUPLE \
|
||||
-DGTEST_USE_OWN_TR1_TUPLE \
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
||||
@@ -26,8 +26,8 @@ enum {
|
||||
kErrorTestMode = ERROR_DRM_VENDOR_MAX,
|
||||
};
|
||||
|
||||
_STLP_STATIC_ASSERT(static_cast<uint32_t>(kErrorWVDrmMaxErrorUsed) <=
|
||||
static_cast<uint32_t>(ERROR_DRM_VENDOR_MAX));
|
||||
static_assert(static_cast<uint32_t>(kErrorWVDrmMaxErrorUsed) <=
|
||||
static_cast<uint32_t>(ERROR_DRM_VENDOR_MAX), "");
|
||||
|
||||
} // namespace wvdrm
|
||||
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -18,8 +18,6 @@ LOCAL_MODULE := libwvdrmcryptoplugin
|
||||
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
@@ -20,9 +20,8 @@ LOCAL_STATIC_LIBRARIES := \
|
||||
libcdm_utils \
|
||||
libgmock \
|
||||
libgmock_main \
|
||||
libgtest_ndk \
|
||||
libgtest \
|
||||
libwvlevel3 \
|
||||
libprotobuf-cpp-lite \
|
||||
libwvdrmcryptoplugin \
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
@@ -30,14 +29,10 @@ LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
libdl \
|
||||
liblog \
|
||||
libprotobuf-cpp-lite \
|
||||
libstagefright_foundation \
|
||||
libutils \
|
||||
|
||||
# Needed to use gMock 1.7.0 on Android
|
||||
LOCAL_CFLAGS += \
|
||||
-DGTEST_HAS_TR1_TUPLE \
|
||||
-DGTEST_USE_OWN_TR1_TUPLE \
|
||||
|
||||
# CDM's protobuffers are not part of the library
|
||||
PROTO_SRC_DIR := $(proto_generated_cc_sources_dir)/$(LOCAL_PATH)/core/src
|
||||
|
||||
@@ -56,8 +51,6 @@ LOCAL_MODULE := libwvdrmmediacrypto_test
|
||||
|
||||
LOCAL_MODULE_TAGS := tests
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
||||
@@ -18,8 +18,6 @@ LOCAL_MODULE := libwvdrmdrmplugin
|
||||
|
||||
LOCAL_MODULE_TAGS := optional
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
@@ -21,9 +21,8 @@ LOCAL_STATIC_LIBRARIES := \
|
||||
libcdm_utils \
|
||||
libgmock \
|
||||
libgmock_main \
|
||||
libgtest_ndk \
|
||||
libgtest \
|
||||
libwvlevel3 \
|
||||
libprotobuf-cpp-lite \
|
||||
libwvdrmdrmplugin \
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
@@ -31,13 +30,9 @@ LOCAL_SHARED_LIBRARIES := \
|
||||
libcutils \
|
||||
libdl \
|
||||
liblog \
|
||||
libprotobuf-cpp-lite \
|
||||
libutils \
|
||||
|
||||
# Needed to use gMock 1.7.0 on Android
|
||||
LOCAL_CFLAGS += \
|
||||
-DGTEST_HAS_TR1_TUPLE \
|
||||
-DGTEST_USE_OWN_TR1_TUPLE \
|
||||
|
||||
# CDM's protobuffers are not part of the library
|
||||
PROTO_SRC_DIR := $(proto_generated_cc_sources_dir)/$(LOCAL_PATH)/core/src
|
||||
|
||||
@@ -56,8 +51,6 @@ LOCAL_MODULE := libwvdrmdrmplugin_test
|
||||
|
||||
LOCAL_MODULE_TAGS := tests
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
||||
@@ -34,8 +34,7 @@ LOCAL_STATIC_LIBRARIES := \
|
||||
|
||||
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_SHARED_LIBRARIES)
|
||||
LOCAL_MODULE := liboemcrypto
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_SHARED_LIBRARY)
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ include $(CLEAR_VARS)
|
||||
LOCAL_MODULE:=oemcrypto_test
|
||||
LOCAL_MODULE_TAGS := tests
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(LOCAL_PATH)/common.mk
|
||||
|
||||
|
||||
@@ -14,8 +14,8 @@ LOCAL_C_INCLUDES += \
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libcdm \
|
||||
libcdm_utils \
|
||||
libgtest_ndk \
|
||||
libgtest_main_ndk \
|
||||
libgtest \
|
||||
libgtest_main \
|
||||
libwvlevel3 \
|
||||
libcdm_utils \
|
||||
|
||||
@@ -26,5 +26,3 @@ LOCAL_SHARED_LIBRARIES := \
|
||||
liblog \
|
||||
libutils \
|
||||
libz \
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
|
||||
@@ -22,52 +22,26 @@ libgmock_host_includes := \
|
||||
$(TOP)/external/gtest/include \
|
||||
|
||||
libgmock_cflags := \
|
||||
-DGTEST_HAS_TR1_TUPLE \
|
||||
-DGTEST_USE_OWN_TR1_TUPLE \
|
||||
-Wno-missing-field-initializers \
|
||||
|
||||
#######################################################################
|
||||
# gmock lib target
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SDK_VERSION := 9
|
||||
|
||||
LOCAL_NDK_STL_VARIANT := stlport_static
|
||||
|
||||
LOCAL_CPP_EXTENSION := .cc
|
||||
|
||||
LOCAL_SRC_FILES := gmock-all.cc
|
||||
|
||||
LOCAL_C_INCLUDES := $(libgmock_target_includes)
|
||||
|
||||
LOCAL_CFLAGS += $(libgmock_cflags)
|
||||
|
||||
LOCAL_MODULE := libgmock
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
#######################################################################
|
||||
# gmock_main lib target
|
||||
|
||||
include $(CLEAR_VARS)
|
||||
|
||||
LOCAL_SDK_VERSION := 9
|
||||
|
||||
LOCAL_NDK_STL_VARIANT := stlport_static
|
||||
|
||||
LOCAL_CPP_EXTENSION := .cc
|
||||
|
||||
LOCAL_SRC_FILES := gmock_main.cc
|
||||
|
||||
LOCAL_C_INCLUDES := $(libgmock_target_includes)
|
||||
|
||||
LOCAL_CFLAGS += $(libgmock_cflags)
|
||||
|
||||
LOCAL_MODULE := libgmock_main
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
include $(BUILD_STATIC_LIBRARY)
|
||||
|
||||
@@ -15,14 +15,13 @@ LOCAL_C_INCLUDES := \
|
||||
vendor/widevine/libwvdrmengine/oemcrypto/include \
|
||||
|
||||
LOCAL_STATIC_LIBRARIES := \
|
||||
libgtest_ndk \
|
||||
libgtest_main_ndk \
|
||||
libgtest \
|
||||
libgtest_main \
|
||||
|
||||
LOCAL_SHARED_LIBRARIES := \
|
||||
libcrypto \
|
||||
libdl \
|
||||
liblog \
|
||||
libstlport \
|
||||
libutils \
|
||||
libwvdrmengine \
|
||||
|
||||
@@ -30,8 +29,6 @@ LOCAL_MODULE := libwvdrmengine_test
|
||||
|
||||
LOCAL_MODULE_TAGS := tests
|
||||
|
||||
LOCAL_MODULE_TARGET_ARCH := arm mips x86
|
||||
|
||||
LOCAL_CXX_STL := stlport
|
||||
LOCAL_MODULE_TARGET_ARCH := arm x86
|
||||
|
||||
include $(BUILD_EXECUTABLE)
|
||||
|
||||
Reference in New Issue
Block a user