1 LOCAL_PATH:= $(call my-dir)
5 $(LOCAL_PATH)/../include \
6 $(LOCAL_PATH)/OpenGL/ \
10 COMMON_C_INCLUDES += \
11 $(LOCAL_PATH)/../third_party/subzero/ \
12 $(LOCAL_PATH)/../third_party/llvm-subzero/include/ \
13 $(LOCAL_PATH)/../third_party/llvm-subzero/build/Android/include/ \
14 $(LOCAL_PATH)/../third_party/subzero/pnacl-llvm/include/
16 COMMON_C_INCLUDES += \
17 $(LOCAL_PATH)/../third_party/LLVM/include
20 # Project Treble is introduced from Oreo MR1
21 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 27 && echo OreoMR1),OreoMR1)
22 COMMON_SHARED_LIBRARIES := libnativewindow liblog
23 COMMON_HEADER_LIBRARIES := libhardware_headers libnativebase_headers
24 COMMON_STATIC_LIBRARIES := libarect
27 # Marshmallow does not have stlport, but comes with libc++ by default
28 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -lt 23 && echo PreMarshmallow),PreMarshmallow)
29 COMMON_C_INCLUDES += external/stlport/stlport
34 Common/Configurator.cpp \
35 Common/DebugAndroid.cpp \
36 Common/GrallocAndroid.cpp \
47 Main/FrameBuffer.cpp \
48 Main/FrameBufferAndroid.cpp \
53 Reactor/SubzeroReactor.cpp \
58 Reactor/LLVMReactor.cpp \
60 Reactor/LLVMRoutine.cpp \
61 Reactor/LLVMRoutineManager.cpp
65 Renderer/Blitter.cpp \
66 Renderer/Clipper.cpp \
68 Renderer/Context.cpp \
69 Renderer/ETC_Decoder.cpp \
71 Renderer/PixelProcessor.cpp \
74 Renderer/QuadRasterizer.cpp \
75 Renderer/Renderer.cpp \
76 Renderer/Sampler.cpp \
77 Renderer/SetupProcessor.cpp \
78 Renderer/Surface.cpp \
79 Renderer/TextureStage.cpp \
81 Renderer/VertexProcessor.cpp \
84 Shader/Constants.cpp \
85 Shader/PixelPipeline.cpp \
86 Shader/PixelProgram.cpp \
87 Shader/PixelRoutine.cpp \
88 Shader/PixelShader.cpp \
89 Shader/SamplerCore.cpp \
90 Shader/SetupRoutine.cpp \
92 Shader/ShaderCore.cpp \
93 Shader/VertexPipeline.cpp \
94 Shader/VertexProgram.cpp \
95 Shader/VertexRoutine.cpp \
96 Shader/VertexShader.cpp \
99 OpenGL/common/Image.cpp \
100 OpenGL/common/Object.cpp \
101 OpenGL/common/MatrixStack.cpp \
104 -DLOG_TAG=\"swiftshader\" \
109 -Wno-unused-local-typedef \
110 -Wno-unused-parameter \
112 -Wno-unused-variable \
113 -Wno-implicit-exception-spec-mismatch \
114 -Wno-overloaded-virtual \
115 -Wno-non-virtual-dtor \
117 -Wno-unknown-attributes \
118 -Wno-unknown-warning-option \
119 -fno-operator-names \
121 -D__STDC_CONSTANT_MACROS \
122 -D__STDC_LIMIT_MACROS \
123 -DANDROID_PLATFORM_SDK_VERSION=$(PLATFORM_SDK_VERSION) \
125 -DNO_SANITIZE_FUNCTION=
127 ifneq (16,${PLATFORM_SDK_VERSION})
128 COMMON_CFLAGS += -Xclang -fuse-init-array
130 COMMON_CFLAGS += -D__STDC_INT64__
133 # gralloc1 is introduced from N MR1
134 ifeq ($(shell test $(PLATFORM_SDK_VERSION) -ge 25 && echo NMR1),NMR1)
135 COMMON_CFLAGS += -DHAVE_GRALLOC1
136 COMMON_C_INCLUDES += \
137 system/core/libsync/include \
141 # Common Subzero defines
142 COMMON_CFLAGS += -DALLOW_DUMP=0 -DALLOW_TIMERS=0 -DALLOW_LLVM_CL=0 -DALLOW_LLVM_IR=0 -DALLOW_LLVM_IR_AS_INPUT=0 -DALLOW_MINIMAL_BUILD=0 -DALLOW_WASM=0 -DICE_THREAD_LOCAL_HACK=1
145 LOCAL_CFLAGS_x86 += -DSZTARGET=X8632
146 LOCAL_CFLAGS_x86_64 += -DSZTARGET=X8664
147 LOCAL_CFLAGS_arm += -DSZTARGET=ARM32
149 include $(CLEAR_VARS)
151 LOCAL_MODULE := swiftshader_top_release
152 LOCAL_VENDOR_MODULE := true
153 LOCAL_MODULE_TAGS := optional
154 LOCAL_SRC_FILES := $(COMMON_SRC_FILES)
155 LOCAL_CFLAGS := $(COMMON_CFLAGS) -fomit-frame-pointer -ffunction-sections -fdata-sections -DANGLE_DISABLE_TRACE
156 LOCAL_C_INCLUDES := $(COMMON_C_INCLUDES)
157 LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
158 LOCAL_HEADER_LIBRARIES := $(COMMON_HEADER_LIBRARIES)
159 LOCAL_STATIC_LIBRARIES := $(COMMON_STATIC_LIBRARIES)
160 include $(BUILD_STATIC_LIBRARY)
162 include $(CLEAR_VARS)
164 LOCAL_MODULE := swiftshader_top_debug
165 LOCAL_VENDOR_MODULE := true
166 LOCAL_MODULE_TAGS := optional
167 LOCAL_SRC_FILES := $(COMMON_SRC_FILES)
168 LOCAL_CFLAGS := $(COMMON_CFLAGS) -UNDEBUG -g -O0 -DDEFAULT_THREAD_COUNT=1
169 LOCAL_C_INCLUDES := $(COMMON_C_INCLUDES)
170 LOCAL_SHARED_LIBRARIES := $(COMMON_SHARED_LIBRARIES)
171 LOCAL_HEADER_LIBRARIES := $(COMMON_HEADER_LIBRARIES)
172 LOCAL_STATIC_LIBRARIES := $(COMMON_STATIC_LIBRARIES)
173 include $(BUILD_STATIC_LIBRARY)
175 include $(call all-makefiles-under,$(LOCAL_PATH))