Android.mk revision b7f1a6de0d9efa6d7ac436e93a80fac821cfa95b
1ifeq ($(BUILD_RENDERSCRIPT),true)
2
3LOCAL_PATH:=$(call my-dir)
4
5
6# Build rsg-generator ====================
7include $(CLEAR_VARS)
8
9LOCAL_MODULE := rsg-generator
10
11# These symbols are normally defined by BUILD_XXX, but we need to define them
12# here so that local-intermediates-dir works.
13
14LOCAL_IS_HOST_MODULE := true
15LOCAL_MODULE_CLASS := EXECUTABLES
16intermediates := $(local-intermediates-dir)
17
18GEN := $(addprefix $(intermediates)/, \
19            lex.yy.c \
20        )
21$(GEN):	PRIVATE_CUSTOM_TOOL = flex -o $@ $<
22
23$(intermediates)/lex.yy.c : $(LOCAL_PATH)/spec.lex
24	$(transform-generated-source)
25
26$(LOCAL_PATH)/rsg_generator.c : $(intermediates)/lex.yy.c
27
28LOCAL_SRC_FILES:= \
29    rsg_generator.c
30
31include $(BUILD_HOST_EXECUTABLE)
32
33# TODO: This should go into build/core/config.mk
34RSG_GENERATOR:=$(LOCAL_BUILT_MODULE)
35
36
37
38# Build render script lib ====================
39include $(CLEAR_VARS)
40LOCAL_MODULE := libRS
41
42LOCAL_MODULE_CLASS := SHARED_LIBRARIES
43intermediates:= $(local-intermediates-dir)
44
45# Generate custom headers
46
47GEN := $(addprefix $(intermediates)/, \
48            rsgApiStructs.h \
49            rsgApiFuncDecl.h \
50        )
51
52$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
53$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
54$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
55$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
56	$(transform-generated-source)
57
58# used in jni/Android.mk
59rs_generated_source += $(GEN)
60LOCAL_GENERATED_SOURCES += $(GEN)
61
62# Generate custom source files
63
64GEN := $(addprefix $(intermediates)/, \
65            rsgApi.cpp \
66            rsgApiReplay.cpp \
67        )
68
69$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
70$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
71$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
72$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
73	$(transform-generated-source)
74
75# used in jni/Android.mk
76rs_generated_source += $(GEN)
77
78LOCAL_GENERATED_SOURCES += $(GEN)
79
80LOCAL_SRC_FILES:= \
81	rsAdapter.cpp \
82	rsAllocation.cpp \
83	rsComponent.cpp \
84	rsContext.cpp \
85	rsDevice.cpp \
86	rsElement.cpp \
87        rsFileA3D.cpp \
88	rsLight.cpp \
89	rsLocklessFifo.cpp \
90	rsObjectBase.cpp \
91	rsMatrix.cpp \
92        rsMesh.cpp \
93	rsNoise.cpp \
94	rsProgram.cpp \
95	rsProgramFragment.cpp \
96	rsProgramFragmentStore.cpp \
97	rsProgramVertex.cpp \
98	rsSampler.cpp \
99	rsScript.cpp \
100	rsScriptC.cpp \
101	rsScriptC_Lib.cpp \
102	rsThreadIO.cpp \
103	rsType.cpp \
104	rsTriangleMesh.cpp
105
106LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libui libacc
107LOCAL_LDLIBS := -lpthread -ldl
108LOCAL_MODULE:= libRS
109LOCAL_MODULE_TAGS := optional
110
111include $(BUILD_SHARED_LIBRARY)
112
113# Include the subdirectories ====================
114include $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk,\
115            java \
116    	))
117
118endif