From 598d7f74a9782fea0750da9fd7307942159a7433 Mon Sep 17 00:00:00 2001 From: Wang Zhonglei Date: Wed, 9 May 2018 18:26:08 +0800 Subject: [PATCH] Enable bazel build. --- android/tflite/WORKSPACE | 15 +++++++++++++ android/tflite/app/src/main/BUILD | 25 ++++++--------------- android/tflite/app/src/main/jcenter.xml | 21 +++++++++++++++++ android/tfmobile/BUILD | 30 +++++++++++++++++++++++++ android/tfmobile/WORKSPACE | 14 ++++++++++++ android/tfmobile/assets/BUILD | 12 ++++++++++ 6 files changed, 99 insertions(+), 18 deletions(-) create mode 100644 android/tflite/WORKSPACE create mode 100644 android/tflite/app/src/main/jcenter.xml create mode 100644 android/tfmobile/BUILD create mode 100644 android/tfmobile/WORKSPACE create mode 100644 android/tfmobile/assets/BUILD diff --git a/android/tflite/WORKSPACE b/android/tflite/WORKSPACE new file mode 100644 index 000000000..7061cda4c --- /dev/null +++ b/android/tflite/WORKSPACE @@ -0,0 +1,15 @@ +# Android sdk and ndk +android_sdk_repository(name="androidsdk") +android_ndk_repository(name="androidndk") + +# for maven_aar +load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_aar") + +# https://jcenter.bintray.com/org/tensorflow/tensorflow-lite/0.1.7/tensorflow-lite-0.1.7.pom +maven_aar( + name = "tensorflow_lite", + artifact = "org.tensorflow:tensorflow-lite:0.1.7", + settings = "//app/src/main:jcenter.xml", +) + + diff --git a/android/tflite/app/src/main/BUILD b/android/tflite/app/src/main/BUILD index 654fa9d6d..b701b6d8c 100644 --- a/android/tflite/app/src/main/BUILD +++ b/android/tflite/app/src/main/BUILD @@ -1,19 +1,19 @@ -package(default_visibility = ["//visibility:private"]) +package(default_visibility = ["//visibility:public"]) licenses(["notice"]) # Apache 2.0 android_binary( - name = "TfLiteCameraDemo", + name = "tflite", srcs = glob(["java/**/*.java"]), assets = [ - "@tflite_mobilenet//:labels.txt", - "@tflite_mobilenet//:mobilenet_quant_v1_224.tflite", + "//app/src/main/assets:graph.lite", + "//app/src/main/assets:labels.txt", ], assets_dir = "", custom_package = "com.example.android.tflitecamerademo", manifest = "AndroidManifest.xml", nocompress_extensions = [ - ".tflite", + ".lite", ], resource_files = glob(["res/**"]), # In some platforms we don't have an Android SDK/NDK and this target @@ -21,21 +21,10 @@ android_binary( # use the target in that case. tags = ["manual"], deps = [ - "//tensorflow/contrib/lite/java:tensorflowlite", - "//tensorflow/contrib/lite/java/src/testhelper/java/org/tensorflow/lite:testhelper", "@androidsdk//com.android.support:support-v13-25.2.0", "@androidsdk//com.android.support:support-v4-25.2.0", + "@tensorflow_lite//aar", ], ) -filegroup( - name = "all_files", - srcs = glob( - ["**/*"], - exclude = [ - "**/METADATA", - "**/OWNERS", - ], - ), - visibility = ["//tensorflow:__subpackages__"], -) +exports_files(["jcenter.xml"]) diff --git a/android/tflite/app/src/main/jcenter.xml b/android/tflite/app/src/main/jcenter.xml new file mode 100644 index 000000000..2d6a56a37 --- /dev/null +++ b/android/tflite/app/src/main/jcenter.xml @@ -0,0 +1,21 @@ + + + + + bintray + + + central + bintray + http://jcenter.bintray.com + + + + + + bintray + + diff --git a/android/tfmobile/BUILD b/android/tfmobile/BUILD new file mode 100644 index 000000000..34b9ecebc --- /dev/null +++ b/android/tfmobile/BUILD @@ -0,0 +1,30 @@ +package(default_visibility = ["//visibility:public"]) + +licenses(["notice"]) # Apache 2.0 + +android_binary( + name = "tfmobile", + srcs = glob(["src/**/*.java"]), + assets = [ + "//assets:graph.pb", + "//assets:labels.txt", + ], + assets_dir = "", + custom_package = "org.tensorflow.demo", + manifest = "AndroidManifest.xml", + nocompress_extensions = [ + ".pb", + ], + resource_files = glob(["res/**"]), + # In some platforms we don't have an Android SDK/NDK and this target + # can't be built. We need to prevent the build system from trying to + # use the target in that case. + tags = ["manual"], + deps = [ + "@androidsdk//com.android.support:support-v13-25.2.0", + "@androidsdk//com.android.support:support-v4-25.2.0", + "@tensorflow_android//aar", + ], +) + +exports_files(["jcenter.xml"]) diff --git a/android/tfmobile/WORKSPACE b/android/tfmobile/WORKSPACE new file mode 100644 index 000000000..ecad1641c --- /dev/null +++ b/android/tfmobile/WORKSPACE @@ -0,0 +1,14 @@ +# Android sdk and ndk +android_sdk_repository(name="androidsdk") +android_ndk_repository(name="androidndk") + +# for maven_aar +load("@bazel_tools//tools/build_defs/repo:maven_rules.bzl", "maven_aar") + +# https://jcenter.bintray.com/org/tensorflow/tensorflow-lite/0.1.7/tensorflow-lite-0.1.7.pom +maven_aar( + name = "tensorflow_android", + artifact = "org.tensorflow:tensorflow-android:1.8.0", +) + + diff --git a/android/tfmobile/assets/BUILD b/android/tfmobile/assets/BUILD new file mode 100644 index 000000000..de47ed61f --- /dev/null +++ b/android/tfmobile/assets/BUILD @@ -0,0 +1,12 @@ +package(default_visibility = ["//visibility:public"]) + +licenses(["notice"]) # Apache 2.0 + +exports_files( + glob( + ["**/*"], + exclude = [ + "BUILD", + ], + ), +)