Android.mk revision e195a3f57ace3b66d313a6ee88c6e93d5c9d87f4
14f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 24f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_PATH:=$(call my-dir) 34f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 44f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberrs_base_CFLAGS := -Werror -Wall -Wno-unused-parameter -Wno-unused-variable 54f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberifeq ($(TARGET_BUILD_PDK), true) 64f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rs_base_CFLAGS += -D__RS_PDK__ 74f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberendif 84f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 94f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberifneq ($(OVERRIDE_RS_DRIVER),) 104f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rs_base_CFLAGS += -DOVERRIDE_RS_DRIVER=$(OVERRIDE_RS_DRIVER) 114f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberendif 124f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 134f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(CLEAR_VARS) 144f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CLANG := true 154f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE := libRSDriver 164f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_TARGET_ARCH_WARN := arm mips x86 x86_64 arm64 174f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 184f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SRC_FILES:= \ 194f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdAllocation.cpp \ 204f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdBcc.cpp \ 214f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdCore.cpp \ 224f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdFrameBuffer.cpp \ 234f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdFrameBufferObj.cpp \ 244f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdGL.cpp \ 254f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdMesh.cpp \ 264f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdMeshObj.cpp \ 274f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdPath.cpp \ 284f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdProgram.cpp \ 294f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdProgramRaster.cpp \ 304f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdProgramStore.cpp \ 314f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdRuntimeStubs.cpp \ 324f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdSampler.cpp \ 334f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdScriptGroup.cpp \ 344f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdShader.cpp \ 354f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdShaderCache.cpp \ 364f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber driver/rsdVertexArray.cpp 374f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 384f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 394f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES += libRS libRSCpuRef 404f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES += liblog libcutils libutils libEGL libGLESv1_CM libGLESv2 414f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES += libui libgui libsync 424f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 434f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# FIXME for 64-bit 444f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES_32 += libbcc libbcinfo libLLVM 454f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 464f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_C_INCLUDES += frameworks/compile/libbcc/include 474f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_C_INCLUDES += frameworks/rs/cpu_ref/linkloader/include 484f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 494f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS += $(rs_base_CFLAGS) 504f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 514f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS_64 += -DFAKE_ARM64_BUILD=1 524f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 534f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_LDLIBS := -lpthread -ldl 544f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_TAGS := optional 554f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 564f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(BUILD_SHARED_LIBRARY) 574f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 584f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# Build rsg-generator ==================== 594f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(CLEAR_VARS) 604f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 614f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE := rsg-generator 624f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 634f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# These symbols are normally defined by BUILD_XXX, but we need to define them 644f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# here so that local-intermediates-dir works. 654f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 664f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_IS_HOST_MODULE := true 674f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_CLASS := EXECUTABLES 684f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberintermediates := $(local-intermediates-dir) 694f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 704f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SRC_FILES:= \ 714f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber spec.l \ 724f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsg_generator.c 734f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 744f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(BUILD_HOST_EXECUTABLE) 754f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 764f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# TODO: This should go into build/core/config.mk 774f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberRSG_GENERATOR:=$(LOCAL_BUILT_MODULE) 784f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 794f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(CLEAR_VARS) 804f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CLANG := true 814f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE := libRS 824f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_TARGET_ARCH_WARN := arm mips x86 x86_64 arm64 834f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 844f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_CLASS := SHARED_LIBRARIES 854f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Hubergenerated_sources:= $(local-generated-sources-dir) 864f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 874f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# Generate custom headers 884f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 894f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberGEN := $(addprefix $(generated_sources)/, \ 904f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApiStructs.h \ 914f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApiFuncDecl.h \ 924f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber ) 934f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 944f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 954f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_CUSTOM_TOOL = cat $(PRIVATE_PATH)/rs.spec $(PRIVATE_PATH)/rsg.spec $(PRIVATE_PATH)/rs_native.spec | $(RSG_GENERATOR) $< $@ 964f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec $(LOCAL_PATH)/rsg.spec $(LOCAL_PATH)/rs_native.spec 974f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN): $(generated_sources)/%.h : $(LOCAL_PATH)/%.h.rsg 984f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber $(transform-generated-source) 994f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1004f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# used in jni/Android.mk 1014f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberrs_generated_source += $(GEN) 1024f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_GENERATED_SOURCES += $(GEN) 1034f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1044f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# Generate custom source files 1054f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1064f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberGEN := $(addprefix $(generated_sources)/, \ 1074f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApi.cpp \ 1084f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApiReplay.cpp \ 1094f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber ) 1104f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1114f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 1124f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_CUSTOM_TOOL = cat $(PRIVATE_PATH)/rs.spec $(PRIVATE_PATH)/rsg.spec $(PRIVATE_PATH)/rs_native.spec | $(RSG_GENERATOR) $< $@ 1134f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec $(LOCAL_PATH)/rsg.spec $(LOCAL_PATH)/rs_native.spec 1144f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN): $(generated_sources)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 1154f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber $(transform-generated-source) 1164f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1174f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# used in jni/Android.mk 1184f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberrs_generated_source += $(GEN) 1194f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1204f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_GENERATED_SOURCES += $(GEN) 1214f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1224f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SRC_FILES:= \ 1234f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsAdapter.cpp \ 1244f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsAllocation.cpp \ 1254f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsAnimation.cpp \ 1264f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsComponent.cpp \ 1274f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsContext.cpp \ 1284f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsCppUtils.cpp \ 1294f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsDevice.cpp \ 1304f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsElement.cpp \ 1314f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFBOCache.cpp \ 1324f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFifoSocket.cpp \ 1334f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFileA3D.cpp \ 1344f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFont.cpp \ 1354f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsGrallocConsumer.cpp \ 1364f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsObjectBase.cpp \ 1374f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMatrix2x2.cpp \ 1384f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMatrix3x3.cpp \ 1394f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMatrix4x4.cpp \ 1404f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMesh.cpp \ 1414f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMutex.cpp \ 1424f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsPath.cpp \ 1434f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgram.cpp \ 1444f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramFragment.cpp \ 1454f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramStore.cpp \ 1464f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramRaster.cpp \ 1474f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramVertex.cpp \ 1484f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsSampler.cpp \ 1494f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScript.cpp \ 1504f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptC.cpp \ 1514f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptC_Lib.cpp \ 1524f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptC_LibGL.cpp \ 1534f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptGroup.cpp \ 1544f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptIntrinsic.cpp \ 1554f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsSignal.cpp \ 1564f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsStream.cpp \ 1574f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsThreadIO.cpp \ 1584f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsType.cpp 1594f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1604f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES += liblog libcutils libutils libEGL libGLESv1_CM libGLESv2 1614f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES += libgui libsync libdl libui 1624f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES += libft2 libpng libz 1634f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1644f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# FIXME for 64-bit 1654f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SHARED_LIBRARIES_32 += libbcc libbcinfo libLLVM 1664f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1674f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1684f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_C_INCLUDES += external/freetype/include 1694f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_C_INCLUDES += frameworks/compile/libbcc/include 1704f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1714f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS += $(rs_base_CFLAGS) 1724f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1734f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# FIXME for 64-bit 1744f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS_64 += -DFAKE_ARM64_BUILD=1 1754f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1764f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_LDLIBS := -lpthread -ldl 1774f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_TAGS := optional 1784f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1794f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(BUILD_SHARED_LIBRARY) 1804f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1814f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# Now build a host version for serialization 1824f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(CLEAR_VARS) 1834f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE:= libRS 1844f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_MODULE_TAGS := optional 1854f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1864f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberintermediates := $(call intermediates-dir-for,STATIC_LIBRARIES,libRS,HOST,) 1874f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1884f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# Generate custom headers 1894f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1904f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberGEN := $(addprefix $(intermediates)/, \ 1914f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApiStructs.h \ 1924f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApiFuncDecl.h \ 1934f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber ) 1944f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 1954f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 1964f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_CUSTOM_TOOL = cat $(PRIVATE_PATH)/rs.spec $(PRIVATE_PATH)/rsg.spec $(PRIVATE_PATH)/rs_native.spec | $(RSG_GENERATOR) $< $@ 1974f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec $(LOCAL_PATH)/rsg.spec $(LOCAL_PATH)/rs_native.spec 1984f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg 1994f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber $(transform-generated-source) 2004f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2014f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_GENERATED_SOURCES += $(GEN) 2024f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2034f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber# Generate custom source files 2044f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2054f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberGEN := $(addprefix $(intermediates)/, \ 2064f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApi.cpp \ 2074f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsgApiReplay.cpp \ 2084f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber ) 2094f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2104f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_PATH := $(LOCAL_PATH) 2114f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : PRIVATE_CUSTOM_TOOL = cat $(PRIVATE_PATH)/rs.spec $(PRIVATE_PATH)/rsg.spec $(PRIVATE_PATH)/rs_native.spec | $(RSG_GENERATOR) $< $@ 2124f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN) : $(RSG_GENERATOR) $(LOCAL_PATH)/rs.spec $(LOCAL_PATH)/rsg.spec $(LOCAL_PATH)/rs_native.spec 2134f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber$(GEN): $(intermediates)/%.cpp : $(LOCAL_PATH)/%.cpp.rsg 2144f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber $(transform-generated-source) 2154f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2164f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_GENERATED_SOURCES += $(GEN) 2174f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2184f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS += $(rs_base_CFLAGS) 2194f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS += -DANDROID_RS_SERIALIZE 2204f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_CFLAGS += -fPIC 2214f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2224f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_SRC_FILES:= \ 2234f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsAdapter.cpp \ 2244f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsAllocation.cpp \ 2254f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsAnimation.cpp \ 2264f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsComponent.cpp \ 2274f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsContext.cpp \ 2284f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsDevice.cpp \ 2294f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsElement.cpp \ 2304f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFBOCache.cpp \ 2314f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFifoSocket.cpp \ 2324f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFileA3D.cpp \ 2334f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsFont.cpp \ 2344f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsObjectBase.cpp \ 2354f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMatrix2x2.cpp \ 2364f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMatrix3x3.cpp \ 2374f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMatrix4x4.cpp \ 2384f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMesh.cpp \ 2394f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsMutex.cpp \ 2404f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsPath.cpp \ 2414f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgram.cpp \ 2424f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramFragment.cpp \ 2434f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramStore.cpp \ 2444f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramRaster.cpp \ 2454f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsProgramVertex.cpp \ 2464f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsSampler.cpp \ 2474f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScript.cpp \ 2484f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptC.cpp \ 2494f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptC_Lib.cpp \ 2504f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptC_LibGL.cpp \ 2514f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptGroup.cpp \ 2524f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsScriptIntrinsic.cpp \ 2534f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsSignal.cpp \ 2544f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsStream.cpp \ 2554f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsThreadIO.cpp \ 2564f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber rsType.cpp 2574f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2584f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_STATIC_LIBRARIES := libcutils libutils liblog 2594f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2604f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas HuberLOCAL_LDLIBS := -lpthread 2614f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 2624f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huberinclude $(BUILD_HOST_STATIC_LIBRARY) 2634f1efc098cb5791c3e9f483f2af84aef70d2d0a0Andreas Huber 264LLVM_ROOT_PATH := external/llvm 265 266#============================================================================= 267# android librsloader for libbcc (Device) 268#----------------------------------------------------------------------------- 269 270rsloader_SRC_FILES := \ 271 cpu_ref/linkloader/android/librsloader.cpp \ 272 cpu_ref/linkloader/lib/ELFHeader.cpp \ 273 cpu_ref/linkloader/lib/ELFSymbol.cpp \ 274 cpu_ref/linkloader/lib/ELFSectionHeader.cpp \ 275 cpu_ref/linkloader/lib/ELFTypes.cpp \ 276 cpu_ref/linkloader/lib/GOT.cpp \ 277 cpu_ref/linkloader/lib/MemChunk.cpp \ 278 cpu_ref/linkloader/lib/StubLayout.cpp \ 279 cpu_ref/linkloader/utils/helper.cpp \ 280 cpu_ref/linkloader/utils/raw_ostream.cpp \ 281 cpu_ref/linkloader/utils/rsl_assert.cpp 282 283include $(CLEAR_VARS) 284 285 286LOCAL_MODULE := librsloader 287 288LOCAL_MODULE_TAGS := optional 289 290LOCAL_SRC_FILES := $(rsloader_SRC_FILES) 291 292LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 293 294LOCAL_CFLAGS += $(rs_base_CFLAGS) 295 296LOCAL_C_INCLUDES := \ 297 $(LOCAL_PATH)/cpu_ref/linkloader \ 298 $(LOCAL_PATH)/cpu_ref/linkloader/include \ 299 $(LOCAL_C_INCLUDES) 300 301include $(LLVM_ROOT_PATH)/llvm-device-build.mk 302include $(BUILD_STATIC_LIBRARY) 303 304#============================================================================= 305# android librsloader for libbcc (Host) 306#----------------------------------------------------------------------------- 307 308include $(CLEAR_VARS) 309 310LOCAL_MODULE := librsloader 311 312LOCAL_MODULE_TAGS := optional 313 314LOCAL_SRC_FILES := $(rsloader_SRC_FILES) 315 316ifdef USE_MINGW 317LOCAL_SRC_FILES += cpu_ref/linkloader/lib/mmanWindows.cpp 318endif 319 320LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk 321 322LOCAL_CFLAGS += $(rs_base_CFLAGS) 323LOCAL_CFLAGS += -D__HOST__ 324 325LOCAL_C_INCLUDES := \ 326 $(LOCAL_PATH)/cpu_ref/linkloader \ 327 $(LOCAL_PATH)/cpu_ref/linkloader/include \ 328 $(LOCAL_C_INCLUDES) 329 330include $(LLVM_ROOT_PATH)/llvm-host-build.mk 331include $(BUILD_HOST_STATIC_LIBRARY) 332 333include $(call all-makefiles-under,$(LOCAL_PATH)) 334 335