blob: d3fa21e1f21281db60865a2eed9c2884adfde105 [file] [log] [blame]
package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
// TODO: In later CLs, this build file will be replaced by a stand alone build that's not part of Android.
cc_binary {
name: "renderscripttoolkittest",
srcs: [
"TestTaskProcessor.cpp"
],
shared_libs: [
"libbase",
"librenderscripttoolkit",
],
}
cc_library_shared {
name: "librenderscripttoolkit",
defaults: [],
vendor_available: false,
native_bridge_supported: false,
vndk: {
enabled: false,
support_system_process: false,
},
srcs: [
"Blend.cpp",
"Blur.cpp",
"ColorMatrix.cpp",
"Convolve3x3.cpp",
"Convolve5x5.cpp",
"Histogram.cpp",
"Lut.cpp",
"Lut3d.cpp",
"RenderScriptToolkit.cpp",
"Resize.cpp",
"TaskProcessor.cpp",
"Utils.cpp",
"YuvToRgb.cpp",
],
static_libs: [ "cpufeatures" ],
arch: {
arm64: {
cflags: [
"-DARCH_ARM_USE_INTRINSICS",
"-DARCH_ARM64_USE_INTRINSICS",
"-DARCH_ARM64_HAVE_NEON",
],
srcs: [
"Blend_advsimd.S",
"Blur_advsimd.S",
"ColorMatrix_advsimd.S",
"Convolve_advsimd.S",
"Lut3d_advsimd.S",
"Resize_advsimd.S",
"YuvToRgb_advsimd.S",
],
},
arm: {
cflags: [
"-DARCH_ARM_HAVE_VFP",
"-DARCH_ARM_USE_INTRINSICS",
],
srcs: [
"Blend_neon.S",
"Blur_neon.S",
"ColorMatrix_neon.S",
"Convolve_neon.S",
"Lut3d_neon.S",
"Resize_neon.S",
"YuvToRgb_neon.S",
],
asflags: ["-mfpu=neon"],
neon: {
cflags: [
"-DARCH_ARM_HAVE_NEON",
],
},
},
x86: {
cflags: ["-DARCH_X86_HAVE_SSSE3"],
srcs: ["x86.cpp"],
},
x86_64: {
cflags: ["-DARCH_X86_HAVE_SSSE3"],
srcs: ["x86.cpp"],
avx2: {
cflags: ["-DARCH_X86_HAVE_AVX2", "-mavx2", "-mfma"],
},
},
},
shared_libs: [
"libbase",
"liblog",
"libnativehelper",
"libjnigraphics",
],
header_libs: [
// TODO Once we compile in the .cpp files, check if any of these libraries are needed.
//"libutils_headers",
//"libhardware_headers",
],
include_dirs: [
],
cflags: [
"-Wthread-safety",
"-Werror",
"-Wall",
"-Wextra",
"-Wno-unused-parameter",
"-Wno-unused-variable",
],
// TODO: Is this needed?
product_variables: {
pdk: {
// Not building RenderScript modules in PDK builds, as libmediandk
// is not available in PDK.
enabled: false,
},
},
}