* [rocko/master][PATCH v8 2/5] arm-compute-library: Machine Learning library for ARM.
@ 2018-09-14 18:26 Jacob Stiffler
2018-09-14 18:26 ` [rocko/master][PATCH v8 4/5] armnn-tensorflow: tensorflow protobuf files for building tensorflow models in armnn Jacob Stiffler
2018-09-14 18:26 ` [rocko/master][PATCH v8 5/5] armnn: ARM NN machine learning SDK Jacob Stiffler
0 siblings, 2 replies; 4+ messages in thread
From: Jacob Stiffler @ 2018-09-14 18:26 UTC (permalink / raw)
To: meta-arago
From: Qin Su <qsu@ti.com>
The ARM Computer Vision and Machine Learning library is a set of functions
optimised for both ARM CPUs and GPUs using SIMD technologies.
Signed-off-by: Qin Su <qsu@ti.com>
Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
---
Changes from v6:
* Add SUMMARY
* Add comment explaining that ARMNN expects a built source package of
arm-compute-library.
* Install to ${datadir}/${BPN} instead of ${datadir}/${PN}
* Remove warnings by adding more INSANE_SKIPS
- dev: dkip ldflags
- source: skip ldflags, libdir, staticdev
* INHIBIT_DEBUG_SPLIT so that debug files are not removed from source
package
Changes from previous versions:
* Add "_git" suffix to recipe name.
* Add version.
* Add branch option for SRC_URI.
* For installation, use install by looping over libraries.
* Remove unnecessary checksums for SRC_URI.
* Set armv7a as COMPATIBLE_MACHINE as this is hardcoded in
EXTRA_OESCONS.
.../arm-compute-library/arm-compute-library_git.bb | 48 ++++++++++++++++++++++
1 file changed, 48 insertions(+)
create mode 100644 meta-arago-extras/recipes-support/arm-compute-library/arm-compute-library_git.bb
diff --git a/meta-arago-extras/recipes-support/arm-compute-library/arm-compute-library_git.bb b/meta-arago-extras/recipes-support/arm-compute-library/arm-compute-library_git.bb
new file mode 100644
index 0000000..d9fa8b0
--- /dev/null
+++ b/meta-arago-extras/recipes-support/arm-compute-library/arm-compute-library_git.bb
@@ -0,0 +1,48 @@
+SUMMARY = "The ARM Computer Vision and Machine Learning library"
+DESCRIPTION = "The ARM Computer Vision and Machine Learning library is a set of functions optimised for both ARM CPUs and GPUs."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=e2c93841b20cd522af621cabaea3aef8"
+
+COMPATIBLE_MACHINE = "armv7a"
+
+SRC_URI = " \
+ git://github.com/ARM-software/ComputeLibrary.git;branch=${BRANCH} \
+"
+
+PV = "18.05"
+
+BRANCH = "master"
+SRCREV = "e2542c9f35ca427286822cd0c9296f49914f78b0"
+
+S = "${WORKDIR}/git"
+
+do_compile_prepend() {
+ unset CC CXX
+}
+
+inherit scons
+
+EXTRA_OESCONS = "arch=armv7a extra_cxx_flags="-fPIC" benchmark_tests=1 validation_tests=0 neon=1 openmp=1 opencl=0"
+
+LIBS += "-larmpl_lp64_mp"
+
+do_install() {
+ CP_ARGS="-Prf --preserve=mode,timestamps --no-preserve=ownership"
+
+ install -d ${D}${libdir}
+ for lib in ${S}/build/*.so
+ do
+ install -m 0644 $lib ${D}${libdir}
+ done
+
+ # Install built source package as expected by ARMNN
+ install -d ${D}${datadir}/${BPN}
+ cp $CP_ARGS ${S}/. ${D}${datadir}/${BPN}
+}
+
+INSANE_SKIP_${PN}-dev = "dev-elf ldflags"
+
+PACKAGES =+ "${PN}-source"
+FILES_${PN}-source = "${datadir}/${BPN}"
+INSANE_SKIP_${PN}-source = "ldflags libdir staticdev"
+INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
--
2.7.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [rocko/master][PATCH v8 4/5] armnn-tensorflow: tensorflow protobuf files for building tensorflow models in armnn
2018-09-14 18:26 [rocko/master][PATCH v8 2/5] arm-compute-library: Machine Learning library for ARM Jacob Stiffler
@ 2018-09-14 18:26 ` Jacob Stiffler
2018-09-14 18:26 ` [rocko/master][PATCH v8 5/5] armnn: ARM NN machine learning SDK Jacob Stiffler
1 sibling, 0 replies; 4+ messages in thread
From: Jacob Stiffler @ 2018-09-14 18:26 UTC (permalink / raw)
To: meta-arago
From: Qin Su <qsu@ti.com>
Signed-off-by: Qin Su <qsu@ti.com>
Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
---
Changes from v6:
* Use only "tensorflow" in SRCREV_FORMAT
* Install files to ${datadir}/${BPN}
* Add comment explaining what generate_tensorflow_protobuf.sh is doing
in do_install()
* Remove source package and allow files to populate main package
Changes from previous versions:
* Add "_git" suffix to recipe name.
* Add version.
* DESCRIPTION --> SUMMARY.
* Add branch option for SRC_URI.
* Add dependency on protobuf-native
* Add Apache license version (Apache-2.0)
.../armnn-tensorflow/armnn-tensorflow_git.bb | 26 ++++++++++++++++++++++
1 file changed, 26 insertions(+)
create mode 100644 meta-arago-extras/recipes-support/armnn-tensorflow/armnn-tensorflow_git.bb
diff --git a/meta-arago-extras/recipes-support/armnn-tensorflow/armnn-tensorflow_git.bb b/meta-arago-extras/recipes-support/armnn-tensorflow/armnn-tensorflow_git.bb
new file mode 100644
index 0000000..0b0f148
--- /dev/null
+++ b/meta-arago-extras/recipes-support/armnn-tensorflow/armnn-tensorflow_git.bb
@@ -0,0 +1,26 @@
+SUMMARY = "Tensorflow protobuf files - used in ARMNN for Tensorflow network models"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=01e86893010a1b87e69a213faa753ebd"
+
+SRC_URI = " \
+ git://github.com/tensorflow/tensorflow.git;name=tensorflow; \
+ git://github.com/ARM-software/armnn.git;name=armnn;subdir=${WORKDIR}/armnn;destsuffix=armnn \
+"
+
+PV = "1.10.0"
+
+SRCREV_tensorflow = "aed8f42bafabf11c5d92ce4109a5e0408b31f9c5"
+SRCREV_armnn = "4c7098bfeab1ffe1cdc77f6c15548d3e73274746"
+SRCREV_FORMAT = "tensorflow"
+
+DEPENDS = "protobuf-native"
+
+S = "${WORKDIR}/git"
+
+do_install() {
+ # Install sources + build artifacts as reuired by ARMNN
+ install -d ${D}${datadir}/${BPN}
+
+ # Convert protobuf sources to C sources and install
+ ${WORKDIR}/armnn/scripts/generate_tensorflow_protobuf.sh ${D}${datadir}/${BPN} ${STAGING_DIR_NATIVE}${prefix}
+}
--
2.7.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [rocko/master][PATCH v8 5/5] armnn: ARM NN machine learning SDK.
2018-09-14 18:26 [rocko/master][PATCH v8 2/5] arm-compute-library: Machine Learning library for ARM Jacob Stiffler
2018-09-14 18:26 ` [rocko/master][PATCH v8 4/5] armnn-tensorflow: tensorflow protobuf files for building tensorflow models in armnn Jacob Stiffler
@ 2018-09-14 18:26 ` Jacob Stiffler
2018-09-14 19:54 ` Denys Dmytriyenko
1 sibling, 1 reply; 4+ messages in thread
From: Jacob Stiffler @ 2018-09-14 18:26 UTC (permalink / raw)
To: meta-arago
From: Qin Su <qsu@ti.com>
Arm NN SDK is a set of open-source Linux software and tools that enables
machine learning workloads on power-efficient devices. Arm NN takes Caffe,
TensorFlow network frameworks, translate them to the internal Arm NN
formatand then, through the Compute Library, deploy them efficiently on
Cortex-A CPUs.
Signed-off-by: Qin Su <qsu@ti.com>
Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
---
Changes from v6:
* Add SUMMARY
* Add "Upstream-Status" to patches
Changes from previous versions:
* Add "_git" suffix to recipe name.
* Add version.
* Add branch option for SRC_URI.
* Remove bash-completion package as the file is not present.
.../armnn/0001-stdlib-issue-work-around.patch | 61 ++++++++++++++++++++++
.../0002-enable-use-of-boost-shared-library.patch | 37 +++++++++++++
.../recipes-support/armnn/armnn_git.bb | 46 ++++++++++++++++
3 files changed, 144 insertions(+)
create mode 100755 meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch
create mode 100755 meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch
create mode 100644 meta-arago-extras/recipes-support/armnn/armnn_git.bb
diff --git a/meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch b/meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch
new file mode 100755
index 0000000..cf83532
--- /dev/null
+++ b/meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch
@@ -0,0 +1,61 @@
+From 3691057b51010c1bd979998c460ad7b43f97496f Mon Sep 17 00:00:00 2001
+From: Qin Su <qsu@ti.com>
+Date: Fri, 10 Aug 2018 11:02:14 -0400
+Subject: [PATCH] stdlib issue work around
+
+Upstream-Status: Pending
+Need to invesitate whether this is appropriate, or if cmake should be
+fixed. This is currently an open issue on the cmake project [1].
+
+[1] https://gitlab.kitware.com/cmake/cmake/issues/16291
+
+Signed-off-by: Qin Su <qsu@ti.com>
+---
+ cmake/GlobalConfig.cmake | 28 ++++++++++++++++++++++++++++
+ 1 file changed, 28 insertions(+)
+ mode change 100644 => 100755 cmake/GlobalConfig.cmake
+
+diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
+old mode 100644
+new mode 100755
+index 2dbeada..2b88c16
+--- a/cmake/GlobalConfig.cmake
++++ b/cmake/GlobalConfig.cmake
+@@ -47,6 +47,34 @@ elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL MSVC)
+ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc /MP")
+ add_definitions(-DNOMINMAX=1 -DNO_STRICT=1)
+ endif()
++
++# Ensure that the default include system directories are added to the list of CMake implicit includes.
++# This workarounds an issue that happens when using GCC 6 and using system includes (-isystem).
++# For more details check: https://bugs.webkit.org/show_bug.cgi?id=161697
++macro(DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang _compiler _flags _result)
++ file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy" "\n")
++ separate_arguments(_buildFlags UNIX_COMMAND "${_flags}")
++ execute_process(COMMAND ${_compiler} ${_buildFlags} -v -E -x ${_lang} -dD dummy
++ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles OUTPUT_QUIET
++ ERROR_VARIABLE _gccOutput)
++ file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy")
++ if ("${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list")
++ set(${_result} ${CMAKE_MATCH_1})
++ string(REPLACE "\n" " " ${_result} "${${_result}}")
++ separate_arguments(${_result})
++ endif ()
++endmacro()
++
++if (CMAKE_COMPILER_IS_GNUCC)
++ DETERMINE_GCC_SYSTEM_INCLUDE_DIRS("c" "${CMAKE_C_COMPILER}" "${CMAKE_C_FLAGS}" SYSTEM_INCLUDE_DIRS)
++ set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} ${SYSTEM_INCLUDE_DIRS})
++endif ()
++
++if (CMAKE_COMPILER_IS_GNUCXX)
++ DETERMINE_GCC_SYSTEM_INCLUDE_DIRS("c++" "${CMAKE_CXX_COMPILER}" "${CMAKE_CXX_FLAGS}" SYSTEM_INCLUDE_DIRS)
++ set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} ${SYSTEM_INCLUDE_DIRS})
++endif ()
++
+ if("${CMAKE_SYSTEM_NAME}" STREQUAL Android)
+ set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -llog")
+ set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -llog")
+--
+1.9.1
+
diff --git a/meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch b/meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch
new file mode 100755
index 0000000..50c2e1d
--- /dev/null
+++ b/meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch
@@ -0,0 +1,37 @@
+From 34a7ec821b11f7bed3dd644bf341cbaf6023516b Mon Sep 17 00:00:00 2001
+From: Qin Su <qsu@ti.com>
+Date: Tue, 11 Sep 2018 17:11:07 -0400
+Subject: [PATCH] enable use of boost shared library
+
+Upstream-Status: Inappropriate [configuration]
+This is a hack to modify hard coded configuration. If anything, it
+should be made configurable.
+
+Signed-off-by: Qin Su <qsu@ti.com>
+---
+ cmake/GlobalConfig.cmake | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+ mode change 100644 => 100755 cmake/GlobalConfig.cmake
+
+diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
+old mode 100644
+new mode 100755
+index 2dbeada..a5a1113
+--- a/cmake/GlobalConfig.cmake
++++ b/cmake/GlobalConfig.cmake
+@@ -96,8 +96,10 @@ endif()
+ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ${CMAKE_MODULE_PATH})
+
+ # Boost
+-add_definitions("-DBOOST_ALL_NO_LIB") # Turn off auto-linking as we specify the libs manually
+-set(Boost_USE_STATIC_LIBS ON)
++#add_definitions("-DBOOST_ALL_NO_LIB") # Turn off auto-linking as we specify the libs manually
++#set(Boost_USE_STATIC_LIBS ON)
++add_definitions(-DBOOST_ALL_DYN_LINK) # use shared library
++set(Boost_USE_STATIC_LIBS OFF)
+ find_package(Boost 1.59 REQUIRED COMPONENTS unit_test_framework system filesystem log program_options)
+ include_directories(SYSTEM "${Boost_INCLUDE_DIR}")
+ link_directories(${Boost_LIBRARY_DIR})
+--
+1.9.1
+
diff --git a/meta-arago-extras/recipes-support/armnn/armnn_git.bb b/meta-arago-extras/recipes-support/armnn/armnn_git.bb
new file mode 100644
index 0000000..3bd4c82
--- /dev/null
+++ b/meta-arago-extras/recipes-support/armnn/armnn_git.bb
@@ -0,0 +1,46 @@
+SUMMARY = "ARM Neural Network SDK"
+DESCRIPTION = "Linux software and tools to enable machine learning (Caffe/Tensorflow) workloads on power-efficient devices"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=3e14a924c16f7d828b8335a59da64074"
+
+PV = "20180502"
+
+BRANCH = "master"
+SRCREV = "4c7098bfeab1ffe1cdc77f6c15548d3e73274746"
+
+S = "${WORKDIR}/git"
+
+inherit cmake
+
+SRC_URI = " \
+ git://github.com/ARM-software/armnn.git;branch=${BRANCH} \
+ file://0001-stdlib-issue-work-around.patch \
+ file://0002-enable-use-of-boost-shared-library.patch \
+"
+
+DEPENDS = " \
+ boost \
+ protobuf \
+ stb \
+ arm-compute-library \
+ armnn-caffe \
+ armnn-tensorflow \
+"
+
+EXTRA_OECMAKE=" \
+ -DBUILD_SHARED_LIBS=ON -DREGISTER_INSTALL_PREFIX=OFF \
+ -DARMCOMPUTE_ROOT=${STAGING_DIR_HOST}${datadir}/arm-compute-library \
+ -DARMCOMPUTE_BUILD_DIR=${STAGING_DIR_HOST}${datadir}/arm-compute-library/build \
+ -DCAFFE_GENERATED_SOURCES=${STAGING_DIR_HOST}${datadir}/armnn-caffe \
+ -DTF_GENERATED_SOURCES=${STAGING_DIR_HOST}${datadir}/armnn-tensorflow \
+ -DBUILD_CAFFE_PARSER=1 -DBUILD_TF_PARSER=1 \
+ -DARMCOMPUTENEON=1 \
+ -DBUILD_TESTS=1 -DPROFILING=1 \
+ -DTHIRD_PARTY_INCLUDE_DIRS=${STAGING_DIR_HOST}${includedir} \
+"
+
+CXXFLAGS += "-fopenmp"
+LIBS += "-larmpl_lp64_mp"
+
+FILES_${PN}-dev += "{libdir}/cmake/*"
+INSANE_SKIP_${PN}-dev = "dev-elf"
--
2.7.4
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [rocko/master][PATCH v8 5/5] armnn: ARM NN machine learning SDK.
2018-09-14 18:26 ` [rocko/master][PATCH v8 5/5] armnn: ARM NN machine learning SDK Jacob Stiffler
@ 2018-09-14 19:54 ` Denys Dmytriyenko
0 siblings, 0 replies; 4+ messages in thread
From: Denys Dmytriyenko @ 2018-09-14 19:54 UTC (permalink / raw)
To: Jacob Stiffler; +Cc: meta-arago
On Fri, Sep 14, 2018 at 02:26:58PM -0400, Jacob Stiffler wrote:
> From: Qin Su <qsu@ti.com>
>
> Arm NN SDK is a set of open-source Linux software and tools that enables
> machine learning workloads on power-efficient devices. Arm NN takes Caffe,
> TensorFlow network frameworks, translate them to the internal Arm NN
> formatand then, through the Compute Library, deploy them efficiently on
> Cortex-A CPUs.
>
> Signed-off-by: Qin Su <qsu@ti.com>
> Signed-off-by: Jacob Stiffler <j-stiffler@ti.com>
> ---
> Changes from v6:
> * Add SUMMARY
> * Add "Upstream-Status" to patches
Thanks again for all the fixes and cleanups! Especially detailed Upstream-status.
> Changes from previous versions:
> * Add "_git" suffix to recipe name.
> * Add version.
> * Add branch option for SRC_URI.
> * Remove bash-completion package as the file is not present.
>
> .../armnn/0001-stdlib-issue-work-around.patch | 61 ++++++++++++++++++++++
> .../0002-enable-use-of-boost-shared-library.patch | 37 +++++++++++++
> .../recipes-support/armnn/armnn_git.bb | 46 ++++++++++++++++
> 3 files changed, 144 insertions(+)
> create mode 100755 meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch
> create mode 100755 meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch
> create mode 100644 meta-arago-extras/recipes-support/armnn/armnn_git.bb
>
> diff --git a/meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch b/meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch
> new file mode 100755
> index 0000000..cf83532
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/armnn/armnn/0001-stdlib-issue-work-around.patch
> @@ -0,0 +1,61 @@
> +From 3691057b51010c1bd979998c460ad7b43f97496f Mon Sep 17 00:00:00 2001
> +From: Qin Su <qsu@ti.com>
> +Date: Fri, 10 Aug 2018 11:02:14 -0400
> +Subject: [PATCH] stdlib issue work around
> +
> +Upstream-Status: Pending
> +Need to invesitate whether this is appropriate, or if cmake should be
> +fixed. This is currently an open issue on the cmake project [1].
> +
> +[1] https://gitlab.kitware.com/cmake/cmake/issues/16291
> +
> +Signed-off-by: Qin Su <qsu@ti.com>
> +---
> + cmake/GlobalConfig.cmake | 28 ++++++++++++++++++++++++++++
> + 1 file changed, 28 insertions(+)
> + mode change 100644 => 100755 cmake/GlobalConfig.cmake
> +
> +diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
> +old mode 100644
> +new mode 100755
> +index 2dbeada..2b88c16
> +--- a/cmake/GlobalConfig.cmake
> ++++ b/cmake/GlobalConfig.cmake
> +@@ -47,6 +47,34 @@ elseif(${CMAKE_CXX_COMPILER_ID} STREQUAL MSVC)
> + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /EHsc /MP")
> + add_definitions(-DNOMINMAX=1 -DNO_STRICT=1)
> + endif()
> ++
> ++# Ensure that the default include system directories are added to the list of CMake implicit includes.
> ++# This workarounds an issue that happens when using GCC 6 and using system includes (-isystem).
> ++# For more details check: https://bugs.webkit.org/show_bug.cgi?id=161697
> ++macro(DETERMINE_GCC_SYSTEM_INCLUDE_DIRS _lang _compiler _flags _result)
> ++ file(WRITE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy" "\n")
> ++ separate_arguments(_buildFlags UNIX_COMMAND "${_flags}")
> ++ execute_process(COMMAND ${_compiler} ${_buildFlags} -v -E -x ${_lang} -dD dummy
> ++ WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/CMakeFiles OUTPUT_QUIET
> ++ ERROR_VARIABLE _gccOutput)
> ++ file(REMOVE "${CMAKE_BINARY_DIR}/CMakeFiles/dummy")
> ++ if ("${_gccOutput}" MATCHES "> search starts here[^\n]+\n *(.+) *\n *End of (search) list")
> ++ set(${_result} ${CMAKE_MATCH_1})
> ++ string(REPLACE "\n" " " ${_result} "${${_result}}")
> ++ separate_arguments(${_result})
> ++ endif ()
> ++endmacro()
> ++
> ++if (CMAKE_COMPILER_IS_GNUCC)
> ++ DETERMINE_GCC_SYSTEM_INCLUDE_DIRS("c" "${CMAKE_C_COMPILER}" "${CMAKE_C_FLAGS}" SYSTEM_INCLUDE_DIRS)
> ++ set(CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES ${CMAKE_C_IMPLICIT_INCLUDE_DIRECTORIES} ${SYSTEM_INCLUDE_DIRS})
> ++endif ()
> ++
> ++if (CMAKE_COMPILER_IS_GNUCXX)
> ++ DETERMINE_GCC_SYSTEM_INCLUDE_DIRS("c++" "${CMAKE_CXX_COMPILER}" "${CMAKE_CXX_FLAGS}" SYSTEM_INCLUDE_DIRS)
> ++ set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES ${CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES} ${SYSTEM_INCLUDE_DIRS})
> ++endif ()
> ++
> + if("${CMAKE_SYSTEM_NAME}" STREQUAL Android)
> + set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -llog")
> + set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -llog")
> +--
> +1.9.1
> +
> diff --git a/meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch b/meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch
> new file mode 100755
> index 0000000..50c2e1d
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/armnn/armnn/0002-enable-use-of-boost-shared-library.patch
> @@ -0,0 +1,37 @@
> +From 34a7ec821b11f7bed3dd644bf341cbaf6023516b Mon Sep 17 00:00:00 2001
> +From: Qin Su <qsu@ti.com>
> +Date: Tue, 11 Sep 2018 17:11:07 -0400
> +Subject: [PATCH] enable use of boost shared library
> +
> +Upstream-Status: Inappropriate [configuration]
> +This is a hack to modify hard coded configuration. If anything, it
> +should be made configurable.
> +
> +Signed-off-by: Qin Su <qsu@ti.com>
> +---
> + cmake/GlobalConfig.cmake | 6 ++++--
> + 1 file changed, 4 insertions(+), 2 deletions(-)
> + mode change 100644 => 100755 cmake/GlobalConfig.cmake
> +
> +diff --git a/cmake/GlobalConfig.cmake b/cmake/GlobalConfig.cmake
> +old mode 100644
> +new mode 100755
> +index 2dbeada..a5a1113
> +--- a/cmake/GlobalConfig.cmake
> ++++ b/cmake/GlobalConfig.cmake
> +@@ -96,8 +96,10 @@ endif()
> + set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules ${CMAKE_MODULE_PATH})
> +
> + # Boost
> +-add_definitions("-DBOOST_ALL_NO_LIB") # Turn off auto-linking as we specify the libs manually
> +-set(Boost_USE_STATIC_LIBS ON)
> ++#add_definitions("-DBOOST_ALL_NO_LIB") # Turn off auto-linking as we specify the libs manually
> ++#set(Boost_USE_STATIC_LIBS ON)
> ++add_definitions(-DBOOST_ALL_DYN_LINK) # use shared library
> ++set(Boost_USE_STATIC_LIBS OFF)
> + find_package(Boost 1.59 REQUIRED COMPONENTS unit_test_framework system filesystem log program_options)
> + include_directories(SYSTEM "${Boost_INCLUDE_DIR}")
> + link_directories(${Boost_LIBRARY_DIR})
> +--
> +1.9.1
> +
> diff --git a/meta-arago-extras/recipes-support/armnn/armnn_git.bb b/meta-arago-extras/recipes-support/armnn/armnn_git.bb
> new file mode 100644
> index 0000000..3bd4c82
> --- /dev/null
> +++ b/meta-arago-extras/recipes-support/armnn/armnn_git.bb
> @@ -0,0 +1,46 @@
> +SUMMARY = "ARM Neural Network SDK"
> +DESCRIPTION = "Linux software and tools to enable machine learning (Caffe/Tensorflow) workloads on power-efficient devices"
> +LICENSE = "MIT"
> +LIC_FILES_CHKSUM = "file://LICENSE;md5=3e14a924c16f7d828b8335a59da64074"
> +
> +PV = "20180502"
> +
> +BRANCH = "master"
> +SRCREV = "4c7098bfeab1ffe1cdc77f6c15548d3e73274746"
> +
> +S = "${WORKDIR}/git"
> +
> +inherit cmake
> +
> +SRC_URI = " \
> + git://github.com/ARM-software/armnn.git;branch=${BRANCH} \
> + file://0001-stdlib-issue-work-around.patch \
> + file://0002-enable-use-of-boost-shared-library.patch \
> +"
> +
> +DEPENDS = " \
> + boost \
> + protobuf \
> + stb \
> + arm-compute-library \
> + armnn-caffe \
> + armnn-tensorflow \
> +"
> +
> +EXTRA_OECMAKE=" \
> + -DBUILD_SHARED_LIBS=ON -DREGISTER_INSTALL_PREFIX=OFF \
> + -DARMCOMPUTE_ROOT=${STAGING_DIR_HOST}${datadir}/arm-compute-library \
> + -DARMCOMPUTE_BUILD_DIR=${STAGING_DIR_HOST}${datadir}/arm-compute-library/build \
> + -DCAFFE_GENERATED_SOURCES=${STAGING_DIR_HOST}${datadir}/armnn-caffe \
> + -DTF_GENERATED_SOURCES=${STAGING_DIR_HOST}${datadir}/armnn-tensorflow \
> + -DBUILD_CAFFE_PARSER=1 -DBUILD_TF_PARSER=1 \
> + -DARMCOMPUTENEON=1 \
> + -DBUILD_TESTS=1 -DPROFILING=1 \
> + -DTHIRD_PARTY_INCLUDE_DIRS=${STAGING_DIR_HOST}${includedir} \
> +"
> +
> +CXXFLAGS += "-fopenmp"
> +LIBS += "-larmpl_lp64_mp"
> +
> +FILES_${PN}-dev += "{libdir}/cmake/*"
> +INSANE_SKIP_${PN}-dev = "dev-elf"
> --
> 2.7.4
>
> _______________________________________________
> meta-arago mailing list
> meta-arago@arago-project.org
> http://arago-project.org/cgi-bin/mailman/listinfo/meta-arago
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2018-09-14 19:55 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-14 18:26 [rocko/master][PATCH v8 2/5] arm-compute-library: Machine Learning library for ARM Jacob Stiffler
2018-09-14 18:26 ` [rocko/master][PATCH v8 4/5] armnn-tensorflow: tensorflow protobuf files for building tensorflow models in armnn Jacob Stiffler
2018-09-14 18:26 ` [rocko/master][PATCH v8 5/5] armnn: ARM NN machine learning SDK Jacob Stiffler
2018-09-14 19:54 ` Denys Dmytriyenko
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.