Gentoo Archives: gentoo-commits

From: Alfredo Tupone <tupone@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/XNNPACK/files/, sci-libs/XNNPACK/
Date: Tue, 17 May 2022 12:41:18
Message-Id: 1652791245.e7664d69374ed92bde56cf31acd659474d92d080.tupone@gentoo
1 commit: e7664d69374ed92bde56cf31acd659474d92d080
2 Author: Alfredo Tupone <tupone <AT> gentoo <DOT> org>
3 AuthorDate: Tue May 17 12:40:45 2022 +0000
4 Commit: Alfredo Tupone <tupone <AT> gentoo <DOT> org>
5 CommitDate: Tue May 17 12:40:45 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e7664d69
7
8 sci-libs/XNNPACK: add to tree
9
10 Package-Manager: Portage-3.0.30, Repoman-3.0.3
11 Signed-off-by: Alfredo Tupone <tupone <AT> gentoo.org>
12
13 sci-libs/XNNPACK/Manifest | 1 +
14 sci-libs/XNNPACK/XNNPACK-2022.02.17.ebuild | 81 ++++++++++++++++++++++
15 .../XNNPACK/files/XNNPACK-2022.02.17-gentoo.patch | 12 ++++
16 sci-libs/XNNPACK/metadata.xml | 17 +++++
17 4 files changed, 111 insertions(+)
18
19 diff --git a/sci-libs/XNNPACK/Manifest b/sci-libs/XNNPACK/Manifest
20 new file mode 100644
21 index 000000000000..60b8d1d259f6
22 --- /dev/null
23 +++ b/sci-libs/XNNPACK/Manifest
24 @@ -0,0 +1 @@
25 +DIST XNNPACK-2022.02.17.tar.gz 6761154 BLAKE2B 59be5d9efe6f46d22bc41d3152e6cd3103f6dfafd94cdf3229b86ecf44a46175c613760f3de35c98a24ccdec1783f205c1eceaf21133706fedd5f384529748eb SHA512 aacbe907bb2b7429143f4ec612881fb709fe37e7b3a7f4fd68193dee6bbe82e17d20b2c6f5a8025845a09f8269c1dfeaebfc5bd64ef196fa376d82ac9a44cb8f
26
27 diff --git a/sci-libs/XNNPACK/XNNPACK-2022.02.17.ebuild b/sci-libs/XNNPACK/XNNPACK-2022.02.17.ebuild
28 new file mode 100644
29 index 000000000000..c4bb3f365e75
30 --- /dev/null
31 +++ b/sci-libs/XNNPACK/XNNPACK-2022.02.17.ebuild
32 @@ -0,0 +1,81 @@
33 +# Copyright 2022 Gentoo Authors
34 +# Distributed under the terms of the GNU General Public License v2
35 +
36 +EAPI=8
37 +inherit cmake
38 +
39 +CommitId=84b02ad55f089598aa42a557573dc4eb6f92f3ff
40 +
41 +DESCRIPTION="library of floating-point neural network inference operators"
42 +HOMEPAGE="https://github.com/google/XNNPACK/"
43 +SRC_URI="https://github.com/google/${PN}/archive/${CommitId}.tar.gz
44 + -> ${P}.tar.gz"
45 +
46 +LICENSE="MIT"
47 +SLOT="0"
48 +KEYWORDS="~amd64"
49 +IUSE="+assembly jit +memopt +sparse static-libs test"
50 +
51 +DEPEND="
52 + dev-libs/FP16
53 + dev-libs/FXdiv
54 +"
55 +RDEPEND="${DEPEND}
56 + dev-libs/cpuinfo
57 + dev-libs/pthreadpool
58 +"
59 +BDEPEND="test? ( dev-cpp/gtest )"
60 +RESTRICT="!test? ( test )"
61 +REQUIRED_USE="test? ( static-libs )"
62 +
63 +S="${WORKDIR}"/${PN}-${CommitId}
64 +
65 +PATCHES=(
66 + "${FILESDIR}"/${P}-gentoo.patch
67 +)
68 +
69 +src_prepare() {
70 + sed -i \
71 + -e "/PRIVATE fp16)/d" \
72 + -e "/PRIVATE fxdiv)/d" \
73 + -e "/PRIVATE clog)/d" \
74 + -e "/TARGET_LINK_LIBRARIES/s: fp16::" \
75 + CMakeLists.txt \
76 + || die
77 + dropTest=(
78 + "add-nd-test"
79 + "subtract-nd-test"
80 + "f32-velu-test"
81 + "qc8-dwconv-minmax-fp32-test"
82 + "qs8-dwconv-minmax-fp32-test"
83 + "qs8-vadd-minmax-test"
84 + "qs8-vaddc-minmax-test"
85 + "qu8-dwconv-minmax-fp32-test"
86 + "qu8-vadd-minmax-test"
87 + "qu8-vaddc-minmax-test"
88 + )
89 + for id in ${dropTest[@]}
90 + do
91 + sed -i \
92 + -e "/ADD_TEST(${id}/d" \
93 + CMakeLists.txt \
94 + || die
95 + done
96 +
97 + cmake_src_prepare
98 +}
99 +
100 +src_configure() {
101 + local mycmakeargs=(
102 + -DXNNPACK_BUILD_BENCHMARKS=OFF
103 + -DXNNPACK_USE_SYSTEM_LIBS=ON
104 + -DXNNPACK_BUILD_TESTS=$(usex test ON OFF)
105 + -DXNNPACK_LIBRARY_TYPE=$(usex static-libs static shared)
106 + -DXNNPACK_ENABLE_ASSEMBLY=$(usex assembly ON OFF)
107 + -DXNNPACK_ENABLE_JIT=$(usex jit ON OFF)
108 + -DXNNPACK_ENABLE_MEMOPT=$(usex memopt ON OFF)
109 + -DXNNPACK_ENABLE_SPARSE=$(usex sparse ON OFF)
110 + )
111 +
112 + cmake_src_configure
113 +}
114
115 diff --git a/sci-libs/XNNPACK/files/XNNPACK-2022.02.17-gentoo.patch b/sci-libs/XNNPACK/files/XNNPACK-2022.02.17-gentoo.patch
116 new file mode 100644
117 index 000000000000..f07ba08edf56
118 --- /dev/null
119 +++ b/sci-libs/XNNPACK/files/XNNPACK-2022.02.17-gentoo.patch
120 @@ -0,0 +1,12 @@
121 +--- a/CMakeLists.txt 2022-05-10 08:26:00.636788471 +0200
122 ++++ b/CMakeLists.txt 2022-05-10 08:26:57.097938381 +0200
123 +@@ -6696,9 +6696,6 @@
124 + # ---[ Build google test
125 + IF(NOT TARGET gtest)
126 + SET(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
127 +- ADD_SUBDIRECTORY(
128 +- "${GOOGLETEST_SOURCE_DIR}"
129 +- "${CMAKE_BINARY_DIR}/googletest")
130 + ENDIF()
131 +
132 + ADD_LIBRARY(gemm-microkernel-tester STATIC test/gemm-microkernel-tester.cc)
133
134 diff --git a/sci-libs/XNNPACK/metadata.xml b/sci-libs/XNNPACK/metadata.xml
135 new file mode 100644
136 index 000000000000..ddf909e2c6ee
137 --- /dev/null
138 +++ b/sci-libs/XNNPACK/metadata.xml
139 @@ -0,0 +1,17 @@
140 +<?xml version="1.0" encoding="UTF-8"?>
141 +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
142 +<pkgmetadata>
143 + <maintainer type="person">
144 + <email>tupone@g.o</email>
145 + <name>Tupone Alfredo</name>
146 + </maintainer>
147 + <use>
148 + <flag name="assembly">Build with assembly micro-kernels</flag>
149 + <flag name="jit">Build with JIT micro-kernels</flag>
150 + <flag name="memopt">Build with optimized memory allocation scheme</flag>
151 + <flag name="sparse">Build with graph rewriting for sparse inference</flag>
152 + </use>
153 + <upstream>
154 + <remote-id type="github">google/XNNPACK</remote-id>
155 + </upstream>
156 +</pkgmetadata>