All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/7] Add tensorflow-lite
@ 2019-08-21 22:58 Hongmei Gou
  2019-08-21 22:58 ` [PATCH 1/7] tensorflow-lite: add version 1.12 Hongmei Gou
                   ` (6 more replies)
  0 siblings, 7 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

This patch set starts from the baseline recipe at
https://github.com/nnsuite/meta-neural-network/tree/master/recipes-tensorflow/tensorflow-lite,

The major changes are listed below:
1. Ported/created recipes for all the dependencies required for tensorflow-lite 1.12
2. Installed minimal and benchmark_model binaries which have been built with the original Makefile
3. Patched Makefile to add label_image and installed the example binary and files
   (model/image/labels.txt) needed to run the example

Hongmei Gou (7):
  tensorflow-lite: add version 1.12
  flatbuffers: add version 1.10.0 needed by tensorflow-lite
  tensorflow-lite-libeigen: add the version for commit fd6845384b86
  tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12
  tensorflow-lite: define dependencies via DEPENDS
  tensorflow-lite: install minimal and benchmark_model examples, and all
    .a files
  tensorflow-lite: add label_image example and install the files to run
    the example

 .../flatbuffers/flatbuffers_1.10.0.bb         | 34 +++++++
 ...the-path-for-the-depedencies-built-v.patch | 50 ++++++++++
 ...002-Makefile-add-label_image-example.patch | 89 ++++++++++++++++++
 ...odification-for-tflite-1.12-to-eigen.patch | 13 +++
 .../files/tensorflow-lite.pc.in               |  6 ++
 .../tensorflow-lite-absl_git.bb               | 16 ++++
 .../tensorflow-lite-farmhash_git.bb           | 14 +++
 .../tensorflow-lite-fft2d_1.0.bb              | 14 +++
 .../tensorflow-lite-gemmlowp_git.bb           | 16 ++++
 .../tensorflow-lite-libeigen_git.bb           | 20 ++++
 .../tensorflow-lite-neon-2-sse_git.bb         | 14 +++
 .../tensorflow-lite/tensorflow-lite_1.12.bb   | 93 +++++++++++++++++++
 12 files changed, 379 insertions(+)
 create mode 100644 meta-arago-extras/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/0001-Makefile-update-the-path-for-the-depedencies-built-v.patch
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/0002-Makefile-add-label_image-example.patch
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/apply-modification-for-tflite-1.12-to-eigen.patch
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/tensorflow-lite.pc.in
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-libeigen_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb

-- 
2.17.1



