target_include_directories(tensorflow-lite PUBLIC ${TFLITE_INCLUDES})
target_compile_definitions(tensorflow-lite PUBLIC "GEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK")
target_link_libraries(tensorflow-lite eigen3 ${LIB_PTHREAD} dl)
+
+if("${TARGET_OS}" STREQUAL "android")
+ #
+ # Tensorflow Lite JNI library
+ #
+ set(TFLITE_JNI_BASE ${TENSORFLOW_LITE_BASE}/java/src/main/native)
+ set(TFLITE_JNI_SRCS ${TFLITE_JNI_BASE}/duration_utils_jni.cc
+ ${TFLITE_JNI_BASE}/exception_jni.cc
+ ${TFLITE_JNI_BASE}/nativeinterpreterwrapper_jni.cc
+ ${TFLITE_JNI_BASE}/tensor_jni.cc
+ ${TFLITE_JNI_BASE}/tensorflow_lite_jni.cc
+ ${TFLITE_JNI_BASE}/builtin_ops_jni.cc
+ )
+ set(TFLITE_JNI_INCLUDES ${TENSORFLOW_LITE_BASE}/java/src/native)
+
+ # We need this for running vanilla tflite
+ # TODO remove this when nnfw is used
+ set(TFLITE_SRCS_V ${TENSORFLOW_LITE_BASE}/kernels/register.cc)
+
+ # TODO use tensorflow-lite static library instead of compiling all the sources again
+ add_library(tensorflowlite_jni SHARED ${TFLITE_JNI_SRCS} ${TFLITE_SRCS} ${TFLITE_SRCS_V})
+ target_include_directories(tensorflowlite_jni PUBLIC ${TFLITE_JNI_INCLUDES} ${TFLITE_INCLUDES})
+ target_link_libraries(tensorflowlite_jni eigen3 ${LIB_PTHREAD} dl)
+endif()