diff --git a/mace/core/BUILD b/mace/core/BUILD index 77a3e0dd8ae3c9a21aa0ebc973867cba07910cfd..4b6bb68275188ef9c4b5f269ffe3982481c7162c 100644 --- a/mace/core/BUILD +++ b/mace/core/BUILD @@ -48,22 +48,16 @@ cc_library( ["*.cc",], exclude=[ "logging.cc", - "opencl_allocator.cc", - ]) + if_android([ - "opencl_allocator.cc", ]), hdrs = glob( ["*.h"], exclude=[ "logging.h", - "opencl_allocator.h", - ]) + if_android([ - "opencl_allocator.h", ]), - copts = ["-std=c++11"] + if_android([ - "-D__USE_OPENCL", + copts = ["-std=c++11", "-D_GLIBCXX_USE_C99_MATH_TR1"] + if_android([ + "-D__USE_OPENCL", ]), - linkopts = if_android([ + linkopts = ["-ldl"] + if_android([ "-pie", ]), deps = [ @@ -71,9 +65,8 @@ cc_library( "//mace/proto:cc_proto", "//mace/proto:stats_proto", "//mace/utils", - ] + if_android([ ":opencl_runtime", - ]), + ], ) # Main program for tests @@ -86,7 +79,10 @@ cc_library( hdrs = glob([ "testing/*.h", ]), - copts = ["-std=c++11"], + copts = [ + "-std=c++11", + "-D_GLIBCXX_USE_C99_MATH_TR1", + ], linkopts = ["-lm"], deps = [ ":core", diff --git a/mace/core/net.cc b/mace/core/net.cc index e255614fba3caeb9b744103d74b4b53ebec9cccf..5af73bf5c3fbac55883d5bf85634c237e2d3324f 100644 --- a/mace/core/net.cc +++ b/mace/core/net.cc @@ -53,6 +53,9 @@ bool SimpleNet::Run(RunMetadata *run_metadata) { if (run_metadata) { if (device_type_ == DeviceType::OPENCL) { +#ifndef __USE_OPENCL + LOG(FATAL) << "OpenCL is not supported"; +#endif OpenCLRuntime::Get()->command_queue().finish(); op_stats = run_metadata->add_op_stats(); op_stats->set_operator_name(op->debug_def().name()); diff --git a/mace/kernels/BUILD b/mace/kernels/BUILD index 87f81f7f1f31d51975db77265dbc0a99e67fecdf..b4b383ae29243c186cfd3315c2d82c3013aade9b 100644 --- a/mace/kernels/BUILD +++ b/mace/kernels/BUILD @@ -11,19 +11,16 @@ load("//mace:mace.bzl", "if_android", "if_android_arm64") cc_library( name = "kernels", - srcs = glob(["*.cc"]) + if_android(glob([ - "opencl/*.cc", - ])) + if_android_arm64(glob([ + srcs = glob(["*.cc", "opencl/*.cc"]) + if_android_arm64(glob([ "neon/*.cc", ])), - hdrs = glob(["*.h"]) + if_android(glob([ - "opencl/*.h", - ])) + if_android_arm64(glob([ + hdrs = glob(["*.h", "opencl/*.h"]) + if_android_arm64(glob([ "neon/*.h", ])), copts = [ "-std=c++11", "-fopenmp", + "-D_GLIBCXX_USE_C99_MATH_TR1", ], linkopts = if_android(["-lm"]), deps = [ diff --git a/mace/ops/BUILD b/mace/ops/BUILD index 683d87abfbb5c013a758147298643eeadd0cf4b5..89f6b8b78bb1f31a912817140756d562275a61ce 100644 --- a/mace/ops/BUILD +++ b/mace/ops/BUILD @@ -36,7 +36,7 @@ cc_library( ), copts = [ "-std=c++11", - "-fopenmp", + "-D_GLIBCXX_USE_C99_MATH_TR1", ], deps = [ "//mace/kernels", @@ -52,7 +52,7 @@ cc_test( ["*_test.cc"], ), copts = ["-std=c++11"], - linkopts = ["-fopenmp"] + if_android(["-ldl"]), + linkopts = ["-fopenmp"], linkstatic = 1, deps = [ ":ops", @@ -65,7 +65,11 @@ cc_test( name = "ops_benchmark", testonly = 1, srcs = glob(["*_benchmark.cc"]), - copts = ["-std=c++11"], + copts = [ + "-std=c++11", + "-fopenmp", + "-D_GLIBCXX_USE_C99_MATH_TR1", + ], linkopts = ["-fopenmp"] + if_android(["-ldl"]), linkstatic = 1, deps = [