diff options
author | Asim Shankar <ashankar@google.com> | 2016-11-28 17:28:20 -0800 |
---|---|---|
committer | TensorFlower Gardener <gardener@tensorflow.org> | 2016-11-28 17:45:37 -0800 |
commit | 00ae29436a604ae62cbe4eb823cb5785431c842e (patch) | |
tree | 9e135a6048e3b97c29add59a819ff4844b29347a /tensorflow/java/BUILD | |
parent | 06ad00d64a84161ff84cca77847579b16ebd97a0 (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/BUILD | 61 |
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__"], +) |