blob: 979c4418590ed78d45059afafbd34e3bab1bf54b [file] [log] [blame]
Jason Samsd19f10d2009-05-22 14:03:28 -07001# Only build if BUILD_RENDERSCRIPT is defined to true in the environment.
2ifeq ($(BUILD_RENDERSCRIPT),true)
3
4TOP_LOCAL_PATH:=$(call my-dir)
Jack Palevich60aa3ea2009-05-26 13:45:08 -07005include $(CLEAR_VARS)
Jason Samsd19f10d2009-05-22 14:03:28 -07006LOCAL_PATH:= $(TOP_LOCAL_PATH)
7
Jason Samsd19f10d2009-05-22 14:03:28 -07008# Build rsg-generator
9
10LOCAL_MODULE := rsg-generator
11
12# These symbols are normally defined by BUILD_XXX, but we need to define them
13# here so that local-intermediates-dir works.
14
15LOCAL_IS_HOST_MODULE := true
16LOCAL_MODULE_CLASS := EXECUTABLES
17intermediates:= $(local-intermediates-dir)
18
19GEN := $(addprefix $(intermediates)/, \
20 lex.yy.c \
21 )
22$(GEN): PRIVATE_CUSTOM_TOOL = flex -o $@ $<
23
24$(intermediates)/lex.yy.c : $(LOCAL_PATH)/spec.lex
25 $(transform-generated-source)
26
27$(LOCAL_PATH)/rsg_generator.c : $(intermediates)/lex.yy.c
28
29LOCAL_SRC_FILES:= \
30 rsg_generator.c
31
32include $(BUILD_HOST_EXECUTABLE)
33
34RSG_GENERATOR:=$(LOCAL_BUILT_MODULE)
35
36# Build render script lib
37
38include $(CLEAR_VARS)
39LOCAL_MODULE := libRS
40
41LOCAL_MODULE_CLASS := SHARED_LIBRARIES
42intermediates:= $(local-intermediates-dir)
43
44RS_GENERATED_INCLUDE_DIR:=$(intermediates)
45
46# Generate custom headers
47
48GEN := $(addprefix $(intermediates)/, \
49 rsgApiStructs.h \
50 rsgApiFuncDecl.h \
51 )
52
Jack Palevich60aa3ea2009-05-26 13:45:08 -070053$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(TOP_LOCAL_PATH)/rs.spec
Jason Samsd19f10d2009-05-22 14:03:28 -070054$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
55$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
56 $(transform-generated-source)
Jack Palevicheaff3072009-05-26 17:23:34 -070057
58RS_GENERATED_SOURCES += $(GEN)
Jason Samsd19f10d2009-05-22 14:03:28 -070059LOCAL_GENERATED_SOURCES += $(GEN)
60
61# Generate custom source files
62
63GEN := $(addprefix $(intermediates)/, \
64 rsgApi.cpp \
65 rsgApiReplay.cpp \
66 )
Jack Palevicheaff3072009-05-26 17:23:34 -070067
Jack Palevich60aa3ea2009-05-26 13:45:08 -070068$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(TOP_LOCAL_PATH)/rs.spec
Jason Samsd19f10d2009-05-22 14:03:28 -070069$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
70$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
71 $(transform-generated-source)
Jack Palevicheaff3072009-05-26 17:23:34 -070072
73RS_GENERATED_SOURCES += $(GEN)
Jason Samsd19f10d2009-05-22 14:03:28 -070074LOCAL_GENERATED_SOURCES += $(GEN)
75
76LOCAL_SRC_FILES:= \
77 rsAdapter.cpp \
78 rsAllocation.cpp \
79 rsComponent.cpp \
80 rsContext.cpp \
81 rsDevice.cpp \
82 rsElement.cpp \
83 rsLocklessFifo.cpp \
84 rsObjectBase.cpp \
85 rsMatrix.cpp \
86 rsProgram.cpp \
87 rsProgramFragment.cpp \
88 rsProgramFragmentStore.cpp \
89 rsProgramVertex.cpp \
90 rsSampler.cpp \
91 rsScript.cpp \
92 rsScriptC.cpp \
93 rsThreadIO.cpp \
94 rsType.cpp \
95 rsTriangleMesh.cpp
96
Jack Palevichec5a20b2009-05-28 15:53:04 -070097LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libui libacc
Jason Samsd19f10d2009-05-22 14:03:28 -070098LOCAL_LDLIBS := -lpthread -ldl
99LOCAL_MODULE:= libRS
100
101#LOCAL_MODULE_TAGS := tests
102
103include $(BUILD_SHARED_LIBRARY)
104
105# Build JNI library
106
107LOCAL_PATH:= $(TOP_LOCAL_PATH)/jni
108include $(CLEAR_VARS)
109
110LOCAL_SRC_FILES:= \
111 RenderScript_jni.cpp
112
113LOCAL_SHARED_LIBRARIES := \
114 libandroid_runtime \
Jack Palevich55d45222009-05-26 18:58:04 -0700115 libacc \
Jason Samsd19f10d2009-05-22 14:03:28 -0700116 libnativehelper \
117 libRS \
118 libcutils \
119 libutils \
120 libui
121
122LOCAL_STATIC_LIBRARIES :=
123
124LOCAL_C_INCLUDES += \
125 $(JNI_H_INCLUDE) \
126 $(RS_GENERATED_INCLUDE_DIR) \
127 $(call include-path-for, corecg graphics)
128
129LOCAL_CFLAGS +=
130
131LOCAL_LDLIBS := -lpthread
132
133LOCAL_MODULE:= libRS_jni
134
Jack Palevicheaff3072009-05-26 17:23:34 -0700135LOCAL_ADDITIONAL_DEPENDENCIES += $(RS_GENERATED_SOURCES)
136
Jason Samsd19f10d2009-05-22 14:03:28 -0700137include $(BUILD_SHARED_LIBRARY)
138
Jack Palevich60aa3ea2009-05-26 13:45:08 -0700139include $(call all-subdir-makefiles)
140endif # BUILD_RENDERSCRIPT