blob: a37020e71e301721a8c55f87ca8d6c14bf19989a [file] [log] [blame]
Jason Sams5e172b02009-07-23 16:10:46 -07001
Jason Samsc7f6ce42009-06-10 16:09:05 -07002LOCAL_PATH:=$(call my-dir)
Jason Sams326e0dd2009-05-22 14:03:28 -07003
Stephen Hinesebee9482012-05-09 11:53:24 -07004rs_base_CFLAGS := -Werror -Wall -Wno-unused-parameter -Wno-unused-variable
Stephen Hinesebee9482012-05-09 11:53:24 -07005ifeq ($(TARGET_BUILD_PDK), true)
6 rs_base_CFLAGS += -D__RS_PDK__
7endif
8
Stephen Hines91dfcdb2012-09-07 18:23:35 -07009ifneq ($(OVERRIDE_RS_DRIVER),)
10 rs_base_CFLAGS += -DOVERRIDE_RS_DRIVER=$(OVERRIDE_RS_DRIVER)
11endif
12
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080013include $(CLEAR_VARS)
Stephen Hinesf0984242012-05-11 17:41:36 -070014LOCAL_CLANG := true
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080015LOCAL_MODULE := libRSDriver
16
17LOCAL_SRC_FILES:= \
18 driver/rsdAllocation.cpp \
19 driver/rsdBcc.cpp \
20 driver/rsdCore.cpp \
21 driver/rsdFrameBuffer.cpp \
22 driver/rsdFrameBufferObj.cpp \
23 driver/rsdGL.cpp \
Jason Sams8eaba4f2012-08-14 14:38:05 -070024 driver/rsdIntrinsics.cpp \
Jason Samse1e08b42012-09-04 16:49:19 -070025 driver/rsdIntrinsicConvolve3x3.cpp \
Jason Sams537c4412012-09-04 19:55:55 -070026 driver/rsdIntrinsicColorMatrix.cpp \
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080027 driver/rsdMesh.cpp \
28 driver/rsdMeshObj.cpp \
29 driver/rsdPath.cpp \
30 driver/rsdProgram.cpp \
31 driver/rsdProgramRaster.cpp \
32 driver/rsdProgramStore.cpp \
33 driver/rsdRuntimeMath.cpp \
34 driver/rsdRuntimeStubs.cpp \
35 driver/rsdSampler.cpp \
36 driver/rsdShader.cpp \
37 driver/rsdShaderCache.cpp \
Jason Sams6d958bc2012-09-04 15:14:05 -070038 driver/rsdVertexArray.cpp
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080039
Jason Samse1e08b42012-09-04 16:49:19 -070040ifeq ($(ARCH_ARM_HAVE_NEON),true)
41 LOCAL_CFLAGS += -DARCH_ARM_HAVE_NEON
42 LOCAL_SRC_FILES+= \
43 driver/rsdIntrinsics_Convolve.S
44endif
45
Stephen Hines414a4612012-09-05 18:05:08 -070046LOCAL_SHARED_LIBRARIES += libRS
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -070047LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libGLESv2
Stephen Hines414a4612012-09-05 18:05:08 -070048LOCAL_SHARED_LIBRARIES += libbcc libbcinfo libui libgui libsync
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080049
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080050LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
51
Stephen Hinesebee9482012-05-09 11:53:24 -070052LOCAL_CFLAGS += $(rs_base_CFLAGS)
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080053
54LOCAL_LDLIBS := -lpthread -ldl
55LOCAL_MODULE_TAGS := optional
56
Stephen Hines414a4612012-09-05 18:05:08 -070057include $(BUILD_SHARED_LIBRARY)
Jason Samsc7f6ce42009-06-10 16:09:05 -070058
59# Build rsg-generator ====================
60include $(CLEAR_VARS)
Jason Sams326e0dd2009-05-22 14:03:28 -070061
62LOCAL_MODULE := rsg-generator
63
64# These symbols are normally defined by BUILD_XXX, but we need to define them
65# here so that local-intermediates-dir works.
66
67LOCAL_IS_HOST_MODULE := true
68LOCAL_MODULE_CLASS := EXECUTABLES
Jason Samsc7f6ce42009-06-10 16:09:05 -070069intermediates := $(local-intermediates-dir)
Jason Sams326e0dd2009-05-22 14:03:28 -070070
Jason Sams326e0dd2009-05-22 14:03:28 -070071LOCAL_SRC_FILES:= \
Joe Onorato84614dd2009-08-10 15:01:51 -070072 spec.l \
Jason Sams326e0dd2009-05-22 14:03:28 -070073 rsg_generator.c
Jason Samsc7f6ce42009-06-10 16:09:05 -070074
Jason Sams326e0dd2009-05-22 14:03:28 -070075include $(BUILD_HOST_EXECUTABLE)
76
Jason Samsc7f6ce42009-06-10 16:09:05 -070077# TODO: This should go into build/core/config.mk
Jason Sams326e0dd2009-05-22 14:03:28 -070078RSG_GENERATOR:=$(LOCAL_BUILT_MODULE)
79
Jason Sams326e0dd2009-05-22 14:03:28 -070080include $(CLEAR_VARS)
Stephen Hinesf0984242012-05-11 17:41:36 -070081LOCAL_CLANG := true
Jason Sams326e0dd2009-05-22 14:03:28 -070082LOCAL_MODULE := libRS
83
84LOCAL_MODULE_CLASS := SHARED_LIBRARIES
85intermediates:= $(local-intermediates-dir)
86
Stephen Hines414a4612012-09-05 18:05:08 -070087# We depend directly on doing dlopen(libRSDriver.so).
88LOCAL_REQUIRED_MODULES := libRSDriver
89
Jason Sams326e0dd2009-05-22 14:03:28 -070090# Generate custom headers
91
92GEN := $(addprefix $(intermediates)/, \
93 rsgApiStructs.h \
94 rsgApiFuncDecl.h \
95 )
96
Jason Sams81e48fa2009-06-10 18:35:42 -070097$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
98$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
Jason Sams326e0dd2009-05-22 14:03:28 -070099$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
100$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
101 $(transform-generated-source)
Jack Palevicha5e094b2009-05-26 17:23:34 -0700102
Jason Samsc7f6ce42009-06-10 16:09:05 -0700103# used in jni/Android.mk
104rs_generated_source += $(GEN)
Jason Sams326e0dd2009-05-22 14:03:28 -0700105LOCAL_GENERATED_SOURCES += $(GEN)
106
107# Generate custom source files
108
109GEN := $(addprefix $(intermediates)/, \
110 rsgApi.cpp \
111 rsgApiReplay.cpp \
112 )
Jack Palevicha5e094b2009-05-26 17:23:34 -0700113
Jason Sams81e48fa2009-06-10 18:35:42 -0700114$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
115$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
Jason Sams326e0dd2009-05-22 14:03:28 -0700116$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
117$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
118 $(transform-generated-source)
Jack Palevicha5e094b2009-05-26 17:23:34 -0700119
Jason Samsc7f6ce42009-06-10 16:09:05 -0700120# used in jni/Android.mk
121rs_generated_source += $(GEN)
Jason Sams81e48fa2009-06-10 18:35:42 -0700122
Jason Sams326e0dd2009-05-22 14:03:28 -0700123LOCAL_GENERATED_SOURCES += $(GEN)
124
125LOCAL_SRC_FILES:= \
126 rsAdapter.cpp \
127 rsAllocation.cpp \
Jason Samsc1ed5892010-03-10 17:30:41 -0800128 rsAnimation.cpp \
Jason Samsd01d9702009-12-23 14:35:29 -0800129 rsComponent.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700130 rsContext.cpp \
131 rsDevice.cpp \
132 rsElement.cpp \
Alex Sakhartchouk7d9c5ff2011-04-01 14:19:01 -0700133 rsFBOCache.cpp \
Jason Sams20087472011-05-06 14:14:30 -0700134 rsFifoSocket.cpp \
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700135 rsFileA3D.cpp \
136 rsFont.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700137 rsObjectBase.cpp \
Jason Sams87fe59a2011-04-20 15:09:01 -0700138 rsMatrix2x2.cpp \
139 rsMatrix3x3.cpp \
140 rsMatrix4x4.cpp \
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700141 rsMesh.cpp \
142 rsMutex.cpp \
Jason Sams9e0afb52011-10-31 13:23:43 -0700143 rsPath.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700144 rsProgram.cpp \
145 rsProgramFragment.cpp \
Jason Samsccc010b2010-05-13 18:30:11 -0700146 rsProgramStore.cpp \
Jason Sams5fd09d82009-09-23 13:57:02 -0700147 rsProgramRaster.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700148 rsProgramVertex.cpp \
149 rsSampler.cpp \
150 rsScript.cpp \
151 rsScriptC.cpp \
Jason Samse45ac6e2009-07-20 14:31:06 -0700152 rsScriptC_Lib.cpp \
Jason Samsaeb094b2010-05-18 13:35:45 -0700153 rsScriptC_LibGL.cpp \
Jason Sams8eaba4f2012-08-14 14:38:05 -0700154 rsScriptIntrinsic.cpp \
Jason Sams12b14ae2010-03-18 11:39:44 -0700155 rsSignal.cpp \
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700156 rsStream.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700157 rsThreadIO.cpp \
Jason Samsa662edd2012-04-02 15:00:10 -0700158 rsType.cpp
Jason Samsc460e552009-11-25 13:22:07 -0800159
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -0700160LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libGLESv2 libbcc
Stephen Hines414a4612012-09-05 18:05:08 -0700161LOCAL_SHARED_LIBRARIES += libui libbcinfo libgui libsync libdl
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700162
Stephen Hines414a4612012-09-05 18:05:08 -0700163LOCAL_STATIC_LIBRARIES := libft2
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700164
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -0700165LOCAL_C_INCLUDES += external/freetype/include
Shih-wei Liao2b2e6212011-01-14 06:21:28 -0800166LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700167
Stephen Hinesebee9482012-05-09 11:53:24 -0700168LOCAL_CFLAGS += $(rs_base_CFLAGS)
Stephen Hines6a121812011-03-01 17:34:59 -0800169
Jason Sams326e0dd2009-05-22 14:03:28 -0700170LOCAL_LDLIBS := -lpthread -ldl
Jason Samsc7f6ce42009-06-10 16:09:05 -0700171LOCAL_MODULE_TAGS := optional
Jason Sams326e0dd2009-05-22 14:03:28 -0700172
173include $(BUILD_SHARED_LIBRARY)
174
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800175# Now build a host version for serialization
176include $(CLEAR_VARS)
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700177LOCAL_MODULE:= libRS
178LOCAL_MODULE_TAGS := optional
179
180intermediates := $(call intermediates-dir-for,STATIC_LIBRARIES,libRS,HOST,)
181
182# Generate custom headers
183
184GEN := $(addprefix $(intermediates)/, \
185 rsgApiStructs.h \
186 rsgApiFuncDecl.h \
187 )
188
189$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
190$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
191$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
192$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
193 $(transform-generated-source)
194
195LOCAL_GENERATED_SOURCES += $(GEN)
196
197# Generate custom source files
198
199GEN := $(addprefix $(intermediates)/, \
200 rsgApi.cpp \
201 rsgApiReplay.cpp \
202 )
203
204$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
205$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
206$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
207$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
208 $(transform-generated-source)
209
210LOCAL_GENERATED_SOURCES += $(GEN)
211
Stephen Hinesebee9482012-05-09 11:53:24 -0700212LOCAL_CFLAGS += $(rs_base_CFLAGS)
Alex Sakhartchouk77d9f4b2011-01-31 14:53:24 -0800213LOCAL_CFLAGS += -DANDROID_RS_SERIALIZE
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -0700214LOCAL_CFLAGS += -fPIC
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800215
216LOCAL_SRC_FILES:= \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700217 rsAdapter.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800218 rsAllocation.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700219 rsAnimation.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800220 rsComponent.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700221 rsContext.cpp \
222 rsDevice.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800223 rsElement.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700224 rsFBOCache.cpp \
225 rsFifoSocket.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800226 rsFileA3D.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700227 rsFont.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800228 rsObjectBase.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700229 rsMatrix2x2.cpp \
230 rsMatrix3x3.cpp \
231 rsMatrix4x4.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800232 rsMesh.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700233 rsMutex.cpp \
Jason Sams9e0afb52011-10-31 13:23:43 -0700234 rsPath.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700235 rsProgram.cpp \
236 rsProgramFragment.cpp \
237 rsProgramStore.cpp \
238 rsProgramRaster.cpp \
239 rsProgramVertex.cpp \
240 rsSampler.cpp \
241 rsScript.cpp \
242 rsScriptC.cpp \
243 rsScriptC_Lib.cpp \
244 rsScriptC_LibGL.cpp \
Jason Sams8eaba4f2012-08-14 14:38:05 -0700245 rsScriptIntrinsic.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700246 rsSignal.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800247 rsStream.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700248 rsThreadIO.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800249 rsType.cpp
250
251LOCAL_STATIC_LIBRARIES := libcutils libutils
252
253LOCAL_LDLIBS := -lpthread
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800254
255include $(BUILD_HOST_STATIC_LIBRARY)