1# Copyright (c) 2011 Intel Corporation. All Rights Reserved. 2# 3# 4# Permission is hereby granted, free of charge, to any person obtaining a 5# copy of this software and associated documentation files (the 6# "Software"), to deal in the Software without restriction, including 7# without limitation the rights to use, copy, modify, merge, publish, 8# distribute, sub license, and/or sell copies of the Software, and to 9# permit persons to whom the Software is furnished to do so, subject to 10# the following conditions: 11# 12# The above copyright notice and this permission notice (including the 13# next paragraph) shall be included in all copies or substantial portions 14# of the Software. 15# 16# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 17# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 18# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. 19# IN NO EVENT SHALL PRECISION INSIGHT AND/OR ITS SUPPLIERS BE LIABLE FOR 20# ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 21# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE 22# SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 23# 24 25LOCAL_PATH:= $(call my-dir) 26 27include $(CLEAR_VARS) 28 29# pnw_H264.c, pnw_MPEG4.c, pnw_MPEG2.c, pnw_VC1.c, pnw_H263ES.c, tng_H263ES.c, etc. 30# all use GNU old-style field designator extension. 31# psb_drv_video.c: comparison of constant 32 with expression of type 'VAProfile' 32# is always false 33# pnw_H263ES.c and tng_hostcode.c has implicit conversion 34# from one enumeration type to another 35LOCAL_CLANG_CFLAGS += \ 36 -Wno-gnu-designator \ 37 -Wno-tautological-constant-out-of-range-compare \ 38 -Wno-enum-conversion 39 40LOCAL_CFLAGS := \ 41 -DLINUX -DANDROID -g -Wall -Wno-unused \ 42 -DPSBVIDEO_LOG_ENABLE -DPSBVIDEO_VXD392 \ 43 -DPSBVIDEO_MSVDX_DEC_TILING -DPSBVIDEO_MSVDX_EC 44 45LOCAL_C_INCLUDES := \ 46 $(call include-path-for, libhardware)/hardware \ 47 $(TARGET_OUT_HEADERS)/libva \ 48 $(TARGET_OUT_HEADERS)/libttm \ 49 $(TARGET_OUT_HEADERS)/libwsbm \ 50 $(TARGET_OUT_HEADERS)/libdrm \ 51 $(TARGET_OUT_HEADERS)/opengles \ 52 $(TARGET_OUT_HEADERS)/pvr \ 53 $(LOCAL_PATH)/hwdefs 54 55LOCAL_SHARED_LIBRARIES += libdl libdrm libwsbm libcutils \ 56 libutils libbinder libhardware liblog 57 58LOCAL_SRC_FILES := \ 59 object_heap.c \ 60 psb_buffer.c \ 61 psb_buffer_dm.c \ 62 psb_cmdbuf.c \ 63 psb_drv_video.c \ 64 psb_drv_debug.c \ 65 psb_surface_attrib.c \ 66 psb_output.c \ 67 android/psb_output_android.c \ 68 android/psb_android_glue.cpp \ 69 android/psb_surface_gralloc.c \ 70 android/psb_gralloc.cpp \ 71 psb_surface.c \ 72 psb_overlay.c \ 73 vc1_idx.c \ 74 vc1_vlc.c \ 75 pnw_H264.c \ 76 pnw_MPEG4.c \ 77 pnw_MPEG2.c \ 78 pnw_VC1.c \ 79 pnw_rotate.c \ 80 tng_vld_dec.c \ 81 tng_yuv_processor.c \ 82 tng_VP8.c \ 83 tng_jpegdec.c 84 85ifneq ($(filter $(TARGET_BOARD_PLATFORM),merrifield moorefield morganfield),) 86LOCAL_SRC_FILES += \ 87 pnw_H263ES.c \ 88 pnw_H264ES.c \ 89 pnw_MPEG4ES.c \ 90 pnw_cmdbuf.c \ 91 pnw_hostcode.c \ 92 pnw_hostheader.c \ 93 pnw_hostjpeg.c \ 94 pnw_jpeg.c \ 95 tng_ved_scaling.c \ 96 tng_cmdbuf.c \ 97 tng_hostheader.c \ 98 tng_hostcode.c \ 99 tng_picmgmt.c \ 100 tng_hostbias.c \ 101 tng_H264ES.c \ 102 tng_H263ES.c \ 103 tng_MPEG4ES.c \ 104 tng_jpegES.c \ 105 tng_slotorder.c \ 106 tng_hostair.c \ 107 tng_trace.c 108 109ifeq ($(TARGET_HAS_ISV),true) 110LOCAL_SRC_FILES += \ 111 vsp_VPP.c \ 112 vsp_cmdbuf.c \ 113 vsp_vp8.c \ 114 vsp_compose.c 115 116LOCAL_CFLAGS += \ 117 -DPSBVIDEO_MRFL_VPP \ 118 -DPSBVIDEO_VPP_TILING 119endif 120 121ifeq ($(TARGET_HAS_VPP),true) 122LOCAL_SRC_FILES += \ 123 vsp_VPP.c \ 124 vsp_vp8.c \ 125 vsp_cmdbuf.c \ 126 vsp_compose.c 127endif 128 129ifeq ($(TARGET_HAS_VPP),true) 130LOCAL_C_INCLUDES += \ 131 $(TARGET_OUT_HEADERS)/libmedia_utils_vpp 132endif 133 134 135ifeq ($(TARGET_HAS_VPP),true) 136LOCAL_SHARED_LIBRARIES += libvpp_setting 137LOCAL_CFLAGS += DPSBVIDEO_MRFL_VPP_SETTING 138endif 139 140ifeq ($(TARGET_HAS_VPP),true) 141LOCAL_CFLAGS += \ 142 -DPSBVIDEO_MRFL_VPP -DPSBVIDEO_MRFL \ 143 -DPSBVIDEO_VPP_TILING -DSLICE_HEADER_PARSING 144else 145LOCAL_CFLAGS += \ 146 -DPSBVIDEO_MRFL_VPP \ 147 -DPSBVIDEO_MRFL \ 148 -DSLICE_HEADER_PARSING 149endif 150 151ifeq ($(TARGET_BOARD_PLATFORM),merrifield) 152ifeq ($(TARGET_HAS_VPP),true) 153LOCAL_CFLAGS += -DPSBVIDEO_MRFL_VPP_ROTATE 154endif 155endif 156 157else 158LOCAL_CFLAGS += \ 159 -DPSBVIDEO_VXD392 -DBAYTRAIL \ 160 -DPSBVIDEO_MSVDX_DEC_TILING -DPSBVIDEO_MSVDX_EC 161endif 162 163ifeq ($(TARGET_HAS_MULTIPLE_DISPLAY),true) 164LOCAL_SRC_FILES += android/psb_mds.cpp 165LOCAL_CFLAGS += -DTARGET_HAS_MULTIPLE_DISPLAY 166LOCAL_SHARED_LIBRARIES += libmultidisplay 167endif 168LOCAL_CFLAGS += -Werror 169 170LOCAL_MODULE_TAGS := optional 171LOCAL_MODULE := pvr_drv_video 172 173include $(BUILD_SHARED_LIBRARY) 174