Android.mk revision 099deb8fb1715e62bcb24513f8e9305ab4f7743a
1
2LOCAL_PATH:=frameworks/rs
3rs_base_CFLAGS := -Werror -Wall -Wno-unused-parameter -Wno-unused-variable \
4		  -Wno-overloaded-virtual -DRS_COMPATIBILITY_LIB
5
6ifeq ($(ARCH_ARM_HAVE_NEON),true)
7rs_base_CFLAGS += -DARCH_ARM_HAVE_NEON
8endif
9
10ifeq ($(TARGET_BUILD_PDK), true)
11  rs_base_CFLAGS += -D__RS_PDK__
12endif
13
14# Build rsg-generator ====================
15include $(CLEAR_VARS)
16
17LOCAL_MODULE := rsg-generator_support
18
19# These symbols are normally defined by BUILD_XXX, but we need to define them
20# here so that local-intermediates-dir works.
21
22LOCAL_IS_HOST_MODULE := true
23LOCAL_MODULE_CLASS := EXECUTABLES
24intermediates := $(local-intermediates-dir)
25LOCAL_MODULE_TAGS := optional
26
27LOCAL_SRC_FILES:= \
28    spec.l \
29    rsg_generator.c
30
31include $(BUILD_HOST_EXECUTABLE)
32
33# TODO: This should go into build/core/config.mk
34RSG_GENERATOR_SUPPORT:=$(LOCAL_BUILT_MODULE)
35
36include $(CLEAR_VARS)
37LOCAL_CLANG := true
38LOCAL_MODULE := libRSSupport
39LOCAL_SDK_VERSION := $(rs_base_SDK_VERSION)
40
41LOCAL_MODULE_CLASS := SHARED_LIBRARIES
42intermediates:= $(local-intermediates-dir)
43
44# Generate custom headers
45
46GEN := $(addprefix $(intermediates)/, \
47            rsgApiStructs.h \
48            rsgApiFuncDecl.h \
49        )
50
51$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
52$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR_SUPPORT) $< $@ <$(PRIVATE_PATH)/rs.spec
53$(GEN) : $(RSG_GENERATOR_SUPPORT) $(LOCAL_PATH)/rs.spec
54$(GEN): $(intermediates)/%.h : $(LOCAL_PATH)/%.h.rsg
55	$(transform-generated-source)
56
57# used in jni/Android.mk
58rs_generated_source += $(GEN)
59LOCAL_GENERATED_SOURCES += $(GEN)
60
61# Generate custom source files
62
63GEN := $(addprefix $(intermediates)/, \
64            rsgApi.cpp \
65            rsgApiReplay.cpp \
66        )
67
68$(GEN) : PRIVATE_PATH := $(LOCAL_PATH)
69$(GEN) : PRIVATE_CUSTOM_TOOL = $(RSG_GENERATOR_SUPPORT) $< $@ <$(PRIVATE_PATH)/rs.spec
70$(GEN) : $(RSG_GENERATOR_SUPPORT) $(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)
76
77LOCAL_GENERATED_SOURCES += $(GEN)
78
79LOCAL_SRC_FILES:= \
80	rsAdapter.cpp \
81	rsAllocation.cpp \
82	rsComponent.cpp \
83	rsContext.cpp \
84	rsDevice.cpp \
85	rsElement.cpp \
86	rsFifoSocket.cpp \
87	rsObjectBase.cpp \
88	rsMatrix2x2.cpp \
89	rsMatrix3x3.cpp \
90	rsMatrix4x4.cpp \
91	rsMutex.cpp \
92	rsSampler.cpp \
93	rsScript.cpp \
94	rsScriptC.cpp \
95	rsScriptC_Lib.cpp \
96	rsScriptGroup.cpp \
97	rsScriptIntrinsic.cpp \
98	rsSignal.cpp \
99	rsStream.cpp \
100	rsThreadIO.cpp \
101	rsType.cpp \
102	driver/rsdAllocation.cpp \
103	driver/rsdBcc.cpp \
104	driver/rsdCore.cpp \
105	driver/rsdRuntimeStubs.cpp \
106	driver/rsdSampler.cpp \
107	driver/rsdScriptGroup.cpp \
108	cpu_ref/rsCpuCore.cpp \
109	cpu_ref/rsCpuScript.cpp \
110	cpu_ref/rsCpuRuntimeMath.cpp \
111	cpu_ref/rsCpuRuntimeStubs.cpp \
112	cpu_ref/rsCpuScriptGroup.cpp \
113	cpu_ref/rsCpuIntrinsic.cpp \
114	cpu_ref/rsCpuIntrinsic3DLUT.cpp \
115	cpu_ref/rsCpuIntrinsicBlend.cpp \
116	cpu_ref/rsCpuIntrinsicBlur.cpp \
117	cpu_ref/rsCpuIntrinsicColorMatrix.cpp \
118	cpu_ref/rsCpuIntrinsicConvolve3x3.cpp \
119	cpu_ref/rsCpuIntrinsicConvolve5x5.cpp \
120	cpu_ref/rsCpuIntrinsicLUT.cpp \
121	cpu_ref/rsCpuIntrinsicYuvToRGB.cpp \
122	cpu_ref/rsCpuRuntimeMathFuncs.cpp
123
124ifeq ($(ARCH_ARM_HAVE_NEON),true)
125LOCAL_SRC_FILES += \
126	cpu_ref/rsCpuIntrinsics_neon.S
127endif
128
129LOCAL_SHARED_LIBRARIES += libcutils libutils liblog libdl
130
131LOCAL_C_INCLUDES += system/core/include
132LOCAL_C_INCLUDES += frameworks/native/include
133LOCAL_C_INCLUDES += external/clang/lib/Headers
134LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
135
136LOCAL_CFLAGS += $(rs_base_CFLAGS)
137
138LOCAL_LDLIBS := -lpthread -ldl -lm
139LOCAL_MODULE:= libRSSupport
140LOCAL_SDK_VERSION := $(rs_base_SDK_VERSION)
141LOCAL_MODULE_TAGS := optional
142
143include $(BUILD_SHARED_LIBRARY)
144