blob: fa6d277ee1170f7281f53ca5d121e1797df0a654 [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 Samsd85e2832012-09-11 16:04:27 -070025 driver/rsdIntrinsicBlur.cpp \
Jason Samse1e08b42012-09-04 16:49:19 -070026 driver/rsdIntrinsicConvolve3x3.cpp \
Jason Samsd85e2832012-09-11 16:04:27 -070027 driver/rsdIntrinsicConvolve5x5.cpp \
28 driver/rsdIntrinsicLUT.cpp \
Jason Sams537c4412012-09-04 19:55:55 -070029 driver/rsdIntrinsicColorMatrix.cpp \
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080030 driver/rsdMesh.cpp \
31 driver/rsdMeshObj.cpp \
32 driver/rsdPath.cpp \
33 driver/rsdProgram.cpp \
34 driver/rsdProgramRaster.cpp \
35 driver/rsdProgramStore.cpp \
36 driver/rsdRuntimeMath.cpp \
37 driver/rsdRuntimeStubs.cpp \
38 driver/rsdSampler.cpp \
Jason Samsdbe66d62012-09-17 13:54:41 -070039 driver/rsdScriptGroup.cpp \
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080040 driver/rsdShader.cpp \
41 driver/rsdShaderCache.cpp \
Jason Sams6d958bc2012-09-04 15:14:05 -070042 driver/rsdVertexArray.cpp
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080043
Jason Samse1e08b42012-09-04 16:49:19 -070044ifeq ($(ARCH_ARM_HAVE_NEON),true)
45 LOCAL_CFLAGS += -DARCH_ARM_HAVE_NEON
46 LOCAL_SRC_FILES+= \
47 driver/rsdIntrinsics_Convolve.S
48endif
49
Stephen Hines414a4612012-09-05 18:05:08 -070050LOCAL_SHARED_LIBRARIES += libRS
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -070051LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libGLESv2
Stephen Hines414a4612012-09-05 18:05:08 -070052LOCAL_SHARED_LIBRARIES += libbcc libbcinfo libui libgui libsync
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080053
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080054LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
55
Stephen Hinesebee9482012-05-09 11:53:24 -070056LOCAL_CFLAGS += $(rs_base_CFLAGS)
Alex Sakhartchouk5e3c9682012-03-09 15:04:23 -080057
58LOCAL_LDLIBS := -lpthread -ldl
59LOCAL_MODULE_TAGS := optional
60
Stephen Hines414a4612012-09-05 18:05:08 -070061include $(BUILD_SHARED_LIBRARY)
Jason Samsc7f6ce42009-06-10 16:09:05 -070062
63# Build rsg-generator ====================
64include $(CLEAR_VARS)
Jason Sams326e0dd2009-05-22 14:03:28 -070065
66LOCAL_MODULE := rsg-generator
67
68# These symbols are normally defined by BUILD_XXX, but we need to define them
69# here so that local-intermediates-dir works.
70
71LOCAL_IS_HOST_MODULE := true
72LOCAL_MODULE_CLASS := EXECUTABLES
Jason Samsc7f6ce42009-06-10 16:09:05 -070073intermediates := $(local-intermediates-dir)
Jason Sams326e0dd2009-05-22 14:03:28 -070074
Jason Sams326e0dd2009-05-22 14:03:28 -070075LOCAL_SRC_FILES:= \
Joe Onorato84614dd2009-08-10 15:01:51 -070076 spec.l \
Jason Sams326e0dd2009-05-22 14:03:28 -070077 rsg_generator.c
Jason Samsc7f6ce42009-06-10 16:09:05 -070078
Jason Sams326e0dd2009-05-22 14:03:28 -070079include $(BUILD_HOST_EXECUTABLE)
80
Jason Samsc7f6ce42009-06-10 16:09:05 -070081# TODO: This should go into build/core/config.mk
Jason Sams326e0dd2009-05-22 14:03:28 -070082RSG_GENERATOR:=$(LOCAL_BUILT_MODULE)
83
Jason Sams326e0dd2009-05-22 14:03:28 -070084include $(CLEAR_VARS)
Stephen Hinesf0984242012-05-11 17:41:36 -070085LOCAL_CLANG := true
Jason Sams326e0dd2009-05-22 14:03:28 -070086LOCAL_MODULE := libRS
87
88LOCAL_MODULE_CLASS := SHARED_LIBRARIES
89intermediates:= $(local-intermediates-dir)
90
Jason Sams326e0dd2009-05-22 14:03:28 -070091# Generate custom headers
92
93GEN := $(addprefix $(intermediates)/, \
94 rsgApiStructs.h \
95 rsgApiFuncDecl.h \
96 )
97
Jason Sams81e48fa2009-06-10 18:35:42 -070098$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
99$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
Jason Sams326e0dd2009-05-22 14:03:28 -0700100$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
101$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
102 $(transform-generated-source)
Jack Palevicha5e094b2009-05-26 17:23:34 -0700103
Jason Samsc7f6ce42009-06-10 16:09:05 -0700104# used in jni/Android.mk
105rs_generated_source += $(GEN)
Jason Sams326e0dd2009-05-22 14:03:28 -0700106LOCAL_GENERATED_SOURCES += $(GEN)
107
108# Generate custom source files
109
110GEN := $(addprefix $(intermediates)/, \
111 rsgApi.cpp \
112 rsgApiReplay.cpp \
113 )
Jack Palevicha5e094b2009-05-26 17:23:34 -0700114
Jason Sams81e48fa2009-06-10 18:35:42 -0700115$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
116$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
Jason Sams326e0dd2009-05-22 14:03:28 -0700117$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
118$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
119 $(transform-generated-source)
Jack Palevicha5e094b2009-05-26 17:23:34 -0700120
Jason Samsc7f6ce42009-06-10 16:09:05 -0700121# used in jni/Android.mk
122rs_generated_source += $(GEN)
Jason Sams81e48fa2009-06-10 18:35:42 -0700123
Jason Sams326e0dd2009-05-22 14:03:28 -0700124LOCAL_GENERATED_SOURCES += $(GEN)
125
126LOCAL_SRC_FILES:= \
127 rsAdapter.cpp \
128 rsAllocation.cpp \
Jason Samsc1ed5892010-03-10 17:30:41 -0800129 rsAnimation.cpp \
Jason Samsd01d9702009-12-23 14:35:29 -0800130 rsComponent.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700131 rsContext.cpp \
132 rsDevice.cpp \
133 rsElement.cpp \
Alex Sakhartchouk7d9c5ff2011-04-01 14:19:01 -0700134 rsFBOCache.cpp \
Jason Sams20087472011-05-06 14:14:30 -0700135 rsFifoSocket.cpp \
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700136 rsFileA3D.cpp \
137 rsFont.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700138 rsObjectBase.cpp \
Jason Sams87fe59a2011-04-20 15:09:01 -0700139 rsMatrix2x2.cpp \
140 rsMatrix3x3.cpp \
141 rsMatrix4x4.cpp \
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700142 rsMesh.cpp \
143 rsMutex.cpp \
Jason Sams9e0afb52011-10-31 13:23:43 -0700144 rsPath.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700145 rsProgram.cpp \
146 rsProgramFragment.cpp \
Jason Samsccc010b2010-05-13 18:30:11 -0700147 rsProgramStore.cpp \
Jason Sams5fd09d82009-09-23 13:57:02 -0700148 rsProgramRaster.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700149 rsProgramVertex.cpp \
150 rsSampler.cpp \
151 rsScript.cpp \
152 rsScriptC.cpp \
Jason Samse45ac6e2009-07-20 14:31:06 -0700153 rsScriptC_Lib.cpp \
Jason Samsaeb094b2010-05-18 13:35:45 -0700154 rsScriptC_LibGL.cpp \
Jason Samsdbe66d62012-09-17 13:54:41 -0700155 rsScriptGroup.cpp \
Jason Sams8eaba4f2012-08-14 14:38:05 -0700156 rsScriptIntrinsic.cpp \
Jason Sams12b14ae2010-03-18 11:39:44 -0700157 rsSignal.cpp \
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700158 rsStream.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700159 rsThreadIO.cpp \
Jason Samsa662edd2012-04-02 15:00:10 -0700160 rsType.cpp
Jason Samsc460e552009-11-25 13:22:07 -0800161
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -0700162LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libGLESv2 libbcc
Stephen Hines414a4612012-09-05 18:05:08 -0700163LOCAL_SHARED_LIBRARIES += libui libbcinfo libgui libsync libdl
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700164
Stephen Hines414a4612012-09-05 18:05:08 -0700165LOCAL_STATIC_LIBRARIES := libft2
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700166
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -0700167LOCAL_C_INCLUDES += external/freetype/include
Shih-wei Liao2b2e6212011-01-14 06:21:28 -0800168LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
Alex Sakhartchoukd3e0ad42010-06-24 17:15:34 -0700169
Stephen Hinesebee9482012-05-09 11:53:24 -0700170LOCAL_CFLAGS += $(rs_base_CFLAGS)
Stephen Hines6a121812011-03-01 17:34:59 -0800171
Jason Sams326e0dd2009-05-22 14:03:28 -0700172LOCAL_LDLIBS := -lpthread -ldl
Jason Samsc7f6ce42009-06-10 16:09:05 -0700173LOCAL_MODULE_TAGS := optional
Jason Sams326e0dd2009-05-22 14:03:28 -0700174
175include $(BUILD_SHARED_LIBRARY)
176
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800177# Now build a host version for serialization
178include $(CLEAR_VARS)
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700179LOCAL_MODULE:= libRS
180LOCAL_MODULE_TAGS := optional
181
182intermediates := $(call intermediates-dir-for,STATIC_LIBRARIES,libRS,HOST,)
183
184# Generate custom headers
185
186GEN := $(addprefix $(intermediates)/, \
187 rsgApiStructs.h \
188 rsgApiFuncDecl.h \
189 )
190
191$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
192$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
193$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
194$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
195 $(transform-generated-source)
196
197LOCAL_GENERATED_SOURCES += $(GEN)
198
199# Generate custom source files
200
201GEN := $(addprefix $(intermediates)/, \
202 rsgApi.cpp \
203 rsgApiReplay.cpp \
204 )
205
206$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
207$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
208$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
209$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
210 $(transform-generated-source)
211
212LOCAL_GENERATED_SOURCES += $(GEN)
213
Stephen Hinesebee9482012-05-09 11:53:24 -0700214LOCAL_CFLAGS += $(rs_base_CFLAGS)
Alex Sakhartchouk77d9f4b2011-01-31 14:53:24 -0800215LOCAL_CFLAGS += -DANDROID_RS_SERIALIZE
Alex Sakhartchouk5bab6bf2012-04-10 10:38:39 -0700216LOCAL_CFLAGS += -fPIC
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800217
218LOCAL_SRC_FILES:= \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700219 rsAdapter.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800220 rsAllocation.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700221 rsAnimation.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800222 rsComponent.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700223 rsContext.cpp \
224 rsDevice.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800225 rsElement.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700226 rsFBOCache.cpp \
227 rsFifoSocket.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800228 rsFileA3D.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700229 rsFont.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800230 rsObjectBase.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700231 rsMatrix2x2.cpp \
232 rsMatrix3x3.cpp \
233 rsMatrix4x4.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800234 rsMesh.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700235 rsMutex.cpp \
Jason Sams9e0afb52011-10-31 13:23:43 -0700236 rsPath.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700237 rsProgram.cpp \
238 rsProgramFragment.cpp \
239 rsProgramStore.cpp \
240 rsProgramRaster.cpp \
241 rsProgramVertex.cpp \
242 rsSampler.cpp \
243 rsScript.cpp \
244 rsScriptC.cpp \
245 rsScriptC_Lib.cpp \
246 rsScriptC_LibGL.cpp \
Jason Samsdbe66d62012-09-17 13:54:41 -0700247 rsScriptGroup.cpp \
Jason Sams8eaba4f2012-08-14 14:38:05 -0700248 rsScriptIntrinsic.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700249 rsSignal.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800250 rsStream.cpp \
Alex Sakhartchoukb81a0eb2011-06-03 10:18:01 -0700251 rsThreadIO.cpp \
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800252 rsType.cpp
253
254LOCAL_STATIC_LIBRARIES := libcutils libutils
255
256LOCAL_LDLIBS := -lpthread
Alex Sakhartchouk099d7d32011-01-28 09:31:47 -0800257
258include $(BUILD_HOST_STATIC_LIBRARY)