[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#65835] [PATCH v2] gnu: tensorflow-lite: Update to 2.13.0
From: |
Andy Tai |
Subject: |
[bug#65835] [PATCH v2] gnu: tensorflow-lite: Update to 2.13.0 |
Date: |
Thu, 14 Sep 2023 22:20:55 -0700 |
* gnu/packages/machine-learning.scm: (tensorflow-lite):
Update to 2.13.0
[inputs]: Add gemmlowp
[native-inputs]: Remove gemmlowp-src
*
gnu/packages/patches/tensorflow-lite-disable-local-cmake-3rdparty-components.patch:
New file
* gnu/local.mk (dist_patch_DATA): Add it.
---
gnu/local.mk | 1 +
gnu/packages/machine-learning.scm | 49 ++++++++++---------
...able-local-cmake-3rdparty-components.patch | 28 +++++++++++
3 files changed, 55 insertions(+), 23 deletions(-)
create mode 100644
gnu/packages/patches/tensorflow-lite-disable-local-cmake-3rdparty-components.patch
diff --git a/gnu/local.mk b/gnu/local.mk
index 8862fbfbb9..0af5e1498b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2002,6 +2002,7 @@ dist_patch_DATA =
\
%D%/packages/patches/tcsh-fix-autotest.patch \
%D%/packages/patches/teensy-loader-cli-help.patch \
%D%/packages/patches/tensorflow-c-api-fix.patch \
+
%D%/packages/patches/tensorflow-lite-disable-local-cmake-3rdparty-components.patch
\
%D%/packages/patches/texinfo-headings-single.patch \
%D%/packages/patches/texinfo-5-perl-compat.patch \
%D%/packages/patches/telegram-desktop-allow-disable-libtgvoip.patch \
diff --git a/gnu/packages/machine-learning.scm
b/gnu/packages/machine-learning.scm
index fd0be8d500..bd94c9a540 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -2972,7 +2972,7 @@ (define-public tensorflow
(define-public tensorflow-lite
(package
(name "tensorflow-lite")
- (version "2.12.1")
+ (version "2.13.0")
(source
(origin
(method git-fetch)
@@ -2982,7 +2982,12 @@ (define-public tensorflow-lite
(file-name (git-file-name name version))
(sha256
(base32
- "0jkgljdagdqllnxygl35r5bh3f9qmbczymfj357gm9krh59g2kmd"))))
+ "07g6vlrs0aayrg2mfdl15gxg5dy103wx2xlqkran15dib40nkbj6"))
+ (patches
+ (search-patches
+ ;; patch to disable local cmake build code for 3rdparty
+ ;; componentas
+ "tensorflow-lite-disable-local-cmake-3rdparty-components.patch"))))
(build-system cmake-build-system)
(arguments
(list
@@ -3025,6 +3030,7 @@ (define-public tensorflow-lite
"-DTFLITE_ENABLE_XNNPACK=OFF"
;; Don't fetch the sources. We have these already
+ "-Dgemmlowp_POPULATED=TRUE"
"-Degl_headers_POPULATED=TRUE"
"-Dfp16_headers_POPULATED=TRUE"
"-Dopencl_headers_POPULATED=TRUE"
@@ -3037,7 +3043,8 @@ (define-public tensorflow-lite
"-DFFT2D_SOURCE_DIR=/tmp/fft2d"
"-DFARMHASH_SOURCE_DIR=/tmp/farmhash"
- "-Dgemmlowp_SOURCE_DIR=/tmp/gemmlowp")
+ ;"-Dgemmlowp_SOURCE_DIR=/tmp/gemmlowp"
+ (string-append "-Dgemmlowp_ROOT=" #$(this-package-input "gemmlowp")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
@@ -3067,11 +3074,7 @@ (define-public tensorflow-lite
(mkdir-p "/tmp/fft2d")
(with-directory-excursion "/tmp/fft2d"
(invoke "tar" "--strip-components=1"
- "-xf" (assoc-ref inputs "fft2d-src")))
-
- (copy-recursively (assoc-ref inputs "gemmlowp-src")
- "/tmp/gemmlowp/")))
-
+ "-xf" (assoc-ref inputs "fft2d-src")))))
(add-after 'build 'build-shared-library
(lambda* (#:key configure-flags #:allow-other-keys)
(mkdir-p "c")
@@ -3101,7 +3104,7 @@ (define-public tensorflow-lite
("eigen" ,eigen)
("fp16" ,fp16)
("flatbuffers-shared" ,flatbuffers-next-shared)
- ;;("gemmlowp" ,gemmlowp) ; TODO
+ ("gemmlowp" ,gemmlowp)
("mesa-headers" ,mesa-headers)
("neon2sse" ,neon2sse)
("nsync" ,nsync)
@@ -3117,19 +3120,19 @@ (define-public tensorflow-lite
(native-inputs
`(("pkg-config" ,pkg-config)
("googletest" ,googletest)
- ("gemmlowp-src"
- ;; The commit hash is taken from
- ;; "tensorflow/lite/tools/cmake/modules/gemmlowp.cmake".
- ,(let ((commit "fda83bdc38b118cc6b56753bd540caa49e570745"))
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/google/gemmlowp")
- (commit commit)))
- (file-name (git-file-name "gemmlowp" (string-take commit 8)))
- (sha256
- (base32
- "1sbp8kmr2azwlvfbzryy1frxi99jhsh1nc93bdbxdf8zdgpv0kxl")))))
+ ;("gemmlowp-src"
+ ; ;; The commit hash is taken from
+ ; ;; "tensorflow/lite/tools/cmake/modules/gemmlowp.cmake".
+ ; ,(let ((commit "fda83bdc38b118cc6b56753bd540caa49e570745"))
+ ; (origin
+ ; (method git-fetch)
+ ; (uri (git-reference
+ ; (url "https://github.com/google/gemmlowp")
+ ; (commit commit)))
+ ; (file-name (git-file-name "gemmlowp" (string-take commit 8)))
+ ; (sha256
+ ; (base32
+ ; "1sbp8kmr2azwlvfbzryy1frxi99jhsh1nc93bdbxdf8zdgpv0kxl")))))
("farmhash-src"
,(let ((commit "816a4ae622e964763ca0862d9dbd19324a1eaf45"))
(origin
@@ -3151,7 +3154,7 @@ (define-public tensorflow-lite
(sha256
(base32
"1jfflzi74fag9z4qmgwvp90aif4dpbr1657izmxlgvf4hy8fk9xd"))))))
- (home-page "https://tensorflow.org")
+ (home-page "https://www.tensorflow.org")
(synopsis "Machine learning framework")
(description
"TensorFlow is a flexible platform for building and training machine
diff --git
a/gnu/packages/patches/tensorflow-lite-disable-local-cmake-3rdparty-components.patch
b/gnu/packages/patches/tensorflow-lite-disable-local-cmake-3rdparty-components.patch
new file mode 100644
index 0000000000..677a6be8c3
--- /dev/null
+++
b/gnu/packages/patches/tensorflow-lite-disable-local-cmake-3rdparty-components.patch
@@ -0,0 +1,28 @@
+Patch to disable local cmake build code for 3rdparty componentas
+
+diff --git a/tensorflow/lite/CMakeLists.txt b/tensorflow/lite/CMakeLists.txt
+index 0476170e075..90abea00e8c 100644
+--- a/tensorflow/lite/CMakeLists.txt
++++ b/tensorflow/lite/CMakeLists.txt
+@@ -564,7 +564,7 @@ set(_ALL_TFLITE_HDRS ${_ALL_TFLITE_SRCS})
+ list(FILTER _ALL_TFLITE_HDRS INCLUDE REGEX ".*\\.h$")
+ target_include_directories(tensorflow-lite
+ PUBLIC $<BUILD_INTERFACE:${TENSORFLOW_SOURCE_DIR}>
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
+- ${CMAKE_BINARY_DIR}/gemmlowp
++ ${gemmlowp_ROOT}/include/gemmlowp
+ )
+ target_link_libraries(tensorflow-lite
+ PUBLIC
+diff --git a/tensorflow/lite/tools/cmake/modules/Findgemmlowp.cmake
b/tensorflow/lite/tools/cmake/modules/Findgemmlowp.cmake
+index 70331ad0a69..a9bd8a0f3bd 100644
+--- a/tensorflow/lite/tools/cmake/modules/Findgemmlowp.cmake
++++ b/tensorflow/lite/tools/cmake/modules/Findgemmlowp.cmake
+@@ -18,7 +18,7 @@
+ include(gemmlowp)
+ if(gemmlowp_POPULATED)
+ set(GEMMLOWP_FOUND TRUE)
+- get_target_property(GEMMLOWP_INCLUDE_DIRS gemmlowp INTERFACE_DIRECTORIES)
++ #get_target_property(GEMMLOWP_INCLUDE_DIRS gemmlowp INTERFACE_DIRECTORIES)
+ set(GEMMLOWP_LIBRARIES
+ gemmlowp
+ gemmlowp_fixedpoint
base-commit: 0c1aa354048f82023e6d2043bfecc4fd58bc9b58
--
2.41.0