widevine: support multilib builds

Support builds for multiple architectures the same time:
Use LOCAL_MODULE_TARGET_ARCH to restrict building to specific arches
Use LOCAL_C_INCLUDES_x86 to set the include path for only x86 builds

Change-Id: I7c33c27f1c9bfb6e3318a07514698992482f6cd7
This commit is contained in:
Colin Cross
2014-02-13 17:07:58 -08:00
parent ccecfd7192
commit d6b79557ab
21 changed files with 32 additions and 73 deletions

3
Android.mk Normal file
View File

@@ -0,0 +1,3 @@
WIDEVINE_SUPPORTED_ARCH := arm x86
include $(call all-subdir-makefiles)

View File

@@ -112,12 +112,16 @@ LOCAL_ADDITIONAL_DEPENDENCIES := $(cdm_proto_gen_headers)
LOCAL_MODULE := libwvdrmengine
LOCAL_MODULE_PATH := $(TARGET_OUT_VENDOR_SHARED_LIBRARIES)/mediadrm
LOCAL_MODULE_RELATIVE_PATH := mediadrm
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_TARGET_ARCH := arm mips x86
include $(BUILD_SHARED_LIBRARY)
include vendor/widevine/libwvdrmengine/cdm/Android.mk

View File

@@ -1,4 +1,2 @@
ifneq ($(filter arm x86 mips,$(TARGET_ARCH)),)
include $(call all-subdir-makefiles)
endif

View File

@@ -1,4 +1,3 @@
ifeq ($(TARGET_ARCH),arm)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libwvlevel3
@@ -8,5 +7,5 @@ LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_MODULE_TARGET_ARCH := arm
include $(BUILD_PREBUILT)
endif # if arm.

View File

@@ -1,4 +1,3 @@
ifeq ($(TARGET_ARCH),mips)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libwvlevel3
@@ -8,5 +7,5 @@ LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_MODULE_TARGET_ARCH := mips
include $(BUILD_PREBUILT)
endif # if mips.

View File

@@ -1,4 +1,3 @@
ifeq ($(TARGET_ARCH),x86)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := libwvlevel3
@@ -8,5 +7,5 @@ LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
LOCAL_PROPRIETARY_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_MODULE_TARGET_ARCH := x86
include $(BUILD_PREBUILT)
endif # if x86.

View File

@@ -1,9 +1,7 @@
# 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
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
include $(call all-subdir-makefiles)
endif # TARGET_ARCH == arm, x86
endif # BOARD_WIDEVINE_OEMCRYPTO_LEVEL

View File

@@ -31,8 +31,6 @@ include $(BUILD_JAVA_LIBRARY)
########################
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
include $(CLEAR_VARS)
include $(TOP)/vendor/widevine/proprietary/drmwvmplugin/common.mk
@@ -43,9 +41,9 @@ LOCAL_SRC_FILES:= \
LOCAL_MODULE := libdrmwvmcommon
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := $(WIDEVINE_SUPPORTED_ARCH)
include $(BUILD_STATIC_LIBRARY)
# invoke Android.mk files in subdirs
include $(call all-makefiles-under,$(LOCAL_PATH))
endif

View File

@@ -8,6 +8,4 @@ LOCAL_C_INCLUDES:= \
$(TOP)/frameworks/av/drm/libdrmframework/plugins/common/include \
$(TOP)/frameworks/av/include
ifeq ($(TARGET_ARCH),x86)
LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86
endif
LOCAL_C_INCLUDES_x86 += $(TOP)/system/core/include/arch/linux-x86

View File

@@ -1,5 +1 @@
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
include $(call all-subdir-makefiles)
endif

View File

@@ -1,5 +1,3 @@
ifeq ($(TARGET_ARCH),arm)
LOCAL_PATH:= $(call my-dir)
ifneq ($(BOARD_USES_GENERIC_WIDEVINE),false)
@@ -18,6 +16,7 @@ LOCAL_STRIP_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_MODULE_TARGET_ARCH := arm
include $(BUILD_PREBUILT)
#########################################################################
@@ -31,8 +30,8 @@ LOCAL_MODULE_SUFFIX := .a
LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := arm
include $(BUILD_PREBUILT)
endif
endif

View File

@@ -1,5 +1,3 @@
ifeq ($(TARGET_ARCH),x86)
LOCAL_PATH:= $(call my-dir)
#########################################################################
@@ -15,6 +13,7 @@ LOCAL_PROPRIETARY_MODULE := true
LOCAL_STRIP_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := x86
include $(BUILD_PREBUILT)
#########################################################################
@@ -28,6 +27,5 @@ LOCAL_MODULE_SUFFIX := .a
LOCAL_SRC_FILES := $(LOCAL_MODULE)$(LOCAL_MODULE_SUFFIX)
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := x86
include $(BUILD_PREBUILT)
endif

