Android.mk revision 94d8e90ad78ee1dbc0efa315117688abd126ae55
1d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams# Only build if BUILD_RENDERSCRIPT is defined to true in the environment. 2d19f10d43aa400e1183aa21a97099d02074131a2Jason Samsifeq ($(BUILD_RENDERSCRIPT),true) 3d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 494d8e90ad78ee1dbc0efa315117688abd126ae55Jason SamsLOCAL_PATH:=$(call my-dir) 594d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams 6d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 794d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# Build rsg-generator ==================== 894d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsinclude $(CLEAR_VARS) 9d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 10d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_MODULE := rsg-generator 11d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 12d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams# These symbols are normally defined by BUILD_XXX, but we need to define them 13d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams# here so that local-intermediates-dir works. 14d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 15d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_IS_HOST_MODULE := true 16d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_MODULE_CLASS := EXECUTABLES 1794d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsintermediates := $(local-intermediates-dir) 18d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 19d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsGEN := $(addprefix $(intermediates)/, \ 20d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams lex.yy.c \ 21d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams ) 22d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN): PRIVATE_CUSTOM_TOOL = flex -o $@ $< 23d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 24d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(intermediates)/lex.yy.c : $(LOCAL_PATH)/spec.lex 25d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams $(transform-generated-source) 26d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 27d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(LOCAL_PATH)/rsg_generator.c : $(intermediates)/lex.yy.c 28d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 29d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_SRC_FILES:= \ 30d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsg_generator.c 3194d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams 32d19f10d43aa400e1183aa21a97099d02074131a2Jason Samsinclude $(BUILD_HOST_EXECUTABLE) 33d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 3494d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# TODO: This should go into build/core/config.mk 35d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsRSG_GENERATOR:=$(LOCAL_BUILT_MODULE) 36d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 37d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 3894d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams 3994d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# Build render script lib ==================== 40d19f10d43aa400e1183aa21a97099d02074131a2Jason Samsinclude $(CLEAR_VARS) 41d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_MODULE := libRS 42d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 43d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_MODULE_CLASS := SHARED_LIBRARIES 44d19f10d43aa400e1183aa21a97099d02074131a2Jason Samsintermediates:= $(local-intermediates-dir) 45d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 46d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams# Generate custom headers 47d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 48d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsGEN := $(addprefix $(intermediates)/, \ 49d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsgApiStructs.h \ 50d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsgApiFuncDecl.h \ 51d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams ) 52d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 5394d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(LOCAL_PATH)/rs.spec 54d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 55d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg 56d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams $(transform-generated-source) 57eaff30744e7961dfa304368f81cb56cc4166f495Jack Palevich 5894d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# used in jni/Android.mk 5994d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsrs_generated_source += $(GEN) 60d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_GENERATED_SOURCES += $(GEN) 61d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 62d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams# Generate custom source files 63d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 64d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsGEN := $(addprefix $(intermediates)/, \ 65d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsgApi.cpp \ 66d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsgApiReplay.cpp \ 67d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams ) 68eaff30744e7961dfa304368f81cb56cc4166f495Jack Palevich 6994d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(LOCAL_PATH)/rs.spec 70d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 71d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 72d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams $(transform-generated-source) 73eaff30744e7961dfa304368f81cb56cc4166f495Jack Palevich 7494d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# used in jni/Android.mk 7594d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsrs_generated_source += $(GEN) 76d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_GENERATED_SOURCES += $(GEN) 77d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 78d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_SRC_FILES:= \ 79d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsAdapter.cpp \ 80d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsAllocation.cpp \ 81d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsComponent.cpp \ 82d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsContext.cpp \ 83d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsDevice.cpp \ 84d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsElement.cpp \ 85d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsLocklessFifo.cpp \ 86d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsObjectBase.cpp \ 87d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsMatrix.cpp \ 88d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgram.cpp \ 89d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgramFragment.cpp \ 90d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgramFragmentStore.cpp \ 91d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgramVertex.cpp \ 92d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsSampler.cpp \ 93d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsScript.cpp \ 94d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsScriptC.cpp \ 95d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsThreadIO.cpp \ 96d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsType.cpp \ 97d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsTriangleMesh.cpp 98d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 99ec5a20bf2b9f563f9f6a4bde4d8cbbe13598fd25Jack PalevichLOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libui libacc 100d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_LDLIBS := -lpthread -ldl 101d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_MODULE:= libRS 102e1ab4349268f3190f8ae6b535c4583e5f23f0a59Jack PalevichLOCAL_PRELINK_MODULE := false 103d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 10494d8e90ad78ee1dbc0efa315117688abd126ae55Jason SamsLOCAL_MODULE_TAGS := optional 105d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 106d19f10d43aa400e1183aa21a97099d02074131a2Jason Samsinclude $(BUILD_SHARED_LIBRARY) 107d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 108d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 10994d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# Include the subdirectories ==================== 11094d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsinclude $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk,\ 11194d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams jni \ 11294d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams java \ 11394d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams )) 114d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 11560aa3eaf559b1410898c228e4f6ab7920f3953d0Jack Palevichendif # BUILD_RENDERSCRIPT 116