aboutsummaryrefslogtreecommitdiffhomepage
path: root/tensorflow/java/BUILD
diff options
context:
space:
mode:
authorGravatar Asim Shankar <ashankar@google.com>2016-11-28 17:28:20 -0800
committerGravatar TensorFlower Gardener <gardener@tensorflow.org>2016-11-28 17:45:37 -0800
commit00ae29436a604ae62cbe4eb823cb5785431c842e (patch)
tree9e135a6048e3b97c29add59a819ff4844b29347a /tensorflow/java/BUILD
parent06ad00d64a84161ff84cca77847579b16ebd97a0 (diff)
Java: Scaffolding for Java bindings.
Setup the build files and directory structure for TensorFlow Java bindings that use JNI and the TensorFlow C API. First step towards #5 Change: 140423173
Diffstat (limited to 'tensorflow/java/BUILD')
-rw-r--r--tensorflow/java/BUILD61
1 files changed, 61 insertions, 0 deletions
diff --git a/tensorflow/java/BUILD b/tensorflow/java/BUILD
new file mode 100644
index 0000000000..2aa077c2b7
--- /dev/null
+++ b/tensorflow/java/BUILD
@@ -0,0 +1,61 @@
+# Description:
+# TensorFlow Java API.
+
+package(default_visibility = ["//visibility:private"])
+
+licenses(["notice"]) # Apache 2.0
+
+java_library(
+ name = "tensorflow",
+ srcs = glob(["src/main/java/org/tensorflow/*.java"]),
+ data = [":libtensorflow-jni"],
+ visibility = ["//visibility:public"],
+)
+
+java_test(
+ name = "TensorFlowTest",
+ srcs = ["src/test/java/org/tensorflow/TensorFlowTest.java"],
+ test_class = "org.tensorflow.TensorFlowTest",
+ deps = [
+ ":tensorflow",
+ "//external:junit",
+ ],
+)
+
+filegroup(
+ name = "libtensorflow-jni",
+ srcs = select({
+ "//tensorflow:darwin": [":libtensorflow-jni.dylib"],
+ "//conditions:default": [":libtensorflow-jni.so"],
+ }),
+)
+
+cc_binary(
+ name = "libtensorflow-jni.so",
+ linkshared = 1,
+ linkstatic = 1,
+ deps = ["//tensorflow/java/src/main/native"],
+)
+
+# System.loadLibrary() on OS X looks for ".dylib" or ".jnilib"
+# and no ".so". If and when https://github.com/bazelbuild/bazel/issues/914
+# is resolved, perhaps this workaround rule can be removed.
+genrule(
+ name = "darwin-compat",
+ srcs = [":libtensorflow-jni.so"],
+ outs = ["libtensorflow-jni.dylib"],
+ cmd = "cp $< $@",
+ output_to_bindir = 1,
+)
+
+filegroup(
+ name = "all_files",
+ srcs = glob(
+ ["**/*"],
+ exclude = [
+ "**/METADATA",
+ "**/OWNERS",
+ ],
+ ),
+ visibility = ["//tensorflow:__subpackages__"],
+)