[Mesa-dev] [PATCH 8/8] i965: Build i965_dri.so for Android
Chia-I Wu
olv at lunarg.com
Fri Aug 26 22:51:11 PDT 2011
On Sat, Aug 27, 2011 at 9:54 AM, Chad Versace <chad at chad-versace.us> wrote:
> This just gets the driver to build. I have not yet tested if the driver
> actually works.
>
> Signed-off-by: Chad Versace <chad at chad-versace.us>
> ---
> Android.mk | 3 +-
> src/mesa/drivers/dri/Android.mk | 61 ++++++++++++++++++++++++++++++++++
> src/mesa/drivers/dri/i965/Android.mk | 61 ++++++++++++++++++++++++++++++++++
> 3 files changed, 124 insertions(+), 1 deletions(-)
> create mode 100644 src/mesa/drivers/dri/Android.mk
> create mode 100644 src/mesa/drivers/dri/i965/Android.mk
>
> diff --git a/Android.mk b/Android.mk
> index ab1778e..e9711ba 100644
> --- a/Android.mk
> +++ b/Android.mk
> @@ -35,7 +35,7 @@ MESA_PYTHON2 := python
> DRM_TOP := external/drm
> DRM_GRALLOC_TOP := hardware/drm_gralloc
>
> -classic_drivers :=
> +classic_drivers := i965
Please also update the comments at the top. BTW, I am fine replacing
all classic/CLASSIC by dri/DRI if that is preferred.
> gallium_drivers := swrast r600g
>
> MESA_GPU_DRIVERS := $(BOARD_GPU_DRIVERS)
> @@ -74,6 +74,7 @@ SUBDIRS := \
> src/mapi \
> src/glsl \
> src/mesa \
> + src/mesa/drivers/dri \
> src/mesa/drivers/dri/common \
> src/egl/main
The directory should be added only when MESA_BUILD_CLASSIC is true.
Is it cleaner to remove src/mesa/drivers/dri/common from here and let
src/mesa/drivers/dri/Android.mk handle it? So it will be the
Android.mk in charge of DRI drivers, similar to the role of
src/gallium/Android.mk.
> diff --git a/src/mesa/drivers/dri/Android.mk b/src/mesa/drivers/dri/Android.mk
> new file mode 100644
> index 0000000..c0a1da3
> --- /dev/null
> +++ b/src/mesa/drivers/dri/Android.mk
> @@ -0,0 +1,61 @@
> +#
> +# Copyright (C) 2011 Intel Corporation
> +#
> +# Permission is hereby granted, free of charge, to any person obtaining a
> +# copy of this software and associated documentation files (the "Software"),
> +# to deal in the Software without restriction, including without limitation
> +# the rights to use, copy, modify, merge, publish, distribute, sublicense,
> +# and/or sell copies of the Software, and to permit persons to whom the
> +# Software is furnished to do so, subject to the following conditions:
> +#
> +# The above copyright notice and this permission notice shall be included
> +# in all copies or substantial portions of the Software.
> +#
> +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
> +# DEALINGS IN THE SOFTWARE.
> +#
> +
> +LOCAL_PATH := $(call my-dir)
> +
> +# Import mesa_dri_common_INCLUDES.
> +include $(LOCAL_PATH)/common/Makefile.sources
> +
> +#-----------------------------------------------
> +# Variables common to all DRI drivers
> +
> +MESA_DRI_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/dri
> +MESA_DRI_MODULE_UNSTRIPPED_PATH := $(TARGET_OUT_SHARED_LIBRARIES_UNSTRIPPED)/dri
> +
> +MESA_DRI_C_INCLUDES := \
> + $(mesa_dri_common_INCLUDES) \
> + $(DRM_TOP) \
> + $(DRM_TOP)/include/drm \
> + external/expat/lib
> +
> +MESA_DRI_WHOLE_STATIC_LIBRARIES := \
> + libmesa_dri_common
> +
> +MESA_DRI_SHARED_LIBRARIES := \
> + libcutils \
> + libdl \
> + libdrm \
> + libexpat \
> + libglapi \
> + liblog \
> + libmesa_dricore
> +
> +#-----------------------------------------------
> +# Build drivers
> +
> +drivers :=
> +
> +ifneq ($(filter i965, $(MESA_GPU_DRIVERS)),)
> + drivers += i965
> +endif
> +
> +include $(patsubst %, $(LOCAL_PATH)/%/Android.mk, $(drivers))
> diff --git a/src/mesa/drivers/dri/i965/Android.mk b/src/mesa/drivers/dri/i965/Android.mk
> new file mode 100644
> index 0000000..3925ef3
> --- /dev/null
> +++ b/src/mesa/drivers/dri/i965/Android.mk
> @@ -0,0 +1,61 @@
> +#
> +# Copyright (C) 2011 Intel Corporation
> +# Copyright (C) 2010-2011 Chia-I Wu <olvaffe at gmail.com>
> +# Copyright (C) 2010-2011 LunarG
> +#
> +# Permission is hereby granted, free of charge, to any person obtaining a
> +# copy of this software and associated documentation files (the "Software"),
> +# to deal in the Software without restriction, including without limitation
> +# the rights to use, copy, modify, merge, publish, distribute, sublicense,
> +# and/or sell copies of the Software, and to permit persons to whom the
> +# Software is furnished to do so, subject to the following conditions:
> +#
> +# The above copyright notice and this permission notice shall be included
> +# in all copies or substantial portions of the Software.
> +#
> +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
> +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
> +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
> +# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
> +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
> +# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
> +# DEALINGS IN THE SOFTWARE.
> +#
> +
> +LOCAL_PATH := $(call my-dir)
> +include $(CLEAR_VARS)
> +
> +LOCAL_MODULE := i965_dri
> +LOCAL_MODULE_PATH := $(MESA_DRI_MODULE_PATH)
> +LOCAL_UNSTRIPPED_PATH := $(MESA_DRI_MODULE_UNSTRIPPED_PATH)
> +
> +# Import variables i965_*.
> +include $(LOCAL_PATH)/Makefile.sources
> +
> +# Overriding LOCAL_CC below is an ugly workaround. We cannot place -std=c99
> +# in LOCAL_C_FLAGS because Android appends LOCAL_C_FLAGS to LOCAL_CPP_FLAGS.
> +LOCAL_CC := $(CC) -std=c99
> +
> +LOCAL_C_FLAGS := \
> + $(MESA_DRI_C_FLAGS) \
> + -DI965
> +
> +LOCAL_C_INCLUDES := \
> + $(i965_INCLUDES) \
> + $(MESA_DRI_C_INCLUDES) \
> + $(DRM_TOP)/intel
> +
> +LOCAL_SRC_FILES := \
> + $(i965_C_SOURCES) \
> + $(i965_CXX_SOURCES) \
> + $(i965_ASM_SOURCES)
> +
> +LOCAL_WHOLE_STATIC_LIBRARIES := \
> + $(MESA_DRI_WHOLE_STATIC_LIBRARIES)
> +
> +LOCAL_SHARED_LIBRARIES := \
> + $(MESA_DRI_SHARED_LIBRARIES) \
> + libdrm_intel
> +
> +include $(MESA_COMMON_MK)
> +include $(BUILD_SHARED_LIBRARY)
> --
> 1.7.6
>
>
--
olv at LunarG.com
More information about the mesa-dev
mailing list