View File

@@ -1,5 +1,3 @@
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
@@ -16,9 +14,7 @@ LOCAL_C_INCLUDES+= \
frameworks/av/drm/libdrmframework/include \
frameworks/av/drm/libdrmframework/plugins/common/include
ifeq ($(TARGET_ARCH),x86)
LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86
endif
LOCAL_C_INCLUDES_x86 += $(TOP)/system/core/include/arch/linux-x86
LOCAL_SHARED_LIBRARIES := \
libstlport \
@@ -34,6 +30,6 @@ LOCAL_MODULE:=test-wvdrmplugin
LOCAL_MODULE_TAGS := tests
include $(BUILD_EXECUTABLE)
LOCAL_MODULE_TARGET_ARCH := $(WIDEVINE_SUPPORTED_ARCH)
endif
include $(BUILD_EXECUTABLE)

View File

@@ -1,5 +1 @@
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
include $(call all-subdir-makefiles)
endif

View File

@@ -1,5 +1,3 @@
ifeq ($(TARGET_ARCH),arm)
LOCAL_PATH:= $(call my-dir)
ifneq ($(BOARD_USES_GENERIC_WIDEVINE),false)
@@ -15,8 +13,7 @@ LOCAL_STRIP_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_OWNER := widevine
LOCAL_MODULE_TARGET_ARCH := arm
include $(BUILD_PREBUILT)
endif
endif

View File

@@ -1,5 +1,3 @@
ifeq ($(TARGET_ARCH),x86)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
@@ -12,6 +10,5 @@ LOCAL_PROPRIETARY_MODULE := true
LOCAL_STRIP_MODULE := true
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := x86
include $(BUILD_PREBUILT)
endif

View File

@@ -1,5 +1,3 @@
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
@@ -18,9 +16,7 @@ LOCAL_C_INCLUDES += \
frameworks/av/drm/libdrmframework/include \
frameworks/av/drm/libdrmframework/plugins/common/include
ifeq ($(TARGET_ARCH),x86)
LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86
endif
LOCAL_C_INCLUDES_x86 += $(TOP)/system/core/include/arch/linux-x86
LOCAL_SHARED_LIBRARIES := \
libstlport \
@@ -35,6 +31,6 @@ LOCAL_SHARED_LIBRARIES := \
LOCAL_MODULE:=test-wvplayer_L$(BOARD_WIDEVINE_OEMCRYPTO_LEVEL)
include $(BUILD_EXECUTABLE)
LOCAL_MODULE_TARGET_ARCH := $(WIDEVINE_SUPPORTED_ARCH)
endif
include $(BUILD_EXECUTABLE)

View File

@@ -1,5 +1,3 @@
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
@@ -22,7 +20,5 @@ LOCAL_SHARED_LIBRARIES := \
LOCAL_MODULE := libwvmcommon
LOCAL_MODULE_TAGS := optional
LOCAL_MODULE_TARGET_ARCH := $(WIDEVINE_SUPPORTED_ARCH)
include $(BUILD_STATIC_LIBRARY)
endif

View File

@@ -6,6 +6,4 @@ LOCAL_C_INCLUDES:= \
vendor/widevine/proprietary/streamcontrol/include \
vendor/widevine/proprietary/wvm/include
ifeq ($(TARGET_ARCH),x86)
LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86
endif
LOCAL_C_INCLUDES_x86 += $(TOP)/system/core/include/arch/linux-x86

View File

@@ -1,5 +1,3 @@
ifneq ($(filter arm x86,$(TARGET_ARCH)),)
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
@@ -13,9 +11,7 @@ LOCAL_C_INCLUDES+= \
external/stlport/stlport \
frameworks/av/media/libstagefright
ifeq ($(TARGET_ARCH),x86)
LOCAL_C_INCLUDES += $(TOP)/system/core/include/arch/linux-x86
endif
LOCAL_C_INCLUDES_x86 += $(TOP)/system/core/include/arch/linux-x86
LOCAL_SHARED_LIBRARIES := \
libstlport \
@@ -30,6 +26,6 @@ LOCAL_MODULE:=test-libwvm
LOCAL_MODULE_TAGS := tests
include $(BUILD_EXECUTABLE)
LOCAL_MODULE_TARGET_ARCH := $(WIDEVINE_SUPPORTED_ARCH)
endif
include $(BUILD_EXECUTABLE)

View File

@@ -22,6 +22,4 @@ LOCAL_SHARED_LIBRARIES := \
libutils \
libz
ifeq ($(TARGET_ARCH),x86)
LOCAL_SHARED_LIBRARIES += libdl
endif
LOCAL_SHARED_LIBRARIES_x86 += libdl