1ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Mesa 3-D graphics library
2ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu#
3ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
4ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Copyright (C) 2010-2011 LunarG Inc.
5ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu#
6ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Permission is hereby granted, free of charge, to any person obtaining a
7ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# copy of this software and associated documentation files (the "Software"),
8ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# to deal in the Software without restriction, including without limitation
9ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# the rights to use, copy, modify, merge, publish, distribute, sublicense,
10ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# and/or sell copies of the Software, and to permit persons to whom the
11ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Software is furnished to do so, subject to the following conditions:
12ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu#
13ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# The above copyright notice and this permission notice shall be included
14ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# in all copies or substantial portions of the Software.
15ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu#
16ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
19ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# DEALINGS IN THE SOFTWARE.
23ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
24ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Android.mk for core mesa
25ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
26ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_PATH := $(call my-dir)
27ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
2805049e709efc1658ddd21047fba6081cbbdca6feChad Versace# Import the following variables:
297d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt#     MESA_CXX_FILES
307d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt#     MESA_GALLIUM_CXX_FILES
317d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt#     MESA_GALLIUM_FILES
327d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt#     MESA_FILES
337d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt#     X86_FILES
34ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(LOCAL_PATH)/sources.mak
35ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
36ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wucommon_CFLAGS := \
37ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	-DFEATURE_ES1=1 \
38ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	-DFEATURE_ES2=1
39ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
40ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wucommon_C_INCLUDES := \
41ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	$(MESA_TOP)/src/mapi \
42ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	$(MESA_TOP)/src/glsl
43ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
44ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wucommon_ASM :=
45ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
46ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# ---------------------------------------
47ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Build mesa_gen_matypes for host
48ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# ---------------------------------------
49ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
50ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuifeq ($(strip $(MESA_ENABLE_ASM)),true)
51ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuifeq ($(TARGET_ARCH),x86)
527d7fe1b0376d5017c21351c0df8168b733801570Eric Anholtcommon_ASM += $(X86_FILES)
53ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
54ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(CLEAR_VARS)
55ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_SRC_FILES := x86/gen_matypes.c
56ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_CFLAGS := $(common_CFLAGS)
57ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_C_INCLUDES := $(common_C_INCLUDES)
58ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_MODULE := mesa_gen_matypes
59d2cd621086fdf620a96d599bac0873ff58ddf137Chia-I WuLOCAL_IS_HOST_MODULE := true
60ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(MESA_COMMON_MK)
61ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(BUILD_HOST_EXECUTABLE)
62ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
63ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuendif # x86
64ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuendif # MESA_ENABLE_ASM
65ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
66ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# ---------------------------------------
67ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# Build libmesa_st_mesa
68ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu# ---------------------------------------
69ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
70ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuifeq ($(strip $(MESA_BUILD_GALLIUM)),true)
71ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(CLEAR_VARS)
72ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
73ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_SRC_FILES := \
747d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt	$(MESA_GALLIUM_FILES) \
757d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt	$(MESA_GALLIUM_CXX_FILES) \
76ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	$(common_ASM)
77ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
78ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_CFLAGS := $(common_CFLAGS)
79ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
80ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_C_INCLUDES := \
81ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	$(common_C_INCLUDES) \
82ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	$(MESA_TOP)/src/gallium/include \
83ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu	$(MESA_TOP)/src/gallium/auxiliary
84ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
85ee40f18054088dad8e1d1eca2c44204576813d6bChia-I WuLOCAL_MODULE := libmesa_st_mesa
86ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wu
87ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(LOCAL_PATH)/Android.gen.mk
88ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(MESA_COMMON_MK)
89ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuinclude $(BUILD_STATIC_LIBRARY)
90ee40f18054088dad8e1d1eca2c44204576813d6bChia-I Wuendif # MESA_BUILD_GALLIUM
91b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
92b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# ---------------------------------------
933758173149325a16d2044be01a70ad3b4fa7260dChad Versace# Build libmesa_dricore for DRI modules
943758173149325a16d2044be01a70ad3b4fa7260dChad Versace# ---------------------------------------
953758173149325a16d2044be01a70ad3b4fa7260dChad Versace
963758173149325a16d2044be01a70ad3b4fa7260dChad Versaceifeq ($(strip $(MESA_BUILD_CLASSIC)),true)
973758173149325a16d2044be01a70ad3b4fa7260dChad Versace
983758173149325a16d2044be01a70ad3b4fa7260dChad Versaceinclude $(CLEAR_VARS)
993758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1003758173149325a16d2044be01a70ad3b4fa7260dChad VersaceLOCAL_MODULE := libmesa_dricore
1013758173149325a16d2044be01a70ad3b4fa7260dChad VersaceLOCAL_MODULE_CLASS := STATIC_LIBRARIES
1023758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1033758173149325a16d2044be01a70ad3b4fa7260dChad VersaceLOCAL_CFLAGS := \
1043758173149325a16d2044be01a70ad3b4fa7260dChad Versace	$(common_CFLAGS) \
1053758173149325a16d2044be01a70ad3b4fa7260dChad Versace	-DFEATURE_GL=1
1063758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1073758173149325a16d2044be01a70ad3b4fa7260dChad VersaceLOCAL_C_INCLUDES := \
1083758173149325a16d2044be01a70ad3b4fa7260dChad Versace	$(common_C_INCLUDES)
1093758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1103758173149325a16d2044be01a70ad3b4fa7260dChad VersaceLOCAL_SRC_FILES := \
1117d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt        $(MESA_FILES) \
1127d7fe1b0376d5017c21351c0df8168b733801570Eric Anholt        $(MESA_CXX_FILES) \
1133758173149325a16d2044be01a70ad3b4fa7260dChad Versace        $(common_ASM)
1143758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1153758173149325a16d2044be01a70ad3b4fa7260dChad Versaceinclude $(LOCAL_PATH)/Android.gen.mk
1163758173149325a16d2044be01a70ad3b4fa7260dChad Versaceinclude $(MESA_COMMON_MK)
1173758173149325a16d2044be01a70ad3b4fa7260dChad Versaceinclude $(BUILD_STATIC_LIBRARY)
1183758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1193758173149325a16d2044be01a70ad3b4fa7260dChad Versaceendif # MESA_BUILD_CLASSIC
1203758173149325a16d2044be01a70ad3b4fa7260dChad Versace
1213758173149325a16d2044be01a70ad3b4fa7260dChad Versace# ---------------------------------------
122b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# Build libmesa_glsl_utils
123b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu#
124b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# It is used to avoid circular dependency between core mesa and glsl.
125b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# ---------------------------------------
126b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
127b81b82df955ad19eec55fa593b533673f083f593Chia-I Wuinclude $(CLEAR_VARS)
128b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
129b81b82df955ad19eec55fa593b533673f083f593Chia-I WuLOCAL_SRC_FILES := \
130b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu	program/hash_table.c \
131b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu	program/symbol_table.c
132b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
133b81b82df955ad19eec55fa593b533673f083f593Chia-I WuLOCAL_MODULE := libmesa_glsl_utils
134b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
135b81b82df955ad19eec55fa593b533673f083f593Chia-I Wuinclude $(MESA_COMMON_MK)
136b81b82df955ad19eec55fa593b533673f083f593Chia-I Wuinclude $(BUILD_STATIC_LIBRARY)
137b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
138b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# ---------------------------------------
139b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# Build libmesa_glsl_utils for host
140b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu# ---------------------------------------
141b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
142b81b82df955ad19eec55fa593b533673f083f593Chia-I Wuinclude $(CLEAR_VARS)
143b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
144b81b82df955ad19eec55fa593b533673f083f593Chia-I WuLOCAL_SRC_FILES := \
145b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu	program/hash_table.c \
146b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu	program/symbol_table.c
147b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
148b81b82df955ad19eec55fa593b533673f083f593Chia-I WuLOCAL_MODULE := libmesa_glsl_utils
149d2cd621086fdf620a96d599bac0873ff58ddf137Chia-I WuLOCAL_IS_HOST_MODULE := true
150b81b82df955ad19eec55fa593b533673f083f593Chia-I Wu
151b81b82df955ad19eec55fa593b533673f083f593Chia-I Wuinclude $(MESA_COMMON_MK)
152b81b82df955ad19eec55fa593b533673f083f593Chia-I Wuinclude $(BUILD_HOST_STATIC_LIBRARY)
153