^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH 1/7] tensorflow-lite: add version 1.12
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  2019-08-21 22:58 ` [PATCH 2/7] flatbuffers: add version 1.10.0 needed by tensorflow-lite Hongmei Gou
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

* Source of the recipe: https://github.com/nnsuite/meta-neural-network/tree/master/recipes-tensorflow/tensorflow-lite
* Updated checksums for NEON2SSE from the baseline

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 ...odification-for-tflite-1.12-to-eigen.patch |  13 ++
 .../files/tensorflow-lite.pc.in               |   6 +
 .../tensorflow-lite/tensorflow-lite_1.12.bb   | 124 ++++++++++++++++++
 3 files changed, 143 insertions(+)
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/apply-modification-for-tflite-1.12-to-eigen.patch
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/tensorflow-lite.pc.in
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb

diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/apply-modification-for-tflite-1.12-to-eigen.patch b/meta-arago-extras/recipes-support/tensorflow-lite/files/apply-modification-for-tflite-1.12-to-eigen.patch
new file mode 100644
index 00000000..1a8de78b
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/apply-modification-for-tflite-1.12-to-eigen.patch
@@ -0,0 +1,13 @@
+diff --git a/tensorflow/contrib/lite/tools/make/downloads/eigen/Eigen/src/Core/arch/NEON/Complex.h b/tensorflow/contrib/lite/tools/make/downloads/eigen/Eigen/src/Core/arch/NEON/Complex.h
+index 306a309beb..4527a64c91 100644
+--- a/tensorflow/contrib/lite/tools/make/downloads/eigen/Eigen/src/Core/arch/NEON/Complex.h
++++ b/tensorflow/contrib/lite/tools/make/downloads/eigen/Eigen/src/Core/arch/NEON/Complex.h
+@@ -295,7 +295,7 @@ ptranspose(PacketBlock<Packet2cf,2>& kernel) {
+   static uint64x2_t p2ul_CONJ_XOR = {0x0, 0x8000000000000000};
+ #else
+   const uint64_t  p2ul_conj_XOR_DATA[] = { 0x0, 0x8000000000000000 };
+-  static uint64x2_t p2ul_CONJ_XOR = vld1q_u64( p2ul_conj_XOR_DATA );
++  static uint64x2_t p2ul_CONJ_XOR;// = vld1q_u64( p2ul_conj_XOR_DATA ); - Removed by script
+ #endif
+ 
+ struct Packet1cd
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/tensorflow-lite.pc.in b/meta-arago-extras/recipes-support/tensorflow-lite/files/tensorflow-lite.pc.in
new file mode 100644
index 00000000..44afd0ee
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/tensorflow-lite.pc.in
@@ -0,0 +1,6 @@
+ Name: tensorflow lite
+ Description: tensorflow lite static library
+ Version: @version@
+ Requires:
+ Libs: -L@libdir@ -ltensorflow-lite
+ Cflags: -I@includedir@
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
new file mode 100644
index 00000000..5f35fa26
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
@@ -0,0 +1,124 @@
+DESCRIPTION = "TensorFlow's lightweight solution for mobile and embedded devices"
+AUTHOR = "Google Inc. and Yuan Tang"
+HOMEPAGE = "https://www.tensorflow.org/lite"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=01e86893010a1b87e69a213faa753ebd"
+
+MD5SUM_EIGEN = "4c884968ede816a84c70e2cd2c81de8d"
+SHA256SUM_EIGEN = "d956415d784fa4e42b6a2a45c32556d6aec9d0a3d8ef48baee2522ab762556a9"
+MD5SUM_FARMHASH = "f039a65a7f62bdb6c4b4c8a732638d80"
+SHA256SUM_FARMHASH = "6560547c63e4af82b0f202cb710ceabb3f21347a4b996db565a411da5b17aba0"
+MD5SUM_GEMMLOWP = "a90a2161ad8ee4ccf724f56e07637601"
+SHA256SUM_GEMMLOWP = "b87faa7294dfcc5d678f22a59d2c01ca94ea1e2a3b488c38a95a67889ed0a658"
+MD5SUM_GTEST = "16877098823401d1bf2ed7891d7dce36"
+SHA256SUM_GTEST = "58a6f4277ca2bc8565222b3bbd58a177609e9c488e8a72649359ba51450db7d8"
+MD5SUM_ABSLCPP = "7c9945f256d3733a8eade255afcbd072"
+SHA256SUM_ABSLCPP = "7dd09690ae7ca4551de3111d4a86b75b23ec17445f273d3c42bdcdc1c7b02e4e"
+MD5SUM_NEON2SSE = "11fb94c08a43f88a68a9edff317d82d0"
+SHA256SUM_NEON2SSE = "70526166a054f64b254213e9dc227b5877a21b621161e9907931093cc30341dd"
+MD5SUM_FLATBUFFER = "3811552512049fac3af419130904bc55"
+SHA256SUM_FLATBUFFER = "b2bb0311ca40b12ebe36671bdda350b10c7728caf0cfe2d432ea3b6e409016f3"
+MD5SUM_FFT = "4255dd8a74949d123216b1ab91520469"
+SHA256SUM_FFT = "52bb637c70b971958ec79c9c8752b1df5ff0218a4db4510e60826e0cb79b5296"
+
+SRC_URI = "git://github.com/tensorflow/tensorflow.git;branch=r1.12;protocol=https \
+    https://bitbucket.org/eigen/eigen/get/fd6845384b86.tar.gz;md5sum=${MD5SUM_EIGEN};sha256sum=${SHA256SUM_EIGEN} \
+    https://mirror.bazel.build/github.com/google/gemmlowp/archive/38ebac7b059e84692f53e5938f97a9943c120d98.zip;md5sum=${MD5SUM_GEMMLOWP};sha256sum=${SHA256SUM_GEMMLOWP} \
+    https://github.com/google/googletest/archive/release-1.8.0.tar.gz;md5sum=${MD5SUM_GTEST};sha256sum=${SHA256SUM_GTEST} \
+    https://github.com/abseil/abseil-cpp/archive/48cd2c3f351ff188bc85684b84a91b6e6d17d896.tar.gz;md5sum=${MD5SUM_ABSLCPP};sha256sum=${SHA256SUM_ABSLCPP} \
+    https://github.com/intel/ARM_NEON_2_x86_SSE/archive/master.zip;md5sum=${MD5SUM_NEON2SSE};sha256sum=${SHA256SUM_NEON2SSE} \
+    https://mirror.bazel.build/github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz;md5sum=${MD5SUM_FARMHASH};sha256sum=${SHA256SUM_FARMHASH} \
+    https://github.com/google/flatbuffers/archive/1f5eae5d6a135ff6811724f6c57f911d1f46bb15.tar.gz;md5sum=${MD5SUM_FLATBUFFER};sha256sum=${SHA256SUM_FLATBUFFER} \
+    https://mirror.bazel.build/www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz;md5sum=${MD5SUM_FFT};sha256sum=${SHA256SUM_FFT} \
+    file://apply-modification-for-tflite-1.12-to-eigen.patch \
+    file://tensorflow-lite.pc.in"
+
+SRCREV = "${AUTOREV}"
+
+S = "${WORKDIR}/git"
+
+DEPENDS = "zlib"
+TARGET_CFLAGS_remove = "-O2"
+TARGET_CPPLAGS_remove = "-O2"
+TARGET_CXXLAGS_remove = "-O2"
+CCFLAGS_append = " -O3 -DNDEBUG -fPIC -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK \
+    -I${STAGING_INCDIR}"
+CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK \
+    -I${STAGING_INCDIR}"
+LDFLAGS_remove = "-Wl,-O1"
+CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK \
+    -I${STAGING_INCDIR}"
+LIBS = "-lstdc++ -lpthread -lm -lz -ldl"
+BUILD_DEPS_DOWNLOAD_DIR_PREFIX = "${S}/tensorflow/contrib/lite/tools/make/downloads/"
+
+do_cp_downloaded_build_deps() {
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}eigen
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}gemmlowp
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}googletest
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}absl
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}farmhash
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}neon_2_sse
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}flatbuffers
+    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}fft2d
+
+    cp -rf ${WORKDIR}/eigen-eigen-fd6845384b86/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}eigen
+    cp -rf ${WORKDIR}/gemmlowp-38ebac7b059e84692f53e5938f97a9943c120d98/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}gemmlowp
+    cp -rf ${WORKDIR}/googletest-release-1.8.0/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}googletest
+    cp -rf ${WORKDIR}/abseil-cpp-48cd2c3f351ff188bc85684b84a91b6e6d17d896/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}absl
+    cp -rf ${WORKDIR}/farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}farmhash
+    cp -rf ${WORKDIR}/ARM_NEON_2_x86_SSE-master/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}neon_2_sse
+    cp -rf ${WORKDIR}/flatbuffers-1f5eae5d6a135ff6811724f6c57f911d1f46bb15/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}flatbuffers
+    cp -rf ${WORKDIR}/fft/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}fft2d
+}
+addtask do_cp_downloaded_build_deps after do_unpack before do_patch
+
+EXTRA_OEMAKE = "\
+    'CC=${CC}' \
+    'CXX=${CXX}' \
+    'CPP=${CPP}' \
+    'CFLAGS=${CFLAGS}' \
+    'CPPFLAGS=${CFLAGS}' \
+    'CXXFLAGS=${CXXFLAGS}' \
+    'AR=${AR}' \
+    'LD=${LD}' \
+    'LDFLAGS=${LDFLAGS}' \
+    'LIBS=${LIBS}' \
+    'TARGET=${TARGET_OS}' \
+    'TARGET_ARCH=${TUNE_ARCH}'"
+
+do_configure() {
+    oe_runmake -f tensorflow/contrib/lite/tools/make/Makefile clean
+}
+
+do_compile() {
+    oe_runmake -f tensorflow/contrib/lite/tools/make/Makefile
+}
+
+do_install() {
+    install -d ${D}${libdir}
+    install -m 0644 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/lib/libtensorflow-lite.a ${D}${libdir}/
+    install -d ${D}${includedir}/tensorflow/contrib/lite
+    install -m 0644 ${S}/tensorflow/contrib/lite/*.h ${D}${includedir}/tensorflow/contrib/lite/
+    install -d ${D}${includedir}/tensorflow/contrib/lite/c
+    install -m 0644 ${S}/tensorflow/contrib/lite/c/*.h ${D}${includedir}/tensorflow/contrib/lite/c/
+    install -d ${D}${includedir}/tensorflow/contrib/lite/core/api/
+    install -m 0644 ${S}/tensorflow/contrib/lite/core/api/*.h ${D}${includedir}/tensorflow/contrib/lite/core/api/
+    install -d ${D}${includedir}/tensorflow/contrib/lite/kernels
+    install -m 0644 ${S}/tensorflow/contrib/lite/kernels/*.h ${D}${includedir}/tensorflow/contrib/lite/kernels/
+    install -d  ${D}${includedir}/tensorflow/contrib/lite/profiling/
+    install -m 0644 ${S}/tensorflow/contrib/lite/profiling/*.h ${D}${includedir}/tensorflow/contrib/lite/profiling/
+    install -d ${D}${includedir}/tensorflow/contrib/lite/schema/
+    install -m 0644 ${S}/tensorflow/contrib/lite/schema/*.h ${D}${includedir}/tensorflow/contrib/lite/schema/
+    install -d ${D}${includedir}/tensorflow/contrib/lite/tools/
+    install -m 0644 ${S}/tensorflow/contrib/lite/tools/*.h ${D}${includedir}/tensorflow/contrib/lite/tools/
+    install -d ${D}${libdir}/pkgconfig
+    install -m 0644 ${WORKDIR}/tensorflow-lite.pc.in ${D}${libdir}/pkgconfig/tensorflow-lite.pc
+    sed -i 's:@version@:${PV}:g
+        s:@libdir@:${libdir}:g
+        s:@includedir@:${includedir}:g' ${D}${libdir}/pkgconfig/tensorflow-lite.pc
+    # flatbuffers
+    install -d  ${D}${includedir}/flatbuffers
+    install -m 0644 ${S}/tensorflow/contrib/lite/tools/make/downloads/flatbuffers/include/flatbuffers/*.h ${D}${includedir}/flatbuffers/
+}
+
+ALLOW_EMPTY_${PN} = "1"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 2/7] flatbuffers: add version 1.10.0 needed by tensorflow-lite
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
  2019-08-21 22:58 ` [PATCH 1/7] tensorflow-lite: add version 1.12 Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  2019-08-21 22:58 ` [PATCH 3/7] tensorflow-lite-libeigen: add the version for commit fd6845384b86 Hongmei Gou
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 .../flatbuffers/flatbuffers_1.10.0.bb         | 34 +++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 meta-arago-extras/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb

diff --git a/meta-arago-extras/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb b/meta-arago-extras/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
new file mode 100644
index 00000000..452e1e65
--- /dev/null
+++ b/meta-arago-extras/recipes-devtools/flatbuffers/flatbuffers_1.10.0.bb
@@ -0,0 +1,34 @@
+SUMMARY = "Memory Efficient Serialization Library"
+HOMEPAGE = "https://github.com/google/flatbuffers"
+SECTION = "console/tools"
+LICENSE = "Apache-2.0"
+
+PACKAGE_BEFORE_PN = "${PN}-compiler"
+
+RDEPENDS_${PN}-compiler = "${PN}"
+RDEPENDS_${PN}-dev += "${PN}-compiler"
+
+LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=a873c5645c184d51e0f9b34e1d7cf559"
+
+SRCREV = "c0698cc33f1e534bb59c455909b88cc2726089af"
+
+SRC_URI = "git://github.com/google/flatbuffers.git"
+
+# Make sure C++11 is used, required for example for GCC 4.9
+CXXFLAGS += "-std=c++11"
+BUILD_CXXFLAGS += "-std=c++11"
+
+# BUILD_TYPE=Release is required, otherwise flatc is not installed
+EXTRA_OECMAKE += "\
+    -DCMAKE_BUILD_TYPE=Release \
+    -DFLATBUFFERS_BUILD_TESTS=OFF \    
+    -DFLATBUFFERS_BUILD_SHAREDLIB=ON \
+"
+
+inherit cmake
+
+S = "${WORKDIR}/git"
+
+FILES_${PN}-compiler = "${bindir}"
+
+BBCLASSEXTEND = "native nativesdk"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 3/7] tensorflow-lite-libeigen: add the version for commit fd6845384b86
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
  2019-08-21 22:58 ` [PATCH 1/7] tensorflow-lite: add version 1.12 Hongmei Gou
  2019-08-21 22:58 ` [PATCH 2/7] flatbuffers: add version 1.10.0 needed by tensorflow-lite Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  2019-08-21 22:58 ` [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12 Hongmei Gou
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

* This commit is required by tensorflow-lite version 1.12, which cannot
  be built with either libeigen_3.3.5.bb or libeigen_3.3.7.bb in meta-oe

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 .../tensorflow-lite-libeigen_git.bb           | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-libeigen_git.bb

diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-libeigen_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-libeigen_git.bb
new file mode 100644
index 00000000..a4bcb76f
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-libeigen_git.bb
@@ -0,0 +1,20 @@
+DESCRIPTION = "Eigen is a C++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms."
+AUTHOR = "BenoîJacob and GaëGuennebaud and others"
+HOMEPAGE = "http://eigen.tuxfamily.org/"
+LICENSE = "MPL-2.0"
+LIC_FILES_CHKSUM = "file://COPYING.MPL2;md5=815ca599c9df247a0c7f619bab123dad"
+
+SRC_URI = "http://bitbucket.org/eigen/eigen/get/fd6845384b86.tar.gz;downloadfilename=${BP}.tar.gz"
+SRC_URI[md5sum] = "4c884968ede816a84c70e2cd2c81de8d"
+SRC_URI[sha256sum] = "d956415d784fa4e42b6a2a45c32556d6aec9d0a3d8ef48baee2522ab762556a9"
+
+S = "${WORKDIR}/eigen-eigen-fd6845384b86"
+
+inherit cmake
+
+FILES_${PN} = "${libdir}"
+FILES_${PN}-dev = "${includedir} ${datadir}/eigen3/cmake ${datadir}/cmake/Modules ${datadir}/pkgconfig"
+
+# ${PN} is empty so we need to tweak -dev and -dbg package dependencies
+RDEPENDS_${PN}-dev = ""
+RRECOMMENDS_${PN}-dbg = "${PN}-dev (= ${EXTENDPKGV})"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
                   ` (2 preceding siblings ...)
  2019-08-21 22:58 ` [PATCH 3/7] tensorflow-lite-libeigen: add the version for commit fd6845384b86 Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  2019-08-22 14:22   ` [EXTERNAL] " Jacob Stiffler
  2019-08-21 22:58 ` [PATCH 5/7] tensorflow-lite: define dependencies via DEPENDS Hongmei Gou
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 .../tensorflow-lite/tensorflow-lite-absl_git.bb  | 16 ++++++++++++++++
 .../tensorflow-lite-farmhash_git.bb              | 14 ++++++++++++++
 .../tensorflow-lite/tensorflow-lite-fft2d_1.0.bb | 14 ++++++++++++++
 .../tensorflow-lite-gemmlowp_git.bb              | 16 ++++++++++++++++
 .../tensorflow-lite-neon-2-sse_git.bb            | 14 ++++++++++++++
 5 files changed, 74 insertions(+)
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb

diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
new file mode 100644
index 00000000..8d02958a
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "Abseil C++ Common Libraries"
+HOMEPAGE = "https://github.com/abseil/abseil-cpp"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=917cc5763a741e915bf7f2cc55830c17"
+
+SRC_URI = "git://github.com/abseil/abseil-cpp.git"
+SRCREV  = "48cd2c3f351ff188bc85684b84a91b6e6d17d896"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+do_install() {
+    install -d ${D}${datadir}/absl
+    cp -r ${S}/absl ${D}${datadir}/absl
+}
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
new file mode 100644
index 00000000..cd0bb14c
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "FarmHash, a family of hash functions"
+HOMEPAGE = "https://github.com/google/farmhash"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://COPYING;md5=7dfaa79e2b070897e495fec386e3acfc"
+
+SRC_URI = "git://github.com/google/farmhash.git"
+SRCREV  = "816a4ae622e964763ca0862d9dbd19324a1eaf45"
+
+S = "${WORKDIR}/git"
+
+do_install() {
+    install -d ${D}${datadir}/farmhash
+    cp -r ${S}/src ${D}${datadir}/farmhash
+}
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
new file mode 100644
index 00000000..5a01a2b2
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "General Purpose FFT (Fast Fourier/Cosine/Sine Transform) Package"
+LICENSE = "FFT-License"
+LIC_FILES_CHKSUM = "file://readme.txt;beginline=140;endline=145;md5=62461d28fdc0c056c098f3fb2f015799"
+
+SRC_URI = "https://mirror.bazel.build/www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz;downloadfilename=${BP}.tgz"
+SRC_URI[md5sum] = "4255dd8a74949d123216b1ab91520469"
+SRC_URI[sha256sum] = "52bb637c70b971958ec79c9c8752b1df5ff0218a4db4510e60826e0cb79b5296"
+
+S = "${WORKDIR}/fft"
+
+do_install() {
+    install -d ${D}${datadir}/fft2d
+    cp -r ${S}/* ${D}${datadir}/fft2d
+}
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
new file mode 100644
index 00000000..9ce38486
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
@@ -0,0 +1,16 @@
+DESCRIPTION = "gemmlowp: a small self-contained low-precision GEMM library"
+HOMEPAGE = "https://github.com/google/gemmlowp"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
+
+SRC_URI = "git://github.com/google/gemmlowp.git"
+SRCREV  = "38ebac7b059e84692f53e5938f97a9943c120d98"
+
+S = "${WORKDIR}/git"
+
+do_install() {
+    install -d ${D}${datadir}/gemmlowp
+    cp -r ${S}/* ${D}${datadir}/gemmlowp
+}
+
+INSANE_SKIP_${PN} = "file-rdeps"
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb
new file mode 100644
index 00000000..a93bf1fd
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb
@@ -0,0 +1,14 @@
+DESCRIPTION = "Header file simplifying ARM->IA32 porting"
+HOMEPAGE = "https://github.com/intel/ARM_NEON_2_x86_SSE"
+LICENSE = "BSD-3-Clause"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=b4fdfcb48f273d192333c498d75fa26f"
+
+SRC_URI = "git://github.com/intel/ARM_NEON_2_x86_SSE.git"
+SRCREV  = "3057bb91b99bae9c7fbdf8710c032d462ca10051"
+
+S = "${WORKDIR}/git"
+
+do_install() {
+    install -d ${D}${datadir}/neon-2-sse
+    cp -r ${S}/*.h ${D}${datadir}/neon-2-sse
+}
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 5/7] tensorflow-lite: define dependencies via DEPENDS
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
                   ` (3 preceding siblings ...)
  2019-08-21 22:58 ` [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12 Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  2019-08-21 22:58 ` [PATCH 6/7] tensorflow-lite: install minimal and benchmark_model examples, and all .a files Hongmei Gou
  2019-08-21 22:58 ` [PATCH 7/7] tensorflow-lite: add label_image example and install the files to run the example Hongmei Gou
  6 siblings, 0 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

* Remove the step of downloading and copying the dependencies
* A few other changes: 1) replace AUTOREV with commit ID;
  2) remove do_configure{} which is not needed; 3) remove
  installation for flatbuffers

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 ...the-path-for-the-depedencies-built-v.patch | 50 +++++++++++++++
 .../tensorflow-lite/tensorflow-lite_1.12.bb   | 64 +++----------------
 2 files changed, 58 insertions(+), 56 deletions(-)
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/0001-Makefile-update-the-path-for-the-depedencies-built-v.patch

diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/0001-Makefile-update-the-path-for-the-depedencies-built-v.patch b/meta-arago-extras/recipes-support/tensorflow-lite/files/0001-Makefile-update-the-path-for-the-depedencies-built-v.patch
new file mode 100644
index 00000000..58ff81ba
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/0001-Makefile-update-the-path-for-the-depedencies-built-v.patch
@@ -0,0 +1,50 @@
+From dfe8afa41f7f4bf2cb24853a1385e90da7fd6cc3 Mon Sep 17 00:00:00 2001
+From: Hongmei Gou <a0271529@ti.com>
+Date: Wed, 21 Aug 2019 17:31:53 -0400
+Subject: [PATCH] Makefile: update the path for the depedencies built via Yocto
+
+Upstream-Status: Inappropriate [applicable to Yocto build only]
+
+Signed-off-by: Hongmei Gou <a0271529@ti.com>
+---
+ tensorflow/contrib/lite/tools/make/Makefile | 17 ++++++++---------
+ 1 file changed, 8 insertions(+), 9 deletions(-)
+
+diff --git a/tensorflow/contrib/lite/tools/make/Makefile b/tensorflow/contrib/lite/tools/make/Makefile
+index 16012a3fb1..8b1b05b280 100644
+--- a/tensorflow/contrib/lite/tools/make/Makefile
++++ b/tensorflow/contrib/lite/tools/make/Makefile
+@@ -28,13 +28,12 @@ INCLUDES := \
+ -I. \
+ -I$(MAKEFILE_DIR)/../../../../../ \
+ -I$(MAKEFILE_DIR)/../../../../../../ \
+--I$(MAKEFILE_DIR)/downloads/ \
+--I$(MAKEFILE_DIR)/downloads/eigen \
+--I$(MAKEFILE_DIR)/downloads/absl \
+--I$(MAKEFILE_DIR)/downloads/gemmlowp \
+--I$(MAKEFILE_DIR)/downloads/neon_2_sse \
+--I$(MAKEFILE_DIR)/downloads/farmhash/src \
+--I$(MAKEFILE_DIR)/downloads/flatbuffers/include \
++-I$(DEPINC_DIR)/eigen3 \
++-I$(DEPINC_DIR)/flatbuffers/include \
++-I$(DEPDATA_DIR)/absl \
++-I$(DEPDATA_DIR)/gemmlowp \
++-I$(DEPDATA_DIR)/neon_2_sse \
++-I$(DEPDATA_DIR)/farmhash/src \
+ -I$(OBJDIR)
+ # This is at the end so any globally-installed frameworks like protobuf don't
+ # override local versions in the source tree.
+@@ -97,8 +96,8 @@ $(wildcard tensorflow/contrib/lite/kernels/*.c) \
+ $(wildcard tensorflow/contrib/lite/kernels/internal/*.c) \
+ $(wildcard tensorflow/contrib/lite/kernels/internal/optimized/*.c) \
+ $(wildcard tensorflow/contrib/lite/kernels/internal/reference/*.c) \
+-$(wildcard tensorflow/contrib/lite/tools/make/downloads/farmhash/src/farmhash.cc) \
+-$(wildcard tensorflow/contrib/lite/tools/make/downloads/fft2d/fftsg.c)
++$(wildcard $(DEPDATA_DIR)/farmhash/src/farmhash.cc) \
++$(wildcard $(DEPDATA_DIR)/fft2d/fftsg.c)
+ endif
+ # Remove any duplicates.
+ CORE_CC_ALL_SRCS := $(sort $(CORE_CC_ALL_SRCS))
+-- 
+2.17.1
+
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
index 5f35fa26..b5112939 100644
--- a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
@@ -4,40 +4,18 @@ HOMEPAGE = "https://www.tensorflow.org/lite"
 LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=01e86893010a1b87e69a213faa753ebd"
 
-MD5SUM_EIGEN = "4c884968ede816a84c70e2cd2c81de8d"
-SHA256SUM_EIGEN = "d956415d784fa4e42b6a2a45c32556d6aec9d0a3d8ef48baee2522ab762556a9"
-MD5SUM_FARMHASH = "f039a65a7f62bdb6c4b4c8a732638d80"
-SHA256SUM_FARMHASH = "6560547c63e4af82b0f202cb710ceabb3f21347a4b996db565a411da5b17aba0"
-MD5SUM_GEMMLOWP = "a90a2161ad8ee4ccf724f56e07637601"
-SHA256SUM_GEMMLOWP = "b87faa7294dfcc5d678f22a59d2c01ca94ea1e2a3b488c38a95a67889ed0a658"
-MD5SUM_GTEST = "16877098823401d1bf2ed7891d7dce36"
-SHA256SUM_GTEST = "58a6f4277ca2bc8565222b3bbd58a177609e9c488e8a72649359ba51450db7d8"
-MD5SUM_ABSLCPP = "7c9945f256d3733a8eade255afcbd072"
-SHA256SUM_ABSLCPP = "7dd09690ae7ca4551de3111d4a86b75b23ec17445f273d3c42bdcdc1c7b02e4e"
-MD5SUM_NEON2SSE = "11fb94c08a43f88a68a9edff317d82d0"
-SHA256SUM_NEON2SSE = "70526166a054f64b254213e9dc227b5877a21b621161e9907931093cc30341dd"
-MD5SUM_FLATBUFFER = "3811552512049fac3af419130904bc55"
-SHA256SUM_FLATBUFFER = "b2bb0311ca40b12ebe36671bdda350b10c7728caf0cfe2d432ea3b6e409016f3"
-MD5SUM_FFT = "4255dd8a74949d123216b1ab91520469"
-SHA256SUM_FFT = "52bb637c70b971958ec79c9c8752b1df5ff0218a4db4510e60826e0cb79b5296"
-
 SRC_URI = "git://github.com/tensorflow/tensorflow.git;branch=r1.12;protocol=https \
-    https://bitbucket.org/eigen/eigen/get/fd6845384b86.tar.gz;md5sum=${MD5SUM_EIGEN};sha256sum=${SHA256SUM_EIGEN} \
-    https://mirror.bazel.build/github.com/google/gemmlowp/archive/38ebac7b059e84692f53e5938f97a9943c120d98.zip;md5sum=${MD5SUM_GEMMLOWP};sha256sum=${SHA256SUM_GEMMLOWP} \
-    https://github.com/google/googletest/archive/release-1.8.0.tar.gz;md5sum=${MD5SUM_GTEST};sha256sum=${SHA256SUM_GTEST} \
-    https://github.com/abseil/abseil-cpp/archive/48cd2c3f351ff188bc85684b84a91b6e6d17d896.tar.gz;md5sum=${MD5SUM_ABSLCPP};sha256sum=${SHA256SUM_ABSLCPP} \
-    https://github.com/intel/ARM_NEON_2_x86_SSE/archive/master.zip;md5sum=${MD5SUM_NEON2SSE};sha256sum=${SHA256SUM_NEON2SSE} \
-    https://mirror.bazel.build/github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz;md5sum=${MD5SUM_FARMHASH};sha256sum=${SHA256SUM_FARMHASH} \
-    https://github.com/google/flatbuffers/archive/1f5eae5d6a135ff6811724f6c57f911d1f46bb15.tar.gz;md5sum=${MD5SUM_FLATBUFFER};sha256sum=${SHA256SUM_FLATBUFFER} \
-    https://mirror.bazel.build/www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz;md5sum=${MD5SUM_FFT};sha256sum=${SHA256SUM_FFT} \
-    file://apply-modification-for-tflite-1.12-to-eigen.patch \
+    file://0001-Makefile-update-the-path-for-the-depedencies-built-v.patch \
     file://tensorflow-lite.pc.in"
 
-SRCREV = "${AUTOREV}"
+SRCREV = "5b900cfe4b3b848f577315a0dde09a729f770e95"
+
+PR = "r1"
 
 S = "${WORKDIR}/git"
 
-DEPENDS = "zlib"
+DEPENDS = "zlib flatbuffers tensorflow-lite-libeigen tensorflow-lite-absl tensorflow-lite-gemmlowp tensorflow-lite-farmhash tensorflow-lite-neon-2-sse tensorflow-lite-fft2d"
+
 TARGET_CFLAGS_remove = "-O2"
 TARGET_CPPLAGS_remove = "-O2"
 TARGET_CXXLAGS_remove = "-O2"
@@ -49,28 +27,6 @@ LDFLAGS_remove = "-Wl,-O1"
 CXXFLAGS_append = " -O3 -DNDEBUG -fPIC -DGEMMLOWP_ALLOW_SLOW_SCALAR_FALLBACK \
     -I${STAGING_INCDIR}"
 LIBS = "-lstdc++ -lpthread -lm -lz -ldl"
-BUILD_DEPS_DOWNLOAD_DIR_PREFIX = "${S}/tensorflow/contrib/lite/tools/make/downloads/"
-
-do_cp_downloaded_build_deps() {
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}eigen
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}gemmlowp
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}googletest
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}absl
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}farmhash
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}neon_2_sse
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}flatbuffers
-    mkdir -p ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}fft2d
-
-    cp -rf ${WORKDIR}/eigen-eigen-fd6845384b86/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}eigen
-    cp -rf ${WORKDIR}/gemmlowp-38ebac7b059e84692f53e5938f97a9943c120d98/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}gemmlowp
-    cp -rf ${WORKDIR}/googletest-release-1.8.0/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}googletest
-    cp -rf ${WORKDIR}/abseil-cpp-48cd2c3f351ff188bc85684b84a91b6e6d17d896/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}absl
-    cp -rf ${WORKDIR}/farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}farmhash
-    cp -rf ${WORKDIR}/ARM_NEON_2_x86_SSE-master/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}neon_2_sse
-    cp -rf ${WORKDIR}/flatbuffers-1f5eae5d6a135ff6811724f6c57f911d1f46bb15/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}flatbuffers
-    cp -rf ${WORKDIR}/fft/* ${BUILD_DEPS_DOWNLOAD_DIR_PREFIX}fft2d
-}
-addtask do_cp_downloaded_build_deps after do_unpack before do_patch
 
 EXTRA_OEMAKE = "\
     'CC=${CC}' \
@@ -83,12 +39,11 @@ EXTRA_OEMAKE = "\
     'LD=${LD}' \
     'LDFLAGS=${LDFLAGS}' \
     'LIBS=${LIBS}' \
+    'DEPINC_DIR=${STAGING_DIR_HOST}${includedir}' \
+    'DEPDATA_DIR=${STAGING_DIR_HOST}${datadir}' \
     'TARGET=${TARGET_OS}' \
     'TARGET_ARCH=${TUNE_ARCH}'"
 
-do_configure() {
-    oe_runmake -f tensorflow/contrib/lite/tools/make/Makefile clean
-}
 
 do_compile() {
     oe_runmake -f tensorflow/contrib/lite/tools/make/Makefile
@@ -116,9 +71,6 @@ do_install() {
     sed -i 's:@version@:${PV}:g
         s:@libdir@:${libdir}:g
         s:@includedir@:${includedir}:g' ${D}${libdir}/pkgconfig/tensorflow-lite.pc
-    # flatbuffers
-    install -d  ${D}${includedir}/flatbuffers
-    install -m 0644 ${S}/tensorflow/contrib/lite/tools/make/downloads/flatbuffers/include/flatbuffers/*.h ${D}${includedir}/flatbuffers/
 }
 
 ALLOW_EMPTY_${PN} = "1"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 6/7] tensorflow-lite: install minimal and benchmark_model examples, and all .a files
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
                   ` (4 preceding siblings ...)
  2019-08-21 22:58 ` [PATCH 5/7] tensorflow-lite: define dependencies via DEPENDS Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  2019-08-21 22:58 ` [PATCH 7/7] tensorflow-lite: add label_image example and install the files to run the example Hongmei Gou
  6 siblings, 0 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 .../tensorflow-lite/tensorflow-lite_1.12.bb        | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
index b5112939..20f0ffed 100644
--- a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
@@ -10,7 +10,7 @@ SRC_URI = "git://github.com/tensorflow/tensorflow.git;branch=r1.12;protocol=http
 
 SRCREV = "5b900cfe4b3b848f577315a0dde09a729f770e95"
 
-PR = "r1"
+PR = "r2"
 
 S = "${WORKDIR}/git"
 
@@ -51,7 +51,7 @@ do_compile() {
 
 do_install() {
     install -d ${D}${libdir}
-    install -m 0644 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/lib/libtensorflow-lite.a ${D}${libdir}/
+    install -m 0644 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/lib/*.a ${D}${libdir}/
     install -d ${D}${includedir}/tensorflow/contrib/lite
     install -m 0644 ${S}/tensorflow/contrib/lite/*.h ${D}${includedir}/tensorflow/contrib/lite/
     install -d ${D}${includedir}/tensorflow/contrib/lite/c
@@ -71,6 +71,16 @@ do_install() {
     sed -i 's:@version@:${PV}:g
         s:@libdir@:${libdir}:g
         s:@includedir@:${includedir}:g' ${D}${libdir}/pkgconfig/tensorflow-lite.pc
+    # install examples
+    install -d ${D}${datadir}/${PN}-${PV}/examples
+    install -m 0755 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/minimal ${D}${datadir}/${PN}-${PV}/examples
+    install -m 0755 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/benchmark_model ${D}${datadir}/${PN}-${PV}/examples
 }
 
+PACKAGES += "${PN}-examples"
+
+FILES_${PN}-examples = " \
+    ${datadir}/${PN}-${PV}/examples/minimal \
+    ${datadir}/${PN}-${PV}/examples/benchmark_model \ "
+
 ALLOW_EMPTY_${PN} = "1"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [PATCH 7/7] tensorflow-lite: add label_image example and install the files to run the example
  2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
                   ` (5 preceding siblings ...)
  2019-08-21 22:58 ` [PATCH 6/7] tensorflow-lite: install minimal and benchmark_model examples, and all .a files Hongmei Gou
@ 2019-08-21 22:58 ` Hongmei Gou
  6 siblings, 0 replies; 10+ messages in thread
From: Hongmei Gou @ 2019-08-21 22:58 UTC (permalink / raw)
  To: meta-arago; +Cc: Hongmei Gou

* Patch Makefile to add the label_image example
* Install sample model/image/labels.txt to run the example

Signed-off-by: Hongmei Gou <a0271529@ti.com>
---
 ...002-Makefile-add-label_image-example.patch | 89 +++++++++++++++++++
 .../tensorflow-lite/tensorflow-lite_1.12.bb   | 15 +++-
 2 files changed, 100 insertions(+), 4 deletions(-)
 create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/files/0002-Makefile-add-label_image-example.patch

diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/files/0002-Makefile-add-label_image-example.patch b/meta-arago-extras/recipes-support/tensorflow-lite/files/0002-Makefile-add-label_image-example.patch
new file mode 100644
index 00000000..d3bd2a05
--- /dev/null
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/files/0002-Makefile-add-label_image-example.patch
@@ -0,0 +1,89 @@
+From eb4148a4b230cee9b4e3c00d8661653c7b29559a Mon Sep 17 00:00:00 2001
+From: Hongmei Gou <a0271529@ti.com>
+Date: Wed, 21 Aug 2019 18:03:17 -0400
+Subject: [PATCH] Makefile: add label_image example
+
+Upstream-Status: Pending
+
+Signed-off-by: Hongmei Gou <a0271529@ti.com>
+---
+ tensorflow/contrib/lite/tools/make/Makefile | 21 +++++++++++++++++++--
+ 1 file changed, 19 insertions(+), 2 deletions(-)
+
+diff --git a/tensorflow/contrib/lite/tools/make/Makefile b/tensorflow/contrib/lite/tools/make/Makefile
+index 8b1b05b280..1af726e2a3 100644
+--- a/tensorflow/contrib/lite/tools/make/Makefile
++++ b/tensorflow/contrib/lite/tools/make/Makefile
+@@ -71,6 +71,11 @@ BENCHMARK_BINARY_NAME := benchmark_model
+ MINIMAL_SRCS := \
+ tensorflow/contrib/lite/examples/minimal/minimal.cc
+ 
++# label image example
++LABELIMAGE_SRCS := \
++tensorflow/contrib/lite/examples/label_image/bitmap_helpers.cc \
++tensorflow/contrib/lite/examples/label_image/label_image.cc
++
+ # What sources we want to compile, must be kept in sync with the main Bazel
+ # build files.
+ 
+@@ -107,7 +112,8 @@ $(wildcard tensorflow/contrib/lite/*/*test.cc) \
+ $(wildcard tensorflow/contrib/lite/*/*/*test.cc) \
+ $(wildcard tensorflow/contrib/lite/*/*/*/*test.cc) \
+ $(wildcard tensorflow/contrib/lite/kernels/test_util.cc) \
+-$(MINIMAL_SRCS)
++$(MINIMAL_SRCS) \
++$(LABELIMAGE_SRCS)
+ ifeq ($(BUILD_TYPE),micro)
+ CORE_CC_EXCLUDE_SRCS += \
+ tensorflow/contrib/lite/mmap_allocation.cc \
+@@ -134,6 +140,7 @@ include $(wildcard $(MAKEFILE_DIR)/targets/*_makefile.inc)
+ 
+ ALL_SRCS := \
+ 	$(MINIMAL_SRCS) \
++	$(LABELIMAGE_SRCS) \
+ 	$(PROFILER_SRCS) \
+ 	$(PROFILER_SUMMARY_SRCS) \
+ 	$(TF_LITE_CC_SRCS) \
+@@ -149,6 +156,7 @@ LIB_PATH := $(LIBDIR)$(LIB_NAME)
+ BENCHMARK_LIB := $(LIBDIR)$(BENCHMARK_LIB_NAME)
+ BENCHMARK_BINARY := $(BINDIR)$(BENCHMARK_BINARY_NAME)
+ MINIMAL_BINARY := $(BINDIR)minimal
++LABELIMAGE_BINARY := $(BINDIR)label_image
+ 
+ CXX := $(CC_PREFIX)${TARGET_TOOLCHAIN_PREFIX}g++
+ CC := $(CC_PREFIX)${TARGET_TOOLCHAIN_PREFIX}gcc
+@@ -157,6 +165,9 @@ AR := $(CC_PREFIX)${TARGET_TOOLCHAIN_PREFIX}ar
+ MINIMAL_OBJS := $(addprefix $(OBJDIR), \
+ $(patsubst %.cc,%.o,$(patsubst %.c,%.o,$(MINIMAL_SRCS))))
+ 
++LABELIMAGE_OBJS := $(addprefix $(OBJDIR), \
++$(patsubst %.cc,%.o,$(patsubst %.c,%.o,$(LABELIMAGE_SRCS))))
++
+ LIB_OBJS := $(addprefix $(OBJDIR), \
+ $(patsubst %.cc,%.o,$(patsubst %.c,%.o,$(TF_LITE_CC_SRCS))))
+ 
+@@ -173,7 +184,7 @@ $(OBJDIR)%.o: %.c
+ 	$(CC) $(CCFLAGS) $(INCLUDES) -c $< -o $@
+ 
+ # The target that's compiled if there's no command-line arguments.
+-all: $(LIB_PATH)  $(MINIMAL_BINARY) $(BENCHMARK_BINARY)
++all: $(LIB_PATH)  $(MINIMAL_BINARY) $(LABELIMAGE_BINARY) $(BENCHMARK_BINARY)
+ 
+ # The target that's compiled for micro-controllers
+ micro: $(LIB_PATH)
+@@ -197,6 +208,12 @@ $(BENCHMARK_LIB) : $(LIB_PATH) $(BENCHMARK_OBJS)
+ 	@mkdir -p $(dir $@)
+ 	$(AR) $(ARFLAGS) $(BENCHMARK_LIB) $(LIB_OBJS) $(BENCHMARK_OBJS)
+ 
++$(LABELIMAGE_BINARY): $(LABELIMAGE_OBJS) $(LIB_PATH)
++	@mkdir -p $(dir $@)
++	$(CXX) $(CXXFLAGS) $(INCLUDES) \
++	-o $(LABELIMAGE_BINARY) $(LABELIMAGE_OBJS) \
++	$(LIBFLAGS) $(LIB_PATH) $(LDFLAGS) $(LIBS)
++
+ benchmark_lib: $(BENCHMARK_LIB)
+ 
+ $(BENCHMARK_BINARY) : $(BENCHMARK_LIB)
+-- 
+2.17.1
+
diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
index 20f0ffed..6f0254ef 100644
--- a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
+++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite_1.12.bb
@@ -5,12 +5,17 @@ LICENSE = "Apache-2.0"
 LIC_FILES_CHKSUM = "file://LICENSE;md5=01e86893010a1b87e69a213faa753ebd"
 
 SRC_URI = "git://github.com/tensorflow/tensorflow.git;branch=r1.12;protocol=https \
+    http://download.tensorflow.org/models/mobilenet_v1_2018_08_02/mobilenet_v1_1.0_224_quant.tgz;name=mobilenet_v1_quant;subdir=${WORKDIR}/model;destsuffix=model \
     file://0001-Makefile-update-the-path-for-the-depedencies-built-v.patch \
+    file://0002-Makefile-add-label_image-example.patch \
     file://tensorflow-lite.pc.in"
 
+SRC_URI[mobilenet_v1_quant.md5sum] = "36af340c00e60291931cb30ce32d4e86"
+SRC_URI[mobilenet_v1_quant.sha256sum] = "d32432d28673a936b2d6281ab0600c71cf7226dfe4cdcef3012555f691744166"
+
 SRCREV = "5b900cfe4b3b848f577315a0dde09a729f770e95"
 
-PR = "r2"
+PR = "r3"
 
 S = "${WORKDIR}/git"
 
@@ -75,12 +80,14 @@ do_install() {
     install -d ${D}${datadir}/${PN}-${PV}/examples
     install -m 0755 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/minimal ${D}${datadir}/${PN}-${PV}/examples
     install -m 0755 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/benchmark_model ${D}${datadir}/${PN}-${PV}/examples
+    install -m 0755 ${S}/tensorflow/contrib/lite/tools/make/gen/${TARGET_OS}_${TUNE_ARCH}/bin/label_image ${D}${datadir}/${PN}-${PV}/examples
+    install -m 0644 ${S}/tensorflow/contrib/lite/examples/label_image/testdata/grace_hopper.bmp ${D}${datadir}/${PN}-${PV}/examples
+    install -m 0644 ${S}/tensorflow/contrib/lite/java/ovic/src/testdata/labels.txt ${D}${datadir}/${PN}-${PV}/examples
+    install -m 0644 ${WORKDIR}/model/mobilenet_v1_1.0_224_quant.tflite ${D}${datadir}/${PN}-${PV}/examples
 }
 
 PACKAGES += "${PN}-examples"
 
-FILES_${PN}-examples = " \
-    ${datadir}/${PN}-${PV}/examples/minimal \
-    ${datadir}/${PN}-${PV}/examples/benchmark_model \ "
+FILES_${PN}-examples = "${datadir}/${PN}-${PV}/examples"
 
 ALLOW_EMPTY_${PN} = "1"
-- 
2.17.1



^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [EXTERNAL] [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12
  2019-08-21 22:58 ` [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12 Hongmei Gou
@ 2019-08-22 14:22   ` Jacob Stiffler
  2019-08-22 14:36     ` Gou, Hongmei
  0 siblings, 1 reply; 10+ messages in thread
From: Jacob Stiffler @ 2019-08-22 14:22 UTC (permalink / raw)
  To: Hongmei Gou, meta-arago

Why do we need to prefix all of these with "tensorflow-lite"?

On 8/21/2019 6:58 PM, Hongmei Gou wrote:
> Signed-off-by: Hongmei Gou <a0271529@ti.com>
> ---
>   .../tensorflow-lite/tensorflow-lite-absl_git.bb  | 16 ++++++++++++++++
>   .../tensorflow-lite-farmhash_git.bb              | 14 ++++++++++++++
>   .../tensorflow-lite/tensorflow-lite-fft2d_1.0.bb | 14 ++++++++++++++
>   .../tensorflow-lite-gemmlowp_git.bb              | 16 ++++++++++++++++
>   .../tensorflow-lite-neon-2-sse_git.bb            | 14 ++++++++++++++
>   5 files changed, 74 insertions(+)
>   create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
>   create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
>   create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
>   create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
>   create mode 100644 meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb
>
> diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
> new file mode 100644
> index 00000000..8d02958a
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-absl_git.bb
> @@ -0,0 +1,16 @@
> +DESCRIPTION = "Abseil C++ Common Libraries"
> +HOMEPAGE = "https://github.com/abseil/abseil-cpp"
> +LICENSE = "Apache-2.0"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=917cc5763a741e915bf7f2cc55830c17"
> +
> +SRC_URI = "git://github.com/abseil/abseil-cpp.git"
> +SRCREV  = "48cd2c3f351ff188bc85684b84a91b6e6d17d896"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit cmake
> +
> +do_install() {
> +    install -d ${D}${datadir}/absl
> +    cp -r ${S}/absl ${D}${datadir}/absl
> +}
> diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
> new file mode 100644
> index 00000000..cd0bb14c
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-farmhash_git.bb
> @@ -0,0 +1,14 @@
> +DESCRIPTION = "FarmHash, a family of hash functions"
> +HOMEPAGE = "https://github.com/google/farmhash"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://COPYING;md5=7dfaa79e2b070897e495fec386e3acfc"
> +
> +SRC_URI = "git://github.com/google/farmhash.git"
> +SRCREV  = "816a4ae622e964763ca0862d9dbd19324a1eaf45"
> +
> +S = "${WORKDIR}/git"
> +
> +do_install() {
> +    install -d ${D}${datadir}/farmhash
> +    cp -r ${S}/src ${D}${datadir}/farmhash
> +}
> diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
> new file mode 100644
> index 00000000..5a01a2b2
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-fft2d_1.0.bb
> @@ -0,0 +1,14 @@
> +DESCRIPTION = "General Purpose FFT (Fast Fourier/Cosine/Sine Transform) Package"
> +LICENSE = "FFT-License"
> +LIC_FILES_CHKSUM = "file://readme.txt;beginline=140;endline=145;md5=62461d28fdc0c056c098f3fb2f015799"
> +
> +SRC_URI = "https://mirror.bazel.build/www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz;downloadfilename=${BP}.tgz"
> +SRC_URI[md5sum] = "4255dd8a74949d123216b1ab91520469"
> +SRC_URI[sha256sum] = "52bb637c70b971958ec79c9c8752b1df5ff0218a4db4510e60826e0cb79b5296"
> +
> +S = "${WORKDIR}/fft"
> +
> +do_install() {
> +    install -d ${D}${datadir}/fft2d
> +    cp -r ${S}/* ${D}${datadir}/fft2d
> +}
> diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
> new file mode 100644
> index 00000000..9ce38486
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-gemmlowp_git.bb
> @@ -0,0 +1,16 @@
> +DESCRIPTION = "gemmlowp: a small self-contained low-precision GEMM library"
> +HOMEPAGE = "https://github.com/google/gemmlowp"
> +LICENSE = "Apache-2.0"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
> +
> +SRC_URI = "git://github.com/google/gemmlowp.git"
> +SRCREV  = "38ebac7b059e84692f53e5938f97a9943c120d98"
> +
> +S = "${WORKDIR}/git"
> +
> +do_install() {
> +    install -d ${D}${datadir}/gemmlowp
> +    cp -r ${S}/* ${D}${datadir}/gemmlowp
> +}
> +
> +INSANE_SKIP_${PN} = "file-rdeps"
> diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb
> new file mode 100644
> index 00000000..a93bf1fd
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-neon-2-sse_git.bb
> @@ -0,0 +1,14 @@
> +DESCRIPTION = "Header file simplifying ARM->IA32 porting"
> +HOMEPAGE = "https://github.com/intel/ARM_NEON_2_x86_SSE"
> +LICENSE = "BSD-3-Clause"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=b4fdfcb48f273d192333c498d75fa26f"
> +
> +SRC_URI = "git://github.com/intel/ARM_NEON_2_x86_SSE.git"
> +SRCREV  = "3057bb91b99bae9c7fbdf8710c032d462ca10051"
> +
> +S = "${WORKDIR}/git"
> +
> +do_install() {
> +    install -d ${D}${datadir}/neon-2-sse
> +    cp -r ${S}/*.h ${D}${datadir}/neon-2-sse
> +}


^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [EXTERNAL] [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12
  2019-08-22 14:22   ` [EXTERNAL] " Jacob Stiffler
@ 2019-08-22 14:36     ` Gou, Hongmei
  0 siblings, 0 replies; 10+ messages in thread
From: Gou, Hongmei @ 2019-08-22 14:36 UTC (permalink / raw)
  To: Stiffler, Jacob, meta-arago

> -----Original Message-----
> From: Stiffler, Jacob
> Sent: Thursday, August 22, 2019 10:22 AM
> To: Gou, Hongmei; meta-arago@arago-project.org
> Subject: Re: [EXTERNAL] [meta-arago] [PATCH 4/7] tensorflow-lite-*: add
> other dependencies for tensorflow-lite 1.12
> 
> Why do we need to prefix all of these with "tensorflow-lite"?

As these dependencies are specific to tensorflow-lite to get the source packages,
and therefore, I put them under the same folder of " tensorflow-lite" with the prefix.
This is also referring to the naming convention for armnn dependencies:
http://arago-project.org/git/?p=meta-arago.git;a=tree;f=meta-arago-extras/recipes-support/armnn;h=3e56a74bc783606d06fa478ea1516dd4d2375853;hb=ddb08715bf11d45886106e98ee81cbf1b3bda802

If this is not the common practice, I can create separate folders for these
dependencies under recipes-support, and remove the "tensorflow-lite" prefix.

> 
> On 8/21/2019 6:58 PM, Hongmei Gou wrote:
> > Signed-off-by: Hongmei Gou <a0271529@ti.com>
> > ---
> >   .../tensorflow-lite/tensorflow-lite-absl_git.bb  | 16 ++++++++++++++++
> >   .../tensorflow-lite-farmhash_git.bb              | 14 ++++++++++++++
> >   .../tensorflow-lite/tensorflow-lite-fft2d_1.0.bb | 14 ++++++++++++++
> >   .../tensorflow-lite-gemmlowp_git.bb              | 16 ++++++++++++++++
> >   .../tensorflow-lite-neon-2-sse_git.bb            | 14 ++++++++++++++
> >   5 files changed, 74 insertions(+)
> >   create mode 100644 meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-absl_git.bb
> >   create mode 100644 meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-farmhash_git.bb
> >   create mode 100644 meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-fft2d_1.0.bb
> >   create mode 100644 meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-gemmlowp_git.bb
> >   create mode 100644 meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-neon-2-sse_git.bb
> >
> > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-
> lite-absl_git.bb b/meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-absl_git.bb
> > new file mode 100644
> > index 00000000..8d02958a
> > --- /dev/null
> > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-
> absl_git.bb
> > @@ -0,0 +1,16 @@
> > +DESCRIPTION = "Abseil C++ Common Libraries"
> > +HOMEPAGE = "https://github.com/abseil/abseil-cpp"
> > +LICENSE = "Apache-2.0"
> > +LIC_FILES_CHKSUM =
> "file://LICENSE;md5=917cc5763a741e915bf7f2cc55830c17"
> > +
> > +SRC_URI = "git://github.com/abseil/abseil-cpp.git"
> > +SRCREV  = "48cd2c3f351ff188bc85684b84a91b6e6d17d896"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +inherit cmake
> > +
> > +do_install() {
> > +    install -d ${D}${datadir}/absl
> > +    cp -r ${S}/absl ${D}${datadir}/absl
> > +}
> > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-
> lite-farmhash_git.bb b/meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-farmhash_git.bb
> > new file mode 100644
> > index 00000000..cd0bb14c
> > --- /dev/null
> > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-
> farmhash_git.bb
> > @@ -0,0 +1,14 @@
> > +DESCRIPTION = "FarmHash, a family of hash functions"
> > +HOMEPAGE = "https://github.com/google/farmhash"
> > +LICENSE = "MIT"
> > +LIC_FILES_CHKSUM =
> "file://COPYING;md5=7dfaa79e2b070897e495fec386e3acfc"
> > +
> > +SRC_URI = "git://github.com/google/farmhash.git"
> > +SRCREV  = "816a4ae622e964763ca0862d9dbd19324a1eaf45"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +do_install() {
> > +    install -d ${D}${datadir}/farmhash
> > +    cp -r ${S}/src ${D}${datadir}/farmhash
> > +}
> > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-
> lite-fft2d_1.0.bb b/meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-fft2d_1.0.bb
> > new file mode 100644
> > index 00000000..5a01a2b2
> > --- /dev/null
> > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-
> fft2d_1.0.bb
> > @@ -0,0 +1,14 @@
> > +DESCRIPTION = "General Purpose FFT (Fast Fourier/Cosine/Sine
> Transform) Package"
> > +LICENSE = "FFT-License"
> > +LIC_FILES_CHKSUM =
> "file://readme.txt;beginline=140;endline=145;md5=62461d28fdc0c056c098f3
> fb2f015799"
> > +
> > +SRC_URI = "https://mirror.bazel.build/www.kurims.kyoto-
> u.ac.jp/~ooura/fft.tgz;downloadfilename=${BP}.tgz"
> > +SRC_URI[md5sum] = "4255dd8a74949d123216b1ab91520469"
> > +SRC_URI[sha256sum] =
> "52bb637c70b971958ec79c9c8752b1df5ff0218a4db4510e60826e0cb79b5296"
> > +
> > +S = "${WORKDIR}/fft"
> > +
> > +do_install() {
> > +    install -d ${D}${datadir}/fft2d
> > +    cp -r ${S}/* ${D}${datadir}/fft2d
> > +}
> > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-
> lite-gemmlowp_git.bb b/meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-gemmlowp_git.bb
> > new file mode 100644
> > index 00000000..9ce38486
> > --- /dev/null
> > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-
> gemmlowp_git.bb
> > @@ -0,0 +1,16 @@
> > +DESCRIPTION = "gemmlowp: a small self-contained low-precision GEMM
> library"
> > +HOMEPAGE = "https://github.com/google/gemmlowp"
> > +LICENSE = "Apache-2.0"
> > +LIC_FILES_CHKSUM =
> "file://LICENSE;md5=3b83ef96387f14655fc854ddc3c6bd57"
> > +
> > +SRC_URI = "git://github.com/google/gemmlowp.git"
> > +SRCREV  = "38ebac7b059e84692f53e5938f97a9943c120d98"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +do_install() {
> > +    install -d ${D}${datadir}/gemmlowp
> > +    cp -r ${S}/* ${D}${datadir}/gemmlowp
> > +}
> > +
> > +INSANE_SKIP_${PN} = "file-rdeps"
> > diff --git a/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-
> lite-neon-2-sse_git.bb b/meta-arago-extras/recipes-support/tensorflow-
> lite/tensorflow-lite-neon-2-sse_git.bb
> > new file mode 100644
> > index 00000000..a93bf1fd
> > --- /dev/null
> > +++ b/meta-arago-extras/recipes-support/tensorflow-lite/tensorflow-lite-
> neon-2-sse_git.bb
> > @@ -0,0 +1,14 @@
> > +DESCRIPTION = "Header file simplifying ARM->IA32 porting"
> > +HOMEPAGE = "https://github.com/intel/ARM_NEON_2_x86_SSE"
> > +LICENSE = "BSD-3-Clause"
> > +LIC_FILES_CHKSUM =
> "file://LICENSE;md5=b4fdfcb48f273d192333c498d75fa26f"
> > +
> > +SRC_URI = "git://github.com/intel/ARM_NEON_2_x86_SSE.git"
> > +SRCREV  = "3057bb91b99bae9c7fbdf8710c032d462ca10051"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +do_install() {
> > +    install -d ${D}${datadir}/neon-2-sse
> > +    cp -r ${S}/*.h ${D}${datadir}/neon-2-sse
> > +}

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2019-08-22 14:37 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-08-21 22:58 [PATCH 0/7] Add tensorflow-lite Hongmei Gou
2019-08-21 22:58 ` [PATCH 1/7] tensorflow-lite: add version 1.12 Hongmei Gou
2019-08-21 22:58 ` [PATCH 2/7] flatbuffers: add version 1.10.0 needed by tensorflow-lite Hongmei Gou
2019-08-21 22:58 ` [PATCH 3/7] tensorflow-lite-libeigen: add the version for commit fd6845384b86 Hongmei Gou
2019-08-21 22:58 ` [PATCH 4/7] tensorflow-lite-*: add other dependencies for tensorflow-lite 1.12 Hongmei Gou
2019-08-22 14:22   ` [EXTERNAL] " Jacob Stiffler
2019-08-22 14:36     ` Gou, Hongmei
2019-08-21 22:58 ` [PATCH 5/7] tensorflow-lite: define dependencies via DEPENDS Hongmei Gou
2019-08-21 22:58 ` [PATCH 6/7] tensorflow-lite: install minimal and benchmark_model examples, and all .a files Hongmei Gou
2019-08-21 22:58 ` [PATCH 7/7] tensorflow-lite: add label_image example and install the files to run the example Hongmei Gou

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.