Android.mk revision c7f6ce40bf8fcb05d0ac98a1247ecd3daebc4191
1# Only build if BUILD_RENDERSCRIPT is defined to true in the environment. 2ifeq ($(BUILD_RENDERSCRIPT),true) 3 4LOCAL_PATH:=$(call my-dir) 5 6 7# Build rsg-generator ==================== 8include $(CLEAR_VARS) 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 34# TODO: This should go into build/core/config.mk 35RSG_GENERATOR:=$(LOCAL_BUILT_MODULE) 36 37 38 39# Build render script lib ==================== 40include $(CLEAR_VARS) 41LOCAL_MODULE := libRS 42 43LOCAL_MODULE_CLASS := SHARED_LIBRARIES 44intermediates:= $(local-intermediates-dir) 45 46# Generate custom headers 47 48GEN := $(addprefix $(intermediates)/, \ 49 rsgApiStructs.h \ 50 rsgApiFuncDecl.h \ 51 ) 52 53$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(LOCAL_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_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(LOCAL_PATH)/rs.spec 70$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 71$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 72 $(transform-generated-source) 73 74# used in jni/Android.mk 75rs_generated_source += $(GEN) 76LOCAL_GENERATED_SOURCES += $(GEN) 77 78LOCAL_SRC_FILES:= \ 79 rsAdapter.cpp \ 80 rsAllocation.cpp \ 81 rsComponent.cpp \ 82 rsContext.cpp \ 83 rsDevice.cpp \ 84 rsElement.cpp \ 85 rsLocklessFifo.cpp \ 86 rsObjectBase.cpp \ 87 rsMatrix.cpp \ 88 rsProgram.cpp \ 89 rsProgramFragment.cpp \ 90 rsProgramFragmentStore.cpp \ 91 rsProgramVertex.cpp \ 92 rsSampler.cpp \ 93 rsScript.cpp \ 94 rsScriptC.cpp \ 95 rsThreadIO.cpp \ 96 rsType.cpp \ 97 rsTriangleMesh.cpp 98 99LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libui libacc 100LOCAL_LDLIBS := -lpthread -ldl 101LOCAL_MODULE:= libRS 102LOCAL_PRELINK_MODULE := false 103 104LOCAL_MODULE_TAGS := optional 105 106include $(BUILD_SHARED_LIBRARY) 107 108 109# Include the subdirectories ==================== 110include $(addprefix $(LOCAL_PATH)/,$(addsuffix /Android.mk,\ 111 jni \ 112 java \ 113 )) 114 115endif # BUILD_RENDERSCRIPT 116