From e36b59b8d3c22774047fd6edf45a3d47fad15ac4 Mon Sep 17 00:00:00 2001 From: Ying Wang Date: Tue, 5 Jun 2012 14:29:27 -0700 Subject: [PATCH] Use board config variable BOARD_WIDEVINE_OEMCRYPTO_LEVEL Instead of grepping out the oemcrypto level from PRODUCT_PACKAGES, which is very fragile. Change-Id: I1ac5b8ace25dd4798d3383304f01496f12193526 --- proprietary/Android.mk | 3 +++ proprietary/cryptoPlugin/Android.mk | 4 ++-- proprietary/cryptoPlugin/decrypt-core.mk | 9 ++++++--- proprietary/drmwvmplugin/Android.mk | 2 +- proprietary/drmwvmplugin/common.mk | 18 +++++++++--------- proprietary/drmwvmplugin/lib/arm/Android.mk | 8 ++------ proprietary/drmwvmplugin/lib/x86/Android.mk | 6 ++---- proprietary/drmwvmplugin/oemcryptolevel.mk | 7 ------- proprietary/drmwvmplugin/plugin-core.mk | 13 ++++++++----- proprietary/drmwvmplugin/test/Android.mk | 2 +- proprietary/streamcontrol/lib/arm/Android.mk | 3 +-- proprietary/streamcontrol/lib/x86/Android.mk | 3 +-- proprietary/streamcontrol/test/Android.mk | 9 ++++----- proprietary/wvm/Android.mk | 5 ++--- proprietary/wvm/common.mk | 2 +- proprietary/wvm/test/Android.mk | 2 +- proprietary/wvm/wvm-core.mk | 9 ++++++--- 17 files changed, 50 insertions(+), 55 deletions(-) delete mode 100644 proprietary/drmwvmplugin/oemcryptolevel.mk diff --git a/proprietary/Android.mk b/proprietary/Android.mk index 87c7d458..5648b551 100644 --- a/proprietary/Android.mk +++ b/proprietary/Android.mk @@ -1,6 +1,9 @@ # widevine prebuilts only available for ARM +# To build this dir you must define BOARD_WIDEVINE_OEMCRYPTO_LEVEL in the board config. +ifdef BOARD_WIDEVINE_OEMCRYPTO_LEVEL ifeq ($(TARGET_ARCH),arm) include $(call all-subdir-makefiles) endif # TARGET_ARCH == arm, x86 +endif # BOARD_WIDEVINE_OEMCRYPTO_LEVEL diff --git a/proprietary/cryptoPlugin/Android.mk b/proprietary/cryptoPlugin/Android.mk index 7367d19c..dfe8658d 100644 --- a/proprietary/cryptoPlugin/Android.mk +++ b/proprietary/cryptoPlugin/Android.mk @@ -2,10 +2,10 @@ LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_SRC_FILES:= \ - WVCryptoPlugin.cpp + WVCryptoPlugin.cpp LOCAL_C_INCLUDES := \ - $(TOP)/vendor/widevine/proprietary/wvm/include \ + vendor/widevine/proprietary/wvm/include \ LOCAL_MODULE:= libwvdecryptcommon LOCAL_MODULE_TAGS := optional diff --git a/proprietary/cryptoPlugin/decrypt-core.mk b/proprietary/cryptoPlugin/decrypt-core.mk index 23dc2797..c3b92dc8 100644 --- a/proprietary/cryptoPlugin/decrypt-core.mk +++ b/proprietary/cryptoPlugin/decrypt-core.mk @@ -3,10 +3,14 @@ # Widevine wvm static library. Sets up includes and defines the core libraries # required. # -include $(TOP)/vendor/widevine/proprietary/wvm/common.mk +include vendor/widevine/proprietary/wvm/common.mk + +ifndef BOARD_WIDEVINE_OEMCRYPTO_LEVEL +$(error BOARD_WIDEVINE_OEMCRYPTO_LEVEL not defined!) +endif LOCAL_WHOLE_STATIC_LIBRARIES := \ - libwvdecryptcommon + libwvdecryptcommon LOCAL_SHARED_LIBRARIES := \ libstagefright_foundation \ @@ -14,4 +18,3 @@ LOCAL_SHARED_LIBRARIES := \ LOCAL_STATIC_LIBRARIES := \ liboemcrypto \ - diff --git a/proprietary/drmwvmplugin/Android.mk b/proprietary/drmwvmplugin/Android.mk index 7a31720c..fd961533 100644 --- a/proprietary/drmwvmplugin/Android.mk +++ b/proprietary/drmwvmplugin/Android.mk @@ -34,7 +34,7 @@ include $(BUILD_JAVA_LIBRARY) ifneq ($(filter arm x86,$(TARGET_ARCH)),) include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/common.mk +include vendor/widevine/proprietary/drmwvmplugin/common.mk LOCAL_SRC_FILES:= \ src/WVMDrmPlugin.cpp \ diff --git a/proprietary/drmwvmplugin/common.mk b/proprietary/drmwvmplugin/common.mk index ca35d211..c4b2c6fa 100644 --- a/proprietary/drmwvmplugin/common.mk +++ b/proprietary/drmwvmplugin/common.mk @@ -1,13 +1,13 @@ LOCAL_C_INCLUDES:= \ - $(TOP)/bionic \ - $(TOP)/bionic/libstdc++/include \ - $(TOP)/external/stlport/stlport \ - $(TOP)/vendor/widevine/proprietary/streamcontrol/include \ - $(TOP)/vendor/widevine/proprietary/drmwvmplugin/include \ - $(TOP)/frameworks/av/drm/libdrmframework/include \ - $(TOP)/frameworks/av/drm/libdrmframework/plugins/common/include \ - $(TOP)/frameworks/av/include + bionic \ + bionic/libstdc++/include \ + external/stlport/stlport \ + vendor/widevine/proprietary/streamcontrol/include \ + vendor/widevine/proprietary/drmwvmplugin/include \ + frameworks/av/drm/libdrmframework/include \ + frameworks/av/drm/libdrmframework/plugins/common/include \ + frameworks/av/include ifeq ($(TARGET_ARCH),x86) -LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86 +LOCAL_C_INCLUDES += system/core/include/arch/linux-x86 endif diff --git a/proprietary/drmwvmplugin/lib/arm/Android.mk b/proprietary/drmwvmplugin/lib/arm/Android.mk index 5f11e64e..59e6ac68 100644 --- a/proprietary/drmwvmplugin/lib/arm/Android.mk +++ b/proprietary/drmwvmplugin/lib/arm/Android.mk @@ -8,9 +8,7 @@ ifneq ($(BOARD_USES_GENERIC_WIDEVINE),false) # libwvdrm_L?.so include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk - -LOCAL_MODULE := libwvdrm_L$(LOCAL_OEMCRYPTO_LEVEL) +LOCAL_MODULE := libwvdrm_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_MODULE_CLASS := SHARED_LIBRARIES LOCAL_MODULE_SUFFIX := .so LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX) @@ -24,9 +22,7 @@ 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 := libwvocs_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_MODULE_CLASS := STATIC_LIBRARIES LOCAL_MODULE_SUFFIX := .a LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX) diff --git a/proprietary/drmwvmplugin/lib/x86/Android.mk b/proprietary/drmwvmplugin/lib/x86/Android.mk index 69ea5798..0f189800 100644 --- a/proprietary/drmwvmplugin/lib/x86/Android.mk +++ b/proprietary/drmwvmplugin/lib/x86/Android.mk @@ -6,9 +6,8 @@ LOCAL_PATH:= $(call my-dir) # libwvdrm_L?.so include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk -LOCAL_MODULE := libwvdrm_L$(LOCAL_OEMCRYPTO_LEVEL) +LOCAL_MODULE := libwvdrm_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_MODULE_CLASS := SHARED_LIBRARIES LOCAL_MODULE_SUFFIX := .so LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX) @@ -22,9 +21,8 @@ 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 := libwvocs_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_MODULE_CLASS := STATIC_LIBRARIES LOCAL_MODULE_SUFFIX := .a LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX) diff --git a/proprietary/drmwvmplugin/oemcryptolevel.mk b/proprietary/drmwvmplugin/oemcryptolevel.mk deleted file mode 100644 index 53d22ef6..00000000 --- a/proprietary/drmwvmplugin/oemcryptolevel.mk +++ /dev/null @@ -1,7 +0,0 @@ -# determine which oem crypto level API is being used on this device -# so we can link with the appropriate libs. -ifneq (,$(filter libwvdrm_L1, $(PRODUCTS.$(INTERNAL_PRODUCT).PRODUCT_PACKAGES))) - LOCAL_OEMCRYPTO_LEVEL := 1 -else - LOCAL_OEMCRYPTO_LEVEL := 3 -endif diff --git a/proprietary/drmwvmplugin/plugin-core.mk b/proprietary/drmwvmplugin/plugin-core.mk index ba1b87cc..11f7ad4e 100644 --- a/proprietary/drmwvmplugin/plugin-core.mk +++ b/proprietary/drmwvmplugin/plugin-core.mk @@ -3,13 +3,16 @@ # Widevine DRM plugin. Sets up includes and defines the core libraries # required to build the plugin. # -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/common.mk -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk +include vendor/widevine/proprietary/drmwvmplugin/common.mk + +ifndef BOARD_WIDEVINE_OEMCRYPTO_LEVEL +$(error BOARD_WIDEVINE_OEMCRYPTO_LEVEL not defined!) +endif LOCAL_WHOLE_STATIC_LIBRARIES := \ libdrmframeworkcommon \ libdrmwvmcommon \ - libwvocs_L$(LOCAL_OEMCRYPTO_LEVEL) + libwvocs_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_SHARED_LIBRARIES := \ libbinder \ @@ -17,6 +20,6 @@ LOCAL_SHARED_LIBRARIES := \ libcutils \ libstlport \ libz \ - libwvdrm_L$(LOCAL_OEMCRYPTO_LEVEL) \ - libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL) \ + libwvdrm_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) \ + libWVStreamControlAPI_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) \ libdl diff --git a/proprietary/drmwvmplugin/test/Android.mk b/proprietary/drmwvmplugin/test/Android.mk index 1e1e1285..9cec0243 100644 --- a/proprietary/drmwvmplugin/test/Android.mk +++ b/proprietary/drmwvmplugin/test/Android.mk @@ -17,7 +17,7 @@ LOCAL_C_INCLUDES+= \ frameworks/av/drm/libdrmframework/plugins/common/include ifeq ($(TARGET_ARCH),x86) -LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86 +LOCAL_C_INCLUDES += system/core/include/arch/linux-x86 endif LOCAL_SHARED_LIBRARIES := \ diff --git a/proprietary/streamcontrol/lib/arm/Android.mk b/proprietary/streamcontrol/lib/arm/Android.mk index f099aa50..7e5ba337 100644 --- a/proprietary/streamcontrol/lib/arm/Android.mk +++ b/proprietary/streamcontrol/lib/arm/Android.mk @@ -5,9 +5,8 @@ LOCAL_PATH:= $(call my-dir) ifneq ($(BOARD_USES_GENERIC_WIDEVINE),false) include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk -LOCAL_MODULE := libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL) +LOCAL_MODULE := libWVStreamControlAPI_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_MODULE_CLASS := SHARED_LIBRARIES LOCAL_MODULE_SUFFIX := .so LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX) diff --git a/proprietary/streamcontrol/lib/x86/Android.mk b/proprietary/streamcontrol/lib/x86/Android.mk index 225f5fc9..ebc5deeb 100644 --- a/proprietary/streamcontrol/lib/x86/Android.mk +++ b/proprietary/streamcontrol/lib/x86/Android.mk @@ -3,9 +3,8 @@ ifeq ($(TARGET_ARCH),x86) LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk -LOCAL_MODULE := libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL) +LOCAL_MODULE := libWVStreamControlAPI_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) LOCAL_MODULE_CLASS := SHARED_LIBRARIES LOCAL_MODULE_SUFFIX := .so LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX) diff --git a/proprietary/streamcontrol/test/Android.mk b/proprietary/streamcontrol/test/Android.mk index 16ab107d..20217803 100644 --- a/proprietary/streamcontrol/test/Android.mk +++ b/proprietary/streamcontrol/test/Android.mk @@ -3,7 +3,6 @@ ifneq ($(filter arm x86,$(TARGET_ARCH)),) LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk LOCAL_SRC_FILES:= \ TestPlayer.cpp @@ -20,7 +19,7 @@ LOCAL_C_INCLUDES += \ frameworks/av/drm/libdrmframework/plugins/common/include ifeq ($(TARGET_ARCH),x86) -LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86 +LOCAL_C_INCLUDES += system/core/include/arch/linux-x86 endif LOCAL_SHARED_LIBRARIES := \ @@ -31,10 +30,10 @@ LOCAL_SHARED_LIBRARIES := \ libz \ libcutils \ libdl \ - libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL) \ - libwvdrm_L$(LOCAL_OEMCRYPTO_LEVEL) + libWVStreamControlAPI_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) \ + libwvdrm_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) -LOCAL_MODULE:=test-wvplayer_L$(LOCAL_OEMCRYPTO_LEVEL) +LOCAL_MODULE:=test-wvplayer_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) include $(BUILD_EXECUTABLE) diff --git a/proprietary/wvm/Android.mk b/proprietary/wvm/Android.mk index c3237d90..c4fe89fb 100644 --- a/proprietary/wvm/Android.mk +++ b/proprietary/wvm/Android.mk @@ -3,10 +3,9 @@ ifneq ($(filter arm x86,$(TARGET_ARCH)),) LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) -include $(TOP)/vendor/widevine/proprietary/wvm/common.mk -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk +include vendor/widevine/proprietary/wvm/common.mk -ifeq ($(LOCAL_OEMCRYPTO_LEVEL),1) +ifeq ($(BOARD_WIDEVINE_OEMCRYPTO_LEVEL),1) LOCAL_CFLAGS := -DREQUIRE_SECURE_BUFFERS endif diff --git a/proprietary/wvm/common.mk b/proprietary/wvm/common.mk index a8517655..97d51fba 100644 --- a/proprietary/wvm/common.mk +++ b/proprietary/wvm/common.mk @@ -7,5 +7,5 @@ LOCAL_C_INCLUDES:= \ vendor/widevine/proprietary/wvm/include ifeq ($(TARGET_ARCH),x86) -LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86 +LOCAL_C_INCLUDES += system/core/include/arch/linux-x86 endif diff --git a/proprietary/wvm/test/Android.mk b/proprietary/wvm/test/Android.mk index aa15b53c..edbb2c3d 100644 --- a/proprietary/wvm/test/Android.mk +++ b/proprietary/wvm/test/Android.mk @@ -14,7 +14,7 @@ LOCAL_C_INCLUDES+= \ frameworks/av/media/libstagefright ifeq ($(TARGET_ARCH),x86) -LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86 +LOCAL_C_INCLUDES += system/core/include/arch/linux-x86 endif LOCAL_SHARED_LIBRARIES := \ diff --git a/proprietary/wvm/wvm-core.mk b/proprietary/wvm/wvm-core.mk index 161ba46b..d3fb30aa 100644 --- a/proprietary/wvm/wvm-core.mk +++ b/proprietary/wvm/wvm-core.mk @@ -3,8 +3,11 @@ # Widevine wvm static library. Sets up includes and defines the core libraries # required. # -include $(TOP)/vendor/widevine/proprietary/wvm/common.mk -include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/oemcryptolevel.mk +include vendor/widevine/proprietary/wvm/common.mk + +ifndef BOARD_WIDEVINE_OEMCRYPTO_LEVEL +$(error BOARD_WIDEVINE_OEMCRYPTO_LEVEL not defined!) +endif LOCAL_WHOLE_STATIC_LIBRARIES := \ libwvmcommon @@ -12,7 +15,7 @@ LOCAL_WHOLE_STATIC_LIBRARIES := \ LOCAL_SHARED_LIBRARIES := \ libstlport \ libstagefright \ - libWVStreamControlAPI_L$(LOCAL_OEMCRYPTO_LEVEL) \ + libWVStreamControlAPI_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL) \ libdrmframework \ libcutils \ liblog \