• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright 2015 The Android Open Source Project
2# Copyright (C) 2015 Valve Corporation
3
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7
8#      http://www.apache.org/licenses/LICENSE-2.0
9
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15
16LOCAL_PATH := $(call my-dir)
17SRC_DIR := ../..
18LAYER_DIR := ../generated
19THIRD_PARTY := ../third_party
20
21VULKAN_INCLUDE := $(LOCAL_PATH)/$(SRC_DIR)/include
22
23include $(CLEAR_VARS)
24LOCAL_MODULE := layer_utils
25LOCAL_SRC_FILES += $(SRC_DIR)/layers/vk_layer_config.cpp
26LOCAL_SRC_FILES += $(SRC_DIR)/layers/vk_layer_extension_utils.cpp
27LOCAL_SRC_FILES += $(SRC_DIR)/layers/vk_layer_utils.cpp
28LOCAL_SRC_FILES += $(SRC_DIR)/layers/vk_format_utils.cpp
29LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
30                    $(LOCAL_PATH)/$(LAYER_DIR)/include \
31                    $(LOCAL_PATH)/$(SRC_DIR)/layers
32LOCAL_CPPFLAGS += -std=c++11 -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
33LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -DVK_PROTOTYPES -fvisibility=hidden
34include $(BUILD_STATIC_LIBRARY)
35
36include $(CLEAR_VARS)
37LOCAL_MODULE := VkLayer_core_validation
38LOCAL_SRC_FILES += $(SRC_DIR)/layers/core_validation.cpp
39LOCAL_SRC_FILES += $(SRC_DIR)/layers/descriptor_sets.cpp
40LOCAL_SRC_FILES += $(SRC_DIR)/layers/buffer_validation.cpp
41LOCAL_SRC_FILES += $(SRC_DIR)/layers/shader_validation.cpp
42LOCAL_SRC_FILES += $(SRC_DIR)/layers/gpu_validation.cpp
43LOCAL_SRC_FILES += $(SRC_DIR)/layers/convert_to_renderpass2.cpp
44LOCAL_SRC_FILES += $(LAYER_DIR)/include/layer_chassis_dispatch.cpp
45LOCAL_SRC_FILES += $(LAYER_DIR)/include/chassis.cpp
46LOCAL_SRC_FILES += $(SRC_DIR)/layers/xxhash.c
47LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
48                    $(LOCAL_PATH)/$(SRC_DIR)/layers \
49                    $(LOCAL_PATH)/$(LAYER_DIR)/include
50LOCAL_STATIC_LIBRARIES += layer_utils glslang SPIRV-Tools SPIRV-Tools-opt
51LOCAL_CPPFLAGS += -std=c++11 -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
52LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -DVK_PROTOTYPES -fvisibility=hidden -DBUILD_CORE_VALIDATION
53LOCAL_LDLIBS    := -llog -landroid
54LOCAL_LDFLAGS   += -Wl,-Bsymbolic
55LOCAL_LDFLAGS   += -Wl,--exclude-libs,ALL
56include $(BUILD_SHARED_LIBRARY)
57
58include $(CLEAR_VARS)
59LOCAL_MODULE := VkLayer_parameter_validation
60LOCAL_SRC_FILES += $(LAYER_DIR)/include/parameter_validation.cpp
61LOCAL_SRC_FILES += $(LAYER_DIR)/include/layer_chassis_dispatch.cpp
62LOCAL_SRC_FILES += $(LAYER_DIR)/include/chassis.cpp
63LOCAL_SRC_FILES += $(SRC_DIR)/layers/parameter_validation_utils.cpp
64LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
65                    $(LOCAL_PATH)/$(LAYER_DIR)/include \
66                    $(LOCAL_PATH)/$(SRC_DIR)/layers
67LOCAL_STATIC_LIBRARIES += layer_utils
68LOCAL_CPPFLAGS += -std=c++11 -DVK_PROTOTYPES -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
69LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -fvisibility=hidden -DBUILD_PARAMETER_VALIDATION
70LOCAL_LDLIBS    := -llog
71LOCAL_LDFLAGS   += -Wl,-Bsymbolic
72LOCAL_LDFLAGS   += -Wl,--exclude-libs,ALL
73include $(BUILD_SHARED_LIBRARY)
74
75include $(CLEAR_VARS)
76LOCAL_MODULE := VkLayer_object_tracker
77LOCAL_SRC_FILES += $(LAYER_DIR)/include/object_tracker.cpp
78LOCAL_SRC_FILES += $(LAYER_DIR)/include/layer_chassis_dispatch.cpp
79LOCAL_SRC_FILES += $(LAYER_DIR)/include/chassis.cpp
80LOCAL_SRC_FILES += $(SRC_DIR)/layers/object_tracker_utils.cpp
81LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
82                    $(LOCAL_PATH)/$(SRC_DIR)/layers \
83                    $(LOCAL_PATH)/$(LAYER_DIR)/include
84LOCAL_STATIC_LIBRARIES += layer_utils
85LOCAL_CPPFLAGS += -std=c++11 -DVK_PROTOTYPES -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
86LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -fvisibility=hidden -DBUILD_OBJECT_TRACKER
87LOCAL_LDLIBS    := -llog
88LOCAL_LDFLAGS   += -Wl,-Bsymbolic
89LOCAL_LDFLAGS   += -Wl,--exclude-libs,ALL
90include $(BUILD_SHARED_LIBRARY)
91
92include $(CLEAR_VARS)
93LOCAL_MODULE := VkLayer_threading
94LOCAL_SRC_FILES += $(LAYER_DIR)/include/thread_safety.cpp
95LOCAL_SRC_FILES += $(LAYER_DIR)/include/layer_chassis_dispatch.cpp
96LOCAL_SRC_FILES += $(LAYER_DIR)/include/chassis.cpp
97LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
98                    $(LOCAL_PATH)/$(SRC_DIR)/layers \
99                    $(LOCAL_PATH)/$(LAYER_DIR)/include
100LOCAL_STATIC_LIBRARIES += layer_utils
101LOCAL_CPPFLAGS += -std=c++11 -DVK_PROTOTYPES -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
102LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -fvisibility=hidden -DBUILD_THREAD_SAFETY
103LOCAL_LDLIBS    := -llog
104LOCAL_LDFLAGS   += -Wl,-Bsymbolic
105LOCAL_LDFLAGS   += -Wl,--exclude-libs,ALL
106include $(BUILD_SHARED_LIBRARY)
107
108include $(CLEAR_VARS)
109LOCAL_MODULE := VkLayer_unique_objects
110LOCAL_SRC_FILES += $(LAYER_DIR)/include/layer_chassis_dispatch.cpp
111LOCAL_SRC_FILES += $(LAYER_DIR)/include/chassis.cpp
112LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
113                    $(LOCAL_PATH)/$(SRC_DIR)/layers \
114                    $(LOCAL_PATH)/$(LAYER_DIR)/include
115LOCAL_STATIC_LIBRARIES += layer_utils
116LOCAL_CPPFLAGS += -std=c++11 -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
117LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -DVK_PROTOTYPES -fvisibility=hidden -DLAYER_CHASSIS_CAN_WRAP_HANDLES
118LOCAL_LDLIBS    := -llog
119LOCAL_LDFLAGS   += -Wl,-Bsymbolic
120LOCAL_LDFLAGS   += -Wl,--exclude-libs,ALL
121include $(BUILD_SHARED_LIBRARY)
122
123include $(CLEAR_VARS)
124LOCAL_MODULE := VkLayerValidationTests
125LOCAL_SRC_FILES += $(SRC_DIR)/tests/layer_validation_tests.cpp \
126                   $(SRC_DIR)/tests/vktestbinding.cpp \
127                   $(SRC_DIR)/tests/vktestframeworkandroid.cpp \
128                   $(SRC_DIR)/tests/vkrenderframework.cpp \
129                   $(SRC_DIR)/layers/convert_to_renderpass2.cpp \
130                   $(LAYER_DIR)/include/vk_safe_struct.cpp \
131                   $(THIRD_PARTY)/Vulkan-Tools/common/vulkan_wrapper.cpp
132LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
133                    $(LOCAL_PATH)/$(LAYER_DIR)/include \
134                    $(LOCAL_PATH)/$(SRC_DIR)/layers \
135                    $(LOCAL_PATH)/$(SRC_DIR)/libs \
136                    $(LOCAL_PATH)/$(THIRD_PARTY)/Vulkan-Tools/common
137
138LOCAL_STATIC_LIBRARIES := googletest_main layer_utils shaderc
139LOCAL_CPPFLAGS += -std=c++11 -DVK_PROTOTYPES -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
140LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -DNV_EXTENSIONS -DAMD_EXTENSIONS -fvisibility=hidden --include=$(THIRD_PARTY)/Vulkan-Tools/common/vulkan_wrapper.h
141LOCAL_LDLIBS := -llog -landroid
142LOCAL_LDFLAGS   += -Wl,-Bsymbolic
143LOCAL_LDFLAGS   += -Wl,--exclude-libs,ALL
144include $(BUILD_EXECUTABLE)
145
146# Note: The following module is similar in name to the executable, but differs so that loader won't enumerate the resulting .so
147include $(CLEAR_VARS)
148LOCAL_MODULE := VulkanLayerValidationTests
149LOCAL_SRC_FILES += $(SRC_DIR)/tests/layer_validation_tests.cpp \
150                   $(SRC_DIR)/tests/vktestbinding.cpp \
151                   $(SRC_DIR)/tests/vktestframeworkandroid.cpp \
152                   $(SRC_DIR)/tests/vkrenderframework.cpp \
153                   $(SRC_DIR)/layers/convert_to_renderpass2.cpp \
154                   $(LAYER_DIR)/include/vk_safe_struct.cpp \
155                   $(THIRD_PARTY)/Vulkan-Tools/common/vulkan_wrapper.cpp
156LOCAL_C_INCLUDES += $(VULKAN_INCLUDE) \
157                    $(LOCAL_PATH)/$(LAYER_DIR)/include \
158                    $(LOCAL_PATH)/$(SRC_DIR)/layers \
159                    $(LOCAL_PATH)/$(SRC_DIR)/libs \
160                    $(LOCAL_PATH)/$(THIRD_PARTY)/Vulkan-Tools/common
161
162LOCAL_STATIC_LIBRARIES := googletest_main layer_utils shaderc
163LOCAL_CPPFLAGS += -std=c++11 -DVK_PROTOTYPES -Wall -Werror -Wno-unused-function -Wno-unused-const-variable
164LOCAL_CPPFLAGS += -DVK_USE_PLATFORM_ANDROID_KHR -DNV_EXTENSIONS -DAMD_EXTENSIONS -fvisibility=hidden -DVALIDATION_APK --include=$(THIRD_PARTY)/Vulkan-Tools/common/vulkan_wrapper.h
165LOCAL_WHOLE_STATIC_LIBRARIES += android_native_app_glue
166LOCAL_LDLIBS := -llog -landroid
167LOCAL_LDFLAGS := -u ANativeActivity_onCreate
168include $(BUILD_SHARED_LIBRARY)
169
170$(call import-module,android/native_app_glue)
171$(call import-module,third_party/googletest)
172$(call import-module,third_party/shaderc)
173