a2d5fa60da4db956a0aae04f43ec86b171b2b887
[mesa.git] / src / gallium / auxiliary / 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 LOCAL_PATH := $(call my-dir)
25
26 # get C_SOURCES and GENERATED_SOURCES
27 include $(LOCAL_PATH)/Makefile.sources
28
29 include $(CLEAR_VARS)
30
31 LOCAL_SRC_FILES := \
32 $(C_SOURCES) \
33 $(NIR_SOURCES) \
34 $(RENDERONLY_SOURCES) \
35 $(VL_STUB_SOURCES)
36
37 ifeq ($(USE_LIBBACKTRACE),true)
38 LOCAL_SRC_FILES += util/u_debug_stack_android.cpp
39 endif
40
41 LOCAL_C_INCLUDES := \
42 $(GALLIUM_TOP)/auxiliary/util \
43 $(MESA_TOP)/src/util
44
45 ifeq ($(MESA_ENABLE_LLVM),true)
46 LOCAL_SRC_FILES += \
47 $(GALLIVM_SOURCES)
48 $(call mesa-build-with-llvm)
49 endif
50
51 LOCAL_CPPFLAGS += -std=c++14
52
53 # We need libmesa_nir to get NIR's generated include directories.
54 LOCAL_MODULE := libmesa_gallium
55 LOCAL_STATIC_LIBRARIES += libmesa_nir
56
57 LOCAL_WHOLE_STATIC_LIBRARIES += cpufeatures
58 LOCAL_CFLAGS += -DHAS_ANDROID_CPUFEATURES
59
60 # generate sources
61 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
62 intermediates := $(call local-generated-sources-dir)
63 LOCAL_GENERATED_SOURCES := $(addprefix $(intermediates)/, $(GENERATED_SOURCES))
64
65 $(LOCAL_GENERATED_SOURCES): PRIVATE_PYTHON := $(MESA_PYTHON2)
66 $(LOCAL_GENERATED_SOURCES): PRIVATE_CUSTOM_TOOL = $(PRIVATE_PYTHON) $^ > $@
67
68 $(intermediates)/indices/u_indices_gen.c \
69 $(intermediates)/indices/u_unfilled_gen.c \
70 $(intermediates)/util/u_format_srgb.c: $(intermediates)/%.c: $(LOCAL_PATH)/%.py
71 $(transform-generated-source)
72
73 $(intermediates)/util/u_format_table.c: $(intermediates)/%.c: $(LOCAL_PATH)/%.py $(LOCAL_PATH)/util/u_format.csv
74 $(transform-generated-source)
75
76 LOCAL_GENERATED_SOURCES += $(MESA_GEN_NIR_H)
77
78 include $(GALLIUM_COMMON_MK)
79 include $(BUILD_STATIC_LIBRARY)