blob: 6b11a25db096b279a1247a92a019d0e9435f272c [file] [log] [blame]
Jason Sams5e172b02009-07-23 16:10:46 -07001ifeq ($(BUILD_RENDERSCRIPT),true)
2
Jason Samsc7f6ce42009-06-10 16:09:05 -07003LOCAL_PATH:=$(call my-dir)
Jason Sams326e0dd2009-05-22 14:03:28 -07004
Jason Samsc7f6ce42009-06-10 16:09:05 -07005
6# Build rsg-generator ====================
7include $(CLEAR_VARS)
Jason Sams326e0dd2009-05-22 14:03:28 -07008
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
Jason Samsc7f6ce42009-06-10 16:09:05 -070016intermediates := $(local-intermediates-dir)
Jason Sams326e0dd2009-05-22 14:03:28 -070017
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
Jason Samsc7f6ce42009-06-10 16:09:05 -070030
Jason Sams326e0dd2009-05-22 14:03:28 -070031include $(BUILD_HOST_EXECUTABLE)
32
Jason Samsc7f6ce42009-06-10 16:09:05 -070033# TODO: This should go into build/core/config.mk
Jason Sams326e0dd2009-05-22 14:03:28 -070034RSG_GENERATOR:=$(LOCAL_BUILT_MODULE)
35
Jason Sams326e0dd2009-05-22 14:03:28 -070036
Jason Samsc7f6ce42009-06-10 16:09:05 -070037
38# Build render script lib ====================
Jason Sams326e0dd2009-05-22 14:03:28 -070039include $(CLEAR_VARS)
40LOCAL_MODULE := libRS
41
42LOCAL_MODULE_CLASS := SHARED_LIBRARIES
43intermediates:= $(local-intermediates-dir)
44
Jason Sams326e0dd2009-05-22 14:03:28 -070045# Generate custom headers
46
47GEN := $(addprefix $(intermediates)/, \
48 rsgApiStructs.h \
49 rsgApiFuncDecl.h \
50 )
51
Jason Sams81e48fa2009-06-10 18:35:42 -070052$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
53$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
Jason Sams326e0dd2009-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 Palevicha5e094b2009-05-26 17:23:34 -070057
Jason Samsc7f6ce42009-06-10 16:09:05 -070058# used in jni/Android.mk
59rs_generated_source += $(GEN)
Jason Sams326e0dd2009-05-22 14:03:28 -070060LOCAL_GENERATED_SOURCES += $(GEN)
61
62# Generate custom source files
63
64GEN := $(addprefix $(intermediates)/, \
65 rsgApi.cpp \
66 rsgApiReplay.cpp \
67 )
Jack Palevicha5e094b2009-05-26 17:23:34 -070068
Jason Sams81e48fa2009-06-10 18:35:42 -070069$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
70$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec
Jason Sams326e0dd2009-05-22 14:03:28 -070071$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec
72$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg
73 $(transform-generated-source)
Jack Palevicha5e094b2009-05-26 17:23:34 -070074
Jason Samsc7f6ce42009-06-10 16:09:05 -070075# used in jni/Android.mk
76rs_generated_source += $(GEN)
Jason Sams81e48fa2009-06-10 18:35:42 -070077
Jason Sams326e0dd2009-05-22 14:03:28 -070078LOCAL_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 \
Jason Samsb80dfa72009-07-10 17:32:40 -070087 rsFileA3D.cpp \
Jason Sams62bc1db2009-06-22 15:49:21 -070088 rsLight.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -070089 rsLocklessFifo.cpp \
90 rsObjectBase.cpp \
91 rsMatrix.cpp \
Jason Samsb80dfa72009-07-10 17:32:40 -070092 rsMesh.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -070093 rsProgram.cpp \
94 rsProgramFragment.cpp \
95 rsProgramFragmentStore.cpp \
96 rsProgramVertex.cpp \
97 rsSampler.cpp \
98 rsScript.cpp \
99 rsScriptC.cpp \
Jason Samse45ac6e2009-07-20 14:31:06 -0700100 rsScriptC_Lib.cpp \
Jason Sams326e0dd2009-05-22 14:03:28 -0700101 rsThreadIO.cpp \
102 rsType.cpp \
103 rsTriangleMesh.cpp
104
Jack Palevich1ef8b802009-05-28 15:53:04 -0700105LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libui libacc
Jason Sams326e0dd2009-05-22 14:03:28 -0700106LOCAL_LDLIBS := -lpthread -ldl
107LOCAL_MODULE:= libRS
Jason Samsc7f6ce42009-06-10 16:09:05 -0700108LOCAL_MODULE_TAGS := optional
Jason Sams326e0dd2009-05-22 14:03:28 -0700109
110include $(BUILD_SHARED_LIBRARY)
111
Jason Samsc7f6ce42009-06-10 16:09:05 -0700112# Include the subdirectories ====================
113include $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk,\
Jason Samsc7f6ce42009-06-10 16:09:05 -0700114 java \
115 ))
Jason Sams326e0dd2009-05-22 14:03:28 -0700116
Jason Sams0e5224f2009-07-23 15:19:03 -0700117endif