blob: 44df7cbfee8e88239ef2a88495989db3a3bebe32 [file] [log] [blame]
Jason Sams709a0972012-11-15 18:18:04 -08001
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
Tim Murraye195a3f2014-03-13 15:04:58 -070016LOCAL_MODULE_TARGET_ARCH := arm mips x86 x86_64 arm64
Jason Sams709a0972012-11-15 18:18:04 -080017
18LOCAL_SRC_FILES:= \
19 rsCpuCore.cpp \
20 rsCpuScript.cpp \
21 rsCpuRuntimeMath.cpp \
22 rsCpuRuntimeStubs.cpp \
23 rsCpuScriptGroup.cpp \
24 rsCpuIntrinsic.cpp \
Jason Sams7c4b8882013-01-04 10:50:05 -080025 rsCpuIntrinsic3DLUT.cpp \
Jason Sams709a0972012-11-15 18:18:04 -080026 rsCpuIntrinsicBlend.cpp \
27 rsCpuIntrinsicBlur.cpp \
28 rsCpuIntrinsicColorMatrix.cpp \
29 rsCpuIntrinsicConvolve3x3.cpp \
30 rsCpuIntrinsicConvolve5x5.cpp \
Jason Sams2282e282013-06-17 16:52:01 -070031 rsCpuIntrinsicHistogram.cpp \
Matthieu Delahaye60498fe2014-02-18 13:21:06 -060032 rsCpuIntrinsicInterPred.cpp \
Matthieu Delahaye6fc3e122014-03-04 11:05:49 -060033 rsCpuIntrinsicLoopFilter.cpp \
Matthieu Delahaye60498fe2014-02-18 13:21:06 -060034 rsCpuIntrinsicYuvToRGB.cpp \
Jason Sams39ab94a2014-04-16 17:14:05 -070035 rsCpuIntrinsicResize.cpp \
36 rsCpuIntrinsicLUT.cpp \
Matthieu Delahaye60498fe2014-02-18 13:21:06 -060037 convolve/convolve.c
Jason Sams709a0972012-11-15 18:18:04 -080038
Ian Rogers3cdd1fb2014-03-19 15:41:32 -070039LOCAL_CFLAGS_arm64 += -DARCH_ARM_HAVE_NEON
40LOCAL_CFLAGS_64 += -DFAKE_ARM64_BUILD
Simon Hosie7e4f65d2014-03-16 12:39:22 -070041LOCAL_ASFLAGS_arm64 += -no-integrated-as
Ian Rogers3cdd1fb2014-03-19 15:41:32 -070042
Tim Murraye195a3f2014-03-13 15:04:58 -070043#LOCAL_SRC_FILES_arm64 += \
Simon Hosie5dcaaa52014-03-15 21:23:51 -070044# rsCpuIntrinsics_advsimd_3DLUT.S \
Tim Murraye195a3f2014-03-13 15:04:58 -070045# rsCpuIntrinsics_advsimd_Blend.S \
46# rsCpuIntrinsics_advsimd_Blur.S \
Simon Hosie4e5c4142014-03-15 21:45:49 -070047# rsCpuIntrinsics_advsimd_Convolve.S \
Simon Hosie0462a392014-03-07 19:36:44 -080048# rsCpuIntrinsics_advsimd_ColorMatrix.S \
Tim Murraye195a3f2014-03-13 15:04:58 -070049# rsCpuIntrinsics_advsimd_YuvToRGB.S
Jason Sams06b0f7d2013-03-22 13:43:01 -070050
Ying Wang02170e62014-03-04 15:33:24 -080051ifeq ($(ARCH_ARM_HAVE_NEON),true)
52 LOCAL_CFLAGS_arm += -DARCH_ARM_HAVE_NEON
53endif
54
55ifeq ($(ARCH_ARM_HAVE_VFP),true)
56 LOCAL_CFLAGS_arm += -DARCH_ARM_HAVE_VFP
57 LOCAL_SRC_FILES_arm += \
Simon Hosie5dcaaa52014-03-15 21:23:51 -070058 rsCpuIntrinsics_neon_3DLUT.S \
Ying Wang02170e62014-03-04 15:33:24 -080059 rsCpuIntrinsics_neon_Blend.S \
60 rsCpuIntrinsics_neon_Blur.S \
Simon Hosie4e5c4142014-03-15 21:45:49 -070061 rsCpuIntrinsics_neon_Convolve.S \
Simon Hosie5dcaaa52014-03-15 21:23:51 -070062 rsCpuIntrinsics_neon_ColorMatrix.S \
Jason Sams83f304c2014-03-05 16:38:24 -080063 rsCpuIntrinsics_neon_YuvToRGB.S \
Matthieu Delahaye60498fe2014-02-18 13:21:06 -060064 convolve/convolve_copy_neon.s \
65 convolve/convolve_avg_neon.s \
66 convolve/convolve8_neon.s \
67 convolve/convolve8_avg_neon.s \
Matthieu Delahaye6fc3e122014-03-04 11:05:49 -060068 convolve/convolve_neon.c\
69 vp9_loopfilter_16_neon.S \
70 vp9_loopfilter_neon.S \
71 vp9_mb_lpf_neon.S
Ying Wang02170e62014-03-04 15:33:24 -080072 LOCAL_ASFLAGS_arm := -mfpu=neon
Jason Sams709a0972012-11-15 18:18:04 -080073endif
74
Ying Wangb2411812013-04-09 21:56:34 -070075LOCAL_SHARED_LIBRARIES += libRS libcutils libutils liblog libsync
Tim Murraye195a3f2014-03-13 15:04:58 -070076
77# these are not supported in 64-bit yet
78LOCAL_SHARED_LIBRARIES_32 += libbcc libbcinfo
79
Jason Sams709a0972012-11-15 18:18:04 -080080
81LOCAL_C_INCLUDES += frameworks/compile/libbcc/include
82LOCAL_C_INCLUDES += frameworks/rs
Matthieu Delahaye6fc3e122014-03-04 11:05:49 -060083LOCAL_C_INCLUDES += system/core/include
Jason Sams709a0972012-11-15 18:18:04 -080084
85LOCAL_CFLAGS += $(rs_base_CFLAGS)
86
87LOCAL_LDLIBS := -lpthread -ldl
88LOCAL_MODULE_TAGS := optional
89
90include $(BUILD_SHARED_LIBRARY)