diff --git a/WORKSPACE b/WORKSPACE index 4bb0f0e25df8c0226a8699a18c36497dcd762bb2..e62557bddf0cfa8a45ecd6fff10469524f4152ab 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -123,9 +123,3 @@ android_ndk_repository( # Android 5.0 api_level = 21, ) - -new_local_repository( - name = "libmace", - path = "./dynamic_lib/", - build_file = "./dynamic_lib/libmace.BUILD" -) diff --git a/dynamic_lib/arm64-v8a/libgnustl_shared.so b/dynamic_lib/arm64-v8a/libgnustl_shared.so deleted file mode 100755 index 4d772d72f3a8acd63fe4521c8c6e1a21250c7920..0000000000000000000000000000000000000000 Binary files a/dynamic_lib/arm64-v8a/libgnustl_shared.so and /dev/null differ diff --git a/dynamic_lib/armeabi-v7a/libgnustl_shared.so b/dynamic_lib/armeabi-v7a/libgnustl_shared.so deleted file mode 100755 index a6b58f1df6f7a68e982d31d9939775100c1b4e61..0000000000000000000000000000000000000000 Binary files a/dynamic_lib/armeabi-v7a/libgnustl_shared.so and /dev/null differ diff --git a/dynamic_lib/libmace.BUILD b/dynamic_lib/libmace.BUILD deleted file mode 100644 index 7cc4d96dcae202112b90ee1e9543616374c62de3..0000000000000000000000000000000000000000 --- a/dynamic_lib/libmace.BUILD +++ /dev/null @@ -1,5 +0,0 @@ -cc_library( - name = "libmace", - srcs = ["libmace.so"], - visibility = ["//visibility:public"], -) diff --git a/mace/BUILD b/mace/BUILD index 59f97c0993fcf20f3503060a9edd736715db7833..a216f9f15e84ae3707fbaf13e1578dc510038bcb 100644 --- a/mace/BUILD +++ b/mace/BUILD @@ -74,3 +74,9 @@ cc_binary( ":mace_version_script.lds", ], ) + +cc_library( + name = "libmace", + srcs = ["libmace.so"], + visibility = ["//visibility:public"], +) diff --git a/mace/benchmark/BUILD b/mace/benchmark/BUILD index a4e04d19f3891da32ad934c214117f961df140a6..b601a5d355ea6f9982e6935367f0a22377f50348 100644 --- a/mace/benchmark/BUILD +++ b/mace/benchmark/BUILD @@ -20,7 +20,7 @@ cc_library( ) cc_binary( - name = "benchmark_model", + name = "benchmark_model_static", srcs = [ "benchmark_model.cc", ], @@ -40,7 +40,7 @@ cc_binary( ) cc_binary( - name = "benchmark_model_deps_so", + name = "benchmark_model_shared", srcs = [ "benchmark_model.cc", ], @@ -55,7 +55,7 @@ cc_binary( ":statistics", "//external:gflags_nothreads", "//mace/codegen:generated_mace_engine_factory", - "@libmace//:libmace", + "//mace:libmace", ], ) diff --git a/mace/tools/validation/BUILD b/mace/tools/validation/BUILD index af4483899b2920409a6c3f13dd4c2efe5609e0e8..3e341220ddf49e3e611c326954bca78f017efa76 100644 --- a/mace/tools/validation/BUILD +++ b/mace/tools/validation/BUILD @@ -34,6 +34,6 @@ cc_binary( "//external:gflags_nothreads", "//mace/codegen:generated_mace_engine_factory", "//mace/utils:utils", - "@libmace//:libmace", + "//mace:libmace", ], ) diff --git a/tools/sh_commands.py b/tools/sh_commands.py index 1f9158bd3cec8685356d609fa1d5ba27a8f81c17..242c64bd21f2fc866c377254c01167e684f83d02 100644 --- a/tools/sh_commands.py +++ b/tools/sh_commands.py @@ -596,23 +596,21 @@ def update_libmace_shared_library(serial_num, project_name, build_output_dir, library_output_dir): - libmace_name = "libmace.so" - mace_library_dir = "./dynamic_lib/" library_dir = "%s/%s/%s/%s" % ( build_output_dir, project_name, library_output_dir, abi) - libmace_file = "%s/%s" % (library_dir, libmace_name) - if os.path.exists(libmace_file): + if os.path.exists(library_dir): sh.rm("-rf", library_dir) sh.mkdir("-p", library_dir) sh.cp("-f", "bazel-bin/mace/libmace.so", library_dir) - sh.cp("-f", "%s/%s/libgnustl_shared.so" % (mace_library_dir, abi), + sh.cp("-f", + "%s/sources/cxx-stl/gnu-libstdc++/4.9/libs/%s/libgnustl_shared.so" % + (os.environ["ANDROID_NDK"], abi), library_dir) - libmace_load_path = "%s/%s" % (mace_library_dir, libmace_name) - if os.path.exists(libmace_load_path): - sh.rm("-f", libmace_load_path) - sh.cp("-f", "bazel-bin/mace/libmace.so", mace_library_dir) + if os.path.exists("mace/libmace.so"): + sh.rm("-f", "mace/libmace.so") + sh.cp("-f", "bazel-bin/mace/libmace.so", "mace/") def tuning_run(abi, @@ -1049,23 +1047,23 @@ def build_benchmark_model(abi, model_output_dir, hexagon_mode, linkshared=False): - benchmark_binary_file = "%s/benchmark_model" % model_output_dir - if os.path.exists(benchmark_binary_file): - sh.rm("-rf", benchmark_binary_file) - if linkshared == 0: - benchmark_target = "//mace/benchmark:benchmark_model" + target_name = "benchmark_model_static" else: - benchmark_target = "//mace/benchmark:benchmark_model_deps_so" + target_name = "benchmark_model_shared" + benchmark_target = "//mace/benchmark:benchmark_model_shared" + benchmark_target = "//mace/benchmark:%s" % target_name + bazel_build(benchmark_target, abi=abi, hexagon_mode=hexagon_mode) + benchmark_binary_file = "%s/%s" % (model_output_dir, target_name) + if os.path.exists(benchmark_binary_file): + sh.rm("-rf", benchmark_binary_file) + target_bin = "/".join(bazel_target_to_bin(benchmark_target)) - if linkshared == 0: - sh.cp("-f", target_bin, model_output_dir) - else: - sh.cp("-f", target_bin, "%s/benchmark_model" % model_output_dir) + sh.cp("-f", target_bin, model_output_dir) def benchmark_model(abi, @@ -1093,6 +1091,11 @@ def benchmark_model(abi, linkshared=0): print("* Benchmark for %s" % model_tag) + if linkshared == 0: + benchmark_model_target = "benchmark_model_static" + else: + benchmark_model_target = "benchmark_model_shared" + mace_model_path = "" if build_type == BuildType.proto: mace_model_path = "%s/%s.pb" % (mace_model_dir, model_tag) @@ -1101,7 +1104,7 @@ def benchmark_model(abi, [ "env", "MACE_CPP_MIN_VLOG_LEVEL=%s" % vlog_level, - "%s/benchmark_model" % benchmark_binary_dir, + "%s/%s" % (benchmark_binary_dir, benchmark_model_target), "--model_name=%s" % model_tag, "--input_node=%s" % ",".join(input_nodes), "--output_node=%s" % ",".join(output_nodes), @@ -1146,7 +1149,8 @@ def benchmark_model(abi, adb_push("%s/libgnustl_shared.so" % shared_library_dir, phone_data_dir, serialno) - adb_push("%s/benchmark_model" % benchmark_binary_dir, phone_data_dir, + adb_push("%s/%s" % (benchmark_binary_dir, benchmark_model_target), + phone_data_dir, serialno) sh.adb( @@ -1159,7 +1163,7 @@ def benchmark_model(abi, phone_data_dir, "MACE_INTERNAL_STORAGE_PATH=%s" % internal_storage_dir, "MACE_OPENCL_PROFILING=1", - "%s/benchmark_model" % phone_data_dir, + "%s/%s" % (phone_data_dir, benchmark_model_target), "--model_name=%s" % model_tag, "--input_node=%s" % ",".join(input_nodes), "--output_node=%s" % ",".join(output_nodes),