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
9ifneq ($(OVERRIDE_RS_DRIVER),)
10  rs_base_CFLAGS += -DOVERRIDE_RS_DRIVER=$(OVERRIDE_RS_DRIVER)
11endif
12
13include $(CLEAR_VARS)
14LOCAL_CLANG := true
15LOCAL_MODULE := libRSCpuRef
16
17LOCAL_SRC_FILES:= \
18	rsCpuCore.cpp \
19	rsCpuScript.cpp \
20	rsCpuRuntimeMath.cpp \
21	rsCpuRuntimeStubs.cpp \
22	rsCpuScriptGroup.cpp \
23	rsCpuIntrinsic.cpp \
24	rsCpuIntrinsic3DLUT.cpp \
25	rsCpuIntrinsicBlend.cpp \
26	rsCpuIntrinsicBlur.cpp \
27	rsCpuIntrinsicColorMatrix.cpp \
28	rsCpuIntrinsicConvolve3x3.cpp \
29	rsCpuIntrinsicConvolve5x5.cpp \
30	rsCpuIntrinsicHistogram.cpp \
31	rsCpuIntrinsicLUT.cpp \
32	rsCpuIntrinsicYuvToRGB.cpp
33
34ifeq ($(ARCH_ARM_HAVE_NEON),true)
35    LOCAL_CFLAGS += -DARCH_ARM_HAVE_NEON
36endif
37
38ifeq ($(ARCH_ARM_HAVE_VFP),true)
39    LOCAL_CFLAGS += -DARCH_ARM_HAVE_VFP
40    LOCAL_SRC_FILES+= \
41        rsCpuIntrinsics_neon.S \
42        rsCpuIntrinsics_neon_ColorMatrix.S
43    LOCAL_ASFLAGS := -mfpu=neon
44endif
45
46ifeq ($(ARCH_X86_HAVE_SSE2), true)
47    LOCAL_CFLAGS += -DARCH_X86_HAVE_SSE2
48endif
49
50LOCAL_SHARED_LIBRARIES += libRS libcutils libutils liblog libsync
51LOCAL_SHARED_LIBRARIES += libbcc libbcinfo
52
53LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
54LOCAL_C_INCLUDES += frameworks/rs
55
56LOCAL_CFLAGS += $(rs_base_CFLAGS)
57
58LOCAL_LDLIBS := -lpthread -ldl
59LOCAL_MODULE_TAGS := optional
60
61include $(BUILD_SHARED_LIBRARY)
62