Android.mk revision 196ac850afc2382c901d3866a6e9bd95093893b9
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 53196ac850afc2382c901d3866a6e9bd95093893b9Jason Sams$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 54196ac850afc2382c901d3866a6e9bd95093893b9Jason Sams$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec 55d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 56d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg 57d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams $(transform-generated-source) 58eaff30744e7961dfa304368f81cb56cc4166f495Jack Palevich 5994d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# used in jni/Android.mk 6094d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsrs_generated_source += $(GEN) 61d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_GENERATED_SOURCES += $(GEN) 62d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 63d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams# Generate custom source files 64d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 65d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsGEN := $(addprefix $(intermediates)/, \ 66d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsgApi.cpp \ 67d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsgApiReplay.cpp \ 68d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams ) 69eaff30744e7961dfa304368f81cb56cc4166f495Jack Palevich 70196ac850afc2382c901d3866a6e9bd95093893b9Jason Sams$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 71196ac850afc2382c901d3866a6e9bd95093893b9Jason Sams$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec 72d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 73d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 74d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams $(transform-generated-source) 75eaff30744e7961dfa304368f81cb56cc4166f495Jack Palevich 7694d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# used in jni/Android.mk 7794d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsrs_generated_source += $(GEN) 78196ac850afc2382c901d3866a6e9bd95093893b9Jason Sams 79d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_GENERATED_SOURCES += $(GEN) 80d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 81d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_SRC_FILES:= \ 82d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsAdapter.cpp \ 83d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsAllocation.cpp \ 84d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsComponent.cpp \ 85d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsContext.cpp \ 86d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsDevice.cpp \ 87d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsElement.cpp \ 88d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsLocklessFifo.cpp \ 89d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsObjectBase.cpp \ 90d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsMatrix.cpp \ 91d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgram.cpp \ 92d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgramFragment.cpp \ 93d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgramFragmentStore.cpp \ 94d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsProgramVertex.cpp \ 95d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsSampler.cpp \ 96d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsScript.cpp \ 97d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsScriptC.cpp \ 98d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsThreadIO.cpp \ 99d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsType.cpp \ 100d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams rsTriangleMesh.cpp 101d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 102ec5a20bf2b9f563f9f6a4bde4d8cbbe13598fd25Jack PalevichLOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libui libacc 103d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_LDLIBS := -lpthread -ldl 104d19f10d43aa400e1183aa21a97099d02074131a2Jason SamsLOCAL_MODULE:= libRS 105e1ab4349268f3190f8ae6b535c4583e5f23f0a59Jack PalevichLOCAL_PRELINK_MODULE := false 106d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 10794d8e90ad78ee1dbc0efa315117688abd126ae55Jason SamsLOCAL_MODULE_TAGS := optional 108d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 109d19f10d43aa400e1183aa21a97099d02074131a2Jason Samsinclude $(BUILD_SHARED_LIBRARY) 110d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 11194d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams# Include the subdirectories ==================== 11294d8e90ad78ee1dbc0efa315117688abd126ae55Jason Samsinclude $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk,\ 11394d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams jni \ 11494d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams java \ 11594d8e90ad78ee1dbc0efa315117688abd126ae55Jason Sams )) 116d19f10d43aa400e1183aa21a97099d02074131a2Jason Sams 11760aa3eaf559b1410898c228e4f6ab7920f3953d0Jack Palevichendif # BUILD_RENDERSCRIPT 118