make: Document imported variables
[mesa.git] / src / mesa / Android.mk
1 # Mesa 3-D graphics library
2 #
3 # Copyright (C) 2010-2011 Chia-I Wu <olvaffe@gmail.com>
4 # Copyright (C) 2010-2011 LunarG Inc.
5 #
6 # Permission is hereby granted, free of charge, to any person obtaining a
7 # copy of this software and associated documentation files (the "Software"),
8 # to deal in the Software without restriction, including without limitation
9 # the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 # and/or sell copies of the Software, and to permit persons to whom the
11 # Software is furnished to do so, subject to the following conditions:
12 #
13 # The above copyright notice and this permission notice shall be included
14 # in all copies or substantial portions of the Software.
15 #
16 # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
19 # THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 # DEALINGS IN THE SOFTWARE.
23
24 # Android.mk for core mesa
25
26 LOCAL_PATH := $(call my-dir)
27
28 # Import the following variables:
29 # MESA_CXX_SOURCES
30 # MESA_GALLIUM_CXX_SOURCES
31 # MESA_GALLIUM_SOURCES
32 # MESA_SOURCES
33 # X86_SOURCES
34 include $(LOCAL_PATH)/sources.mak
35
36 common_CFLAGS := \
37 -DFEATURE_ES1=1 \
38 -DFEATURE_ES2=1
39
40 common_C_INCLUDES := \
41 $(MESA_TOP)/src/mapi \
42 $(MESA_TOP)/src/glsl
43
44 common_ASM :=
45
46 # ---------------------------------------
47 # Build mesa_gen_matypes for host
48 # ---------------------------------------
49
50 ifeq ($(strip $(MESA_ENABLE_ASM)),true)
51 ifeq ($(TARGET_ARCH),x86)
52 common_ASM += $(X86_SOURCES)
53
54 include $(CLEAR_VARS)
55 LOCAL_SRC_FILES := x86/gen_matypes.c
56 LOCAL_CFLAGS := $(common_CFLAGS)
57 LOCAL_C_INCLUDES := $(common_C_INCLUDES)
58 LOCAL_MODULE := mesa_gen_matypes
59 include $(MESA_COMMON_MK)
60 include $(BUILD_HOST_EXECUTABLE)
61
62 endif # x86
63 endif # MESA_ENABLE_ASM
64
65 # ---------------------------------------
66 # Build libmesa_st_mesa
67 # ---------------------------------------
68
69 ifeq ($(strip $(MESA_BUILD_GALLIUM)),true)
70 include $(CLEAR_VARS)
71
72 LOCAL_SRC_FILES := \
73 $(MESA_GALLIUM_SOURCES) \
74 $(MESA_GALLIUM_CXX_SOURCES) \
75 $(common_ASM)
76
77 LOCAL_CFLAGS := $(common_CFLAGS)
78
79 LOCAL_C_INCLUDES := \
80 $(common_C_INCLUDES) \
81 $(MESA_TOP)/src/gallium/include \
82 $(MESA_TOP)/src/gallium/auxiliary
83
84 LOCAL_MODULE := libmesa_st_mesa
85
86 include $(LOCAL_PATH)/Android.gen.mk
87 include $(MESA_COMMON_MK)
88 include $(BUILD_STATIC_LIBRARY)
89 endif # MESA_BUILD_GALLIUM
90
91 # ---------------------------------------
92 # Build libmesa_dricore for DRI modules
93 # ---------------------------------------
94
95 ifeq ($(strip $(MESA_BUILD_CLASSIC)),true)
96
97 include $(CLEAR_VARS)
98
99 LOCAL_MODULE := libmesa_dricore
100 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
101
102 LOCAL_CFLAGS := \
103 $(common_CFLAGS) \
104 -DFEATURE_GL=1
105
106 LOCAL_C_INCLUDES := \
107 $(common_C_INCLUDES)
108
109 LOCAL_SRC_FILES := \
110 $(MESA_SOURCES) \
111 $(MESA_CXX_SOURCES) \
112 $(common_ASM)
113
114 include $(LOCAL_PATH)/Android.gen.mk
115 include $(MESA_COMMON_MK)
116 include $(BUILD_STATIC_LIBRARY)
117
118 endif # MESA_BUILD_CLASSIC
119
120 # ---------------------------------------
121 # Build libmesa_glsl_utils
122 #
123 # It is used to avoid circular dependency between core mesa and glsl.
124 # ---------------------------------------
125
126 include $(CLEAR_VARS)
127
128 LOCAL_SRC_FILES := \
129 program/hash_table.c \
130 program/symbol_table.c
131
132 LOCAL_MODULE := libmesa_glsl_utils
133
134 include $(MESA_COMMON_MK)
135 include $(BUILD_STATIC_LIBRARY)
136
137 # ---------------------------------------
138 # Build libmesa_glsl_utils for host
139 # ---------------------------------------
140
141 include $(CLEAR_VARS)
142
143 LOCAL_SRC_FILES := \
144 program/hash_table.c \
145 program/symbol_table.c
146
147 LOCAL_MODULE := libmesa_glsl_utils
148
149 include $(MESA_COMMON_MK)
150 include $(BUILD_HOST_STATIC_LIBRARY)