Android.mk revision 414a46166126da6864258bd25ff183f9a3c6261d
1 2LOCAL_PATH:=$(call my-dir) 3 4rs_base_CFLAGS := -Werror -Wall -Wno-unused-parameter -Wno-unused-variable 5ifeq ($(TARGET_BUILD_PDK), true) 6 rs_base_CFLAGS += -D__RS_PDK__ 7endif 8 9include $(CLEAR_VARS) 10LOCAL_CLANG := true 11LOCAL_MODULE := libRSDriver 12 13LOCAL_SRC_FILES:= \ 14 driver/rsdAllocation.cpp \ 15 driver/rsdBcc.cpp \ 16 driver/rsdCore.cpp \ 17 driver/rsdFrameBuffer.cpp \ 18 driver/rsdFrameBufferObj.cpp \ 19 driver/rsdGL.cpp \ 20 driver/rsdIntrinsics.cpp \ 21 driver/rsdIntrinsicConvolve3x3.cpp \ 22 driver/rsdIntrinsicColorMatrix.cpp \ 23 driver/rsdMesh.cpp \ 24 driver/rsdMeshObj.cpp \ 25 driver/rsdPath.cpp \ 26 driver/rsdProgram.cpp \ 27 driver/rsdProgramRaster.cpp \ 28 driver/rsdProgramStore.cpp \ 29 driver/rsdRuntimeMath.cpp \ 30 driver/rsdRuntimeStubs.cpp \ 31 driver/rsdSampler.cpp \ 32 driver/rsdShader.cpp \ 33 driver/rsdShaderCache.cpp \ 34 driver/rsdVertexArray.cpp 35 36ifeq ($(ARCH_ARM_HAVE_NEON),true) 37 LOCAL_CFLAGS += -DARCH_ARM_HAVE_NEON 38 LOCAL_SRC_FILES+= \ 39 driver/rsdIntrinsics_Convolve.S 40endif 41 42LOCAL_SHARED_LIBRARIES += libRS 43LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libGLESv2 44LOCAL_SHARED_LIBRARIES += libbcc libbcinfo libui libgui libsync 45 46LOCAL_C_INCLUDES += frameworks/compile/libbcc/include 47 48LOCAL_CFLAGS += $(rs_base_CFLAGS) 49 50LOCAL_LDLIBS := -lpthread -ldl 51LOCAL_MODULE_TAGS := optional 52 53include $(BUILD_SHARED_LIBRARY) 54 55# Build rsg-generator ==================== 56include $(CLEAR_VARS) 57 58LOCAL_MODULE := rsg-generator 59 60# These symbols are normally defined by BUILD_XXX, but we need to define them 61# here so that local-intermediates-dir works. 62 63LOCAL_IS_HOST_MODULE := true 64LOCAL_MODULE_CLASS := EXECUTABLES 65intermediates := $(local-intermediates-dir) 66 67LOCAL_SRC_FILES:= \ 68 spec.l \ 69 rsg_generator.c 70 71include $(BUILD_HOST_EXECUTABLE) 72 73# TODO: This should go into build/core/config.mk 74RSG_GENERATOR:=$(LOCAL_BUILT_MODULE) 75 76include $(CLEAR_VARS) 77LOCAL_CLANG := true 78LOCAL_MODULE := libRS 79 80LOCAL_MODULE_CLASS := SHARED_LIBRARIES 81intermediates:= $(local-intermediates-dir) 82 83# We depend directly on doing dlopen(libRSDriver.so). 84LOCAL_REQUIRED_MODULES := libRSDriver 85 86# Generate custom headers 87 88GEN := $(addprefix $(intermediates)/, \ 89 rsgApiStructs.h \ 90 rsgApiFuncDecl.h \ 91 ) 92 93$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 94$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec 95$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 96$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg 97 $(transform-generated-source) 98 99# used in jni/Android.mk 100rs_generated_source += $(GEN) 101LOCAL_GENERATED_SOURCES += $(GEN) 102 103# Generate custom source files 104 105GEN := $(addprefix $(intermediates)/, \ 106 rsgApi.cpp \ 107 rsgApiReplay.cpp \ 108 ) 109 110$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 111$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec 112$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 113$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 114 $(transform-generated-source) 115 116# used in jni/Android.mk 117rs_generated_source += $(GEN) 118 119LOCAL_GENERATED_SOURCES += $(GEN) 120 121LOCAL_SRC_FILES:= \ 122 rsAdapter.cpp \ 123 rsAllocation.cpp \ 124 rsAnimation.cpp \ 125 rsComponent.cpp \ 126 rsContext.cpp \ 127 rsDevice.cpp \ 128 rsElement.cpp \ 129 rsFBOCache.cpp \ 130 rsFifoSocket.cpp \ 131 rsFileA3D.cpp \ 132 rsFont.cpp \ 133 rsObjectBase.cpp \ 134 rsMatrix2x2.cpp \ 135 rsMatrix3x3.cpp \ 136 rsMatrix4x4.cpp \ 137 rsMesh.cpp \ 138 rsMutex.cpp \ 139 rsPath.cpp \ 140 rsProgram.cpp \ 141 rsProgramFragment.cpp \ 142 rsProgramStore.cpp \ 143 rsProgramRaster.cpp \ 144 rsProgramVertex.cpp \ 145 rsSampler.cpp \ 146 rsScript.cpp \ 147 rsScriptC.cpp \ 148 rsScriptC_Lib.cpp \ 149 rsScriptC_LibGL.cpp \ 150 rsScriptIntrinsic.cpp \ 151 rsSignal.cpp \ 152 rsStream.cpp \ 153 rsThreadIO.cpp \ 154 rsType.cpp 155 156LOCAL_SHARED_LIBRARIES += libcutils libutils libEGL libGLESv1_CM libGLESv2 libbcc 157LOCAL_SHARED_LIBRARIES += libui libbcinfo libgui libsync libdl 158 159LOCAL_STATIC_LIBRARIES := libft2 160 161LOCAL_C_INCLUDES += external/freetype/include 162LOCAL_C_INCLUDES += frameworks/compile/libbcc/include 163 164LOCAL_CFLAGS += $(rs_base_CFLAGS) 165 166LOCAL_LDLIBS := -lpthread -ldl 167LOCAL_MODULE:= libRS 168LOCAL_MODULE_TAGS := optional 169 170include $(BUILD_SHARED_LIBRARY) 171 172# Now build a host version for serialization 173include $(CLEAR_VARS) 174LOCAL_MODULE:= libRS 175LOCAL_MODULE_TAGS := optional 176 177intermediates := $(call intermediates-dir-for,STATIC_LIBRARIES,libRS,HOST,) 178 179# Generate custom headers 180 181GEN := $(addprefix $(intermediates)/, \ 182 rsgApiStructs.h \ 183 rsgApiFuncDecl.h \ 184 ) 185 186$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 187$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec 188$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 189$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg 190 $(transform-generated-source) 191 192LOCAL_GENERATED_SOURCES += $(GEN) 193 194# Generate custom source files 195 196GEN := $(addprefix $(intermediates)/, \ 197 rsgApi.cpp \ 198 rsgApiReplay.cpp \ 199 ) 200 201$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 202$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR) $< $@ <$(PRIVATE_PATH)/rs.spec 203$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec 204$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 205 $(transform-generated-source) 206 207LOCAL_GENERATED_SOURCES += $(GEN) 208 209LOCAL_CFLAGS += $(rs_base_CFLAGS) 210LOCAL_CFLAGS += -DANDROID_RS_SERIALIZE 211LOCAL_CFLAGS += -fPIC 212 213LOCAL_SRC_FILES:= \ 214 rsAdapter.cpp \ 215 rsAllocation.cpp \ 216 rsAnimation.cpp \ 217 rsComponent.cpp \ 218 rsContext.cpp \ 219 rsDevice.cpp \ 220 rsElement.cpp \ 221 rsFBOCache.cpp \ 222 rsFifoSocket.cpp \ 223 rsFileA3D.cpp \ 224 rsFont.cpp \ 225 rsObjectBase.cpp \ 226 rsMatrix2x2.cpp \ 227 rsMatrix3x3.cpp \ 228 rsMatrix4x4.cpp \ 229 rsMesh.cpp \ 230 rsMutex.cpp \ 231 rsPath.cpp \ 232 rsProgram.cpp \ 233 rsProgramFragment.cpp \ 234 rsProgramStore.cpp \ 235 rsProgramRaster.cpp \ 236 rsProgramVertex.cpp \ 237 rsSampler.cpp \ 238 rsScript.cpp \ 239 rsScriptC.cpp \ 240 rsScriptC_Lib.cpp \ 241 rsScriptC_LibGL.cpp \ 242 rsScriptIntrinsic.cpp \ 243 rsSignal.cpp \ 244 rsStream.cpp \ 245 rsThreadIO.cpp \ 246 rsType.cpp 247 248LOCAL_STATIC_LIBRARIES := libcutils libutils 249 250LOCAL_LDLIBS := -lpthread 251 252include $(BUILD_HOST_STATIC_LIBRARY) 253