76309a4ebc2b8450aa422427b659f3ba35da502a
[mesa.git] / src / gallium / drivers / radeonsi / 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 := $(C_SOURCES)
32
33 LOCAL_CFLAGS += -DFORCE_BUILD_AMDGPU # instructs LLVM to declare LLVMInitializeAMDGPU* functions
34
35 LOCAL_MODULE_CLASS := STATIC_LIBRARIES
36
37 LOCAL_C_INCLUDES := \
38 $(MESA_TOP)/src/amd/common \
39 $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_amd_common,,)/common \
40 $(call generated-sources-dir-for,STATIC_LIBRARIES,libmesa_nir,,)/nir
41
42 LOCAL_STATIC_LIBRARIES := libmesa_amd_common
43
44 LOCAL_SHARED_LIBRARIES := libdrm_radeon
45 LOCAL_MODULE := libmesa_pipe_radeonsi
46
47 intermediates := $(call local-generated-sources-dir)
48
49 # We need to get NIR's generated headers.
50 LOCAL_GENERATED_SOURCES := $(MESA_GEN_NIR_H)
51 LOCAL_GENERATED_SOURCES += $(addprefix $(intermediates)/radeonsi/,$(GENERATED_SOURCES))
52
53 GEN_DRIINFO_INPUTS := \
54 $(MESA_TOP)/src/gallium/auxiliary/pipe-loader/driinfo_gallium.h \
55 $(LOCAL_PATH)/driinfo_radeonsi.h
56
57 MERGE_DRIINFO := $(MESA_TOP)/src/util/merge_driinfo.py
58
59 $(intermediates)/radeonsi/si_driinfo.h: $(MERGE_DRIINFO) $(GEN_DRIINFO_INPUTS)
60 @mkdir -p $(dir $@)
61 @echo "Gen Header: $(PRIVATE_MODULE) <= $(notdir $(@))"
62 $(hide) $(MESA_PYTHON2) $(MERGE_DRIINFO) $(GEN_DRIINFO_INPUTS) > $@ || ($(RM) $@; false)
63
64 LOCAL_EXPORT_C_INCLUDE_DIRS := $(intermediates)
65
66 $(call mesa-build-with-llvm)
67
68 include $(GALLIUM_COMMON_MK)
69 include $(BUILD_STATIC_LIBRARY)
70
71 ifneq ($(HAVE_GALLIUM_RADEONSI),)
72 GALLIUM_TARGET_DRIVERS += radeonsi
73 $(eval GALLIUM_LIBS += \
74 $(LOCAL_MODULE) \
75 $(LOCAL_STATIC_LIBRARIES) \
76 libmesa_winsys_radeon \
77 libmesa_winsys_amdgpu)
78 $(eval GALLIUM_SHARED_LIBS += $(LOCAL_SHARED_LIBRARIES))
79 endif