Gentoo Archives: gentoo-commits

From: Jason Zaman <perfinion@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sci-libs/tensorflow/
Date: Fri, 05 Oct 2018 09:44:57
Message-Id: 1538732670.245e5a6c095ae507b221044f5504de053b6f78fb.perfinion@gentoo
1 commit: 245e5a6c095ae507b221044f5504de053b6f78fb
2 Author: Jason Zaman <perfinion <AT> gentoo <DOT> org>
3 AuthorDate: Fri Oct 5 09:23:23 2018 +0000
4 Commit: Jason Zaman <perfinion <AT> gentoo <DOT> org>
5 CommitDate: Fri Oct 5 09:44:30 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=245e5a6c
7
8 sci-libs/tensorflow: drop old RCs
9
10 Signed-off-by: Jason Zaman <perfinion <AT> gentoo.org>
11 Package-Manager: Portage-2.3.49, Repoman-2.3.10
12
13 sci-libs/tensorflow/Manifest | 4 -
14 sci-libs/tensorflow/tensorflow-1.11.0_rc0.ebuild | 433 ----------------------
15 sci-libs/tensorflow/tensorflow-1.11.0_rc2.ebuild | 435 -----------------------
16 3 files changed, 872 deletions(-)
17
18 diff --git a/sci-libs/tensorflow/Manifest b/sci-libs/tensorflow/Manifest
19 index 88f3f83a25b..ed42bbfd8da 100644
20 --- a/sci-libs/tensorflow/Manifest
21 +++ b/sci-libs/tensorflow/Manifest
22 @@ -24,10 +24,6 @@ DIST oourafft-20061228.tgz 72213 BLAKE2B 4a3ac2b4c0bc3275b5743df59241e1cdbd02003
23 DIST protobuf-3.6.0.tar.gz 4483224 BLAKE2B b6716d33c14ab98a05676a3369b4762179df88ed3e8c34b93075c12edc10213bf1c427a59a8840bc64b53365264021b8075a02a44478c998062cf04da95c0075 SHA512 46df0187e5c9e7d213930d916f6c89e7a41eca1aaac228d8f56e3f784598a9f323d7cc2d3cf20668ceb776d3237c4eccf685ef8d7808f09107fa8e441f9899f4
24 DIST tensorflow-1.10.0.tar.gz 24490786 BLAKE2B 2ecec19b2b2ebb2e292ec07fee458017aa3fcc4c1445e6c9419ea9bd37990a58607c8f3134c785be0e3ae098c332a734fb85717b2ecd781551a0c8f20ffca8f2 SHA512 a25257ad7e561c2040ba9dda699acb24b757e6d79c60324cab20d8d8a428fef79a06a3627a95a59e2c8408a094666b9aa6d8af1c5419fa8c238e1f5e10e9ec33
25 DIST tensorflow-1.11.0.tar.gz 25024790 BLAKE2B 74129fb1e6db0317fd45266dae7aa4fab811e1ebf0d093f3153684fa4465f4319cbf8fd50c6667f9c4ddbce5c100ee00151ec2873eca93ef7d5ebbc04ab6b965 SHA512 26e9542c43e11a663cbc5cf42859ae7b6dc0e92cfa88775fd4d1badba7f08c59b60c05010fd9f3ec501313be5c042f39b17323bb4753babf365ba2a48af836c2
26 -DIST tensorflow-1.11.0_rc0.tar.gz 25032294 BLAKE2B 7a99630445eb51db39c9a0b948dc04b63d48a55cf56e96f431a597695bfc9f36701b42ba9de3bcbb4134661f583fec2f2068a396a559b422806b973b149e62f0 SHA512 1f537188338d09fb63705d8d1eb9e6f6e89274ded5d16f165f63ff97d6e1f534d7e9dc412fb38e00d834f8ff5ec5f00a6fa5ab464ba0ab47b501916cb8828d7f
27 -DIST tensorflow-1.11.0_rc2.tar.gz 25032827 BLAKE2B 66235ac6c07f9855143a669716c5937badf225e4c7e656b1d0f205f00d387a197cf72bb887b28856e7a162d27b5886508d39a7004de0c204769edb8c5a94367b SHA512 6221ae7bf4f4406993428b02a5e98af846d9e5b222c2f155a89d5c7609a0dbdd6df4c93d9729a3cb57a0682c422be4fe144f47738deb11498590f35cbb273441
28 DIST tensorflow-patches-1.10.0.tar.bz2 4032 BLAKE2B 8588deec74179d8044af631de8e651491cc713553ee15ece9dff5052bd95b10924bdbe4301453f00d0f2fccd5d595d496b48fe45b0259837653b2de9e1898ab9 SHA512 1f57995ca9b3278735636cc42c88dc45558fa6a1d656108293f8df3fd9961d75f5e979bf0a9909136134e1cdaab41a34f83e605b48b23dddf17a6b1be684117b
29 DIST tensorflow-patches-1.11.0.tar.bz2 11013 BLAKE2B 929cb9fee5e6b63f00341351908d3050c676670d9cc2c1241bd2e3c86601704a7495ab598b992718f0b51fc369e33e7c646bc5db3ba3b86b18326b1c2d2974a8 SHA512 76a94c9444e1d984afaf080222d430032636204d05a5e3ff5530012dfa1eba78619dd2a2942343ccc2f7fc489eb8c6f51fddd0b84cb2c2db645b2b914cc61f80
30 -DIST tensorflow-patches-1.11.0_rc0.tar.bz2 10103 BLAKE2B 66c9e8838f25be13851be3265af880a22355d0e8eb2cc297fff2118df1d6070bbbb216631e522f704a0d41d4029742f073a76acb01bbf150d827e69c9f6f5fc5 SHA512 05c3e7c1dfe50716b8043d7b1febf7a4f3e641c65b9c778a2fe0486ac0e9c091d50dba1c8e3c2b9417758ce8181688bb47ec0eb7804f8aa50726d52cfd202a8b
31 -DIST tensorflow-patches-1.11.0_rc2.tar.bz2 11013 BLAKE2B 929cb9fee5e6b63f00341351908d3050c676670d9cc2c1241bd2e3c86601704a7495ab598b992718f0b51fc369e33e7c646bc5db3ba3b86b18326b1c2d2974a8 SHA512 76a94c9444e1d984afaf080222d430032636204d05a5e3ff5530012dfa1eba78619dd2a2942343ccc2f7fc489eb8c6f51fddd0b84cb2c2db645b2b914cc61f80
32 DIST tensorflow-python-license.txt 45132 BLAKE2B 1f572a06eeb4a58a5563b87a2db381a6e9eb0195cf1d006bda0d3da158e62a1e67e889a7d3d0da83d8609c0d048887bcbbd0d7056fd8e4f56b654047f36936fa SHA512 1b8c2f9733fcf27d560879418c366b5c3e44420d42adb3b857ee741793ddc75ad18324b016909457e5311f2143593392ce4404d12962f076e62f6036afbb521e
33
34 diff --git a/sci-libs/tensorflow/tensorflow-1.11.0_rc0.ebuild b/sci-libs/tensorflow/tensorflow-1.11.0_rc0.ebuild
35 deleted file mode 100644
36 index f0ce2845ea8..00000000000
37 --- a/sci-libs/tensorflow/tensorflow-1.11.0_rc0.ebuild
38 +++ /dev/null
39 @@ -1,433 +0,0 @@
40 -# Copyright 1999-2018 Gentoo Foundation
41 -# Distributed under the terms of the GNU General Public License v2
42 -
43 -EAPI=6
44 -
45 -DISTUTILS_OPTIONAL=1
46 -PYTHON_COMPAT=( python2_7 python3_6 )
47 -MY_PV=${PV/_rc/-rc}
48 -MY_P=${PN}-${MY_PV}
49 -
50 -inherit check-reqs cuda distutils-r1 eapi7-ver multiprocessing toolchain-funcs
51 -
52 -DESCRIPTION="Computation framework using data flow graphs for scalable machine learning"
53 -HOMEPAGE="https://www.tensorflow.org/"
54 -
55 -LICENSE="Apache-2.0"
56 -SLOT="0"
57 -KEYWORDS="~amd64"
58 -IUSE="cuda jemalloc mpi +python +system-libs"
59 -CPU_USE_FLAGS_X86="sse sse2 sse3 sse4_1 sse4_2 avx avx2 fma3 fma4"
60 -for i in $CPU_USE_FLAGS_X86; do
61 - IUSE+=" cpu_flags_x86_$i"
62 -done
63 -
64 -# distfiles that bazel uses for the workspace, will be copied to basel-distdir
65 -bazel_external_uris="
66 - http://www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz -> oourafft-20061228.tgz
67 - https://bitbucket.org/eigen/eigen/get/fd6845384b86.tar.gz -> eigen-fd6845384b86.tar.gz
68 - https://github.com/abseil/abseil-cpp/archive/f0f15c2778b0e4959244dd25e63f445a455870f5.tar.gz -> abseil-cpp-f0f15c2778b0e4959244dd25e63f445a455870f5.tar.gz
69 - https://github.com/bazelbuild/rules_closure/archive/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz -> bazelbuild-rules_closure-dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz
70 - https://github.com/google/double-conversion/archive/3992066a95b823efc8ccc1baf82a1cfc73f6e9b8.zip -> double-conversion-3992066a95b823efc8ccc1baf82a1cfc73f6e9b8.zip
71 - https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz
72 - https://github.com/google/gemmlowp/archive/38ebac7b059e84692f53e5938f97a9943c120d98.zip -> gemmlowp-38ebac7b059e84692f53e5938f97a9943c120d98.zip
73 - https://github.com/google/highwayhash/archive/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz -> highwayhash-fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz
74 - cuda? (
75 - https://github.com/nvidia/nccl/archive/03d856977ecbaac87e598c0c4bafca96761b9ac7.tar.gz -> nvidia-nccl-03d856977ecbaac87e598c0c4bafca96761b9ac7.tar.gz
76 - https://github.com/NVlabs/cub/archive/1.8.0.zip -> cub-1.8.0.zip
77 - )
78 - python? (
79 - https://github.com/intel/ARM_NEON_2_x86_SSE/archive/0f77d9d182265259b135dad949230ecbf1a2633d.tar.gz -> ARM_NEON_2_x86_SSE-0f77d9d182265259b135dad949230ecbf1a2633d.tar.gz
80 - https://mirror.bazel.build/docs.python.org/2.7/_sources/license.txt -> tensorflow-python-license.txt
81 - https://pypi.python.org/packages/5c/78/ff794fcae2ce8aa6323e789d1f8b3b7765f601e7702726f430e814822b96/gast-0.2.0.tar.gz
82 - https://pypi.python.org/packages/bc/cc/3cdb0a02e7e96f6c70bd971bc8a90b8463fda83e264fa9c5c1c98ceabd81/backports.weakref-1.0rc1.tar.gz
83 - !system-libs? (
84 - https://github.com/abseil/abseil-py/archive/pypi-v0.2.2.tar.gz -> abseil-py-0.2.2.tar.gz
85 - https://github.com/googleapis/googleapis/archive/f81082ea1e2f85c43649bee26e0d9871d4b41cdb.zip -> googleapis-f81082ea1e2f85c43649bee26e0d9871d4b41cdb.zip
86 - https://github.com/GoogleCloudPlatform/google-cloud-cpp/archive/f875700a023bdd706333cde45aee8758b272c357.tar.gz -> google-cloud-cpp-f875700a023bdd706333cde45aee8758b272c357.tar.gz
87 - https://github.com/google/boringssl/archive/a0fb951d2a26a8ee746b52f3ba81ab011a0af778.tar.gz -> boringssl-a0fb951d2a26a8ee746b52f3ba81ab011a0af778.tar.gz
88 - )
89 - )
90 - !system-libs? (
91 - https://github.com/google/protobuf/archive/v3.6.0.tar.gz -> protobuf-3.6.0.tar.gz
92 - )"
93 -
94 -SRC_URI="https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz
95 - https://dev.gentoo.org/~perfinion/patches/tensorflow-patches-${PVR}.tar.bz2
96 - ${bazel_external_uris}"
97 -
98 -RDEPEND="
99 - app-arch/snappy
100 - dev-db/lmdb
101 - dev-db/sqlite
102 - >=dev-libs/jsoncpp-1.8.4
103 - dev-libs/libpcre
104 - dev-libs/nsync
105 - >=dev-libs/protobuf-3.6.0
106 - >=dev-libs/re2-0.2018.04.01
107 - media-libs/giflib
108 - media-libs/libjpeg-turbo
109 - media-libs/libpng:0
110 - >=net-libs/grpc-1.13.0
111 - net-misc/curl
112 - sys-libs/zlib
113 - cuda? (
114 - >=dev-util/nvidia-cuda-toolkit-8.0[profiler]
115 - >=dev-libs/cudnn-6.0
116 - )
117 - jemalloc? ( >=dev-libs/jemalloc-4.4.0 )
118 - mpi? ( virtual/mpi )
119 - python? (
120 - ${PYTHON_DEPS}
121 - >=dev-libs/flatbuffers-1.8.0
122 - dev-python/absl-py[${PYTHON_USEDEP}]
123 - dev-python/astor[${PYTHON_USEDEP}]
124 - dev-python/numpy[${PYTHON_USEDEP}]
125 - >=dev-python/protobuf-python-3.6.0[${PYTHON_USEDEP}]
126 - dev-python/six[${PYTHON_USEDEP}]
127 - dev-python/termcolor[${PYTHON_USEDEP}]
128 - >=net-libs/grpc-1.13.0[python,${PYTHON_USEDEP}]
129 - sci-libs/keras-applications[${PYTHON_USEDEP}]
130 - sci-libs/keras-preprocessing[${PYTHON_USEDEP}]
131 - virtual/python-enum34[${PYTHON_USEDEP}]
132 - system-libs? (
133 - net-libs/google-cloud-cpp
134 - )
135 - )
136 - system-libs? (
137 - dev-libs/openssl:0
138 - )"
139 -DEPEND="${RDEPEND}
140 - !python? ( dev-lang/python )
141 - app-arch/unzip
142 - >=dev-util/bazel-0.16.0
143 - dev-java/java-config
144 - dev-python/mock
145 - dev-lang/nasm
146 - dev-lang/swig
147 - dev-python/cython"
148 -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
149 -
150 -S="${WORKDIR}/${MY_P}"
151 -
152 -DOCS=( AUTHORS CONTRIBUTING.md ISSUE_TEMPLATE.md README.md RELEASE.md )
153 -CHECKREQS_MEMORY="5G"
154 -CHECKREQS_DISK_BUILD="5G"
155 -
156 -bazel-get-cpu-flags() {
157 - local i f=()
158 - # Keep this list in sync with tensorflow/core/platform/cpu_feature_guard.cc.
159 - for i in sse sse2 sse3 sse4_1 sse4_2 avx avx2 fma4; do
160 - use cpu_flags_x86_${i} && f+=( -m${i/_/.} )
161 - done
162 - use cpu_flags_x86_fma3 && f+=( -mfma )
163 - echo "${f[*]}"
164 -}
165 -
166 -bazel-get-flags() {
167 - local i fs=()
168 - for i in ${CFLAGS} $(bazel-get-cpu-flags); do
169 - fs+=( "--copt=${i}" "--host_copt=${i}" )
170 - done
171 - for i in ${CXXFLAGS} $(bazel-get-cpu-flags); do
172 - fs+=( "--cxxopt=${i}" "--host_cxxopt=${i}" )
173 - done
174 - for i in ${CPPFLAGS}; do
175 - fs+=( "--copt=${i}" "--host_copt=${i}" )
176 - fs+=( "--cxxopt=${i}" "--host_cxxopt=${i}" )
177 - done
178 - for i in ${LDFLAGS}; do
179 - fs+=( "--linkopt=${i}" "--host_linkopt=${i}" )
180 - done
181 - echo "${fs[*]}"
182 -}
183 -
184 -setup_bazelrc() {
185 - if [[ -f "${T}/bazelrc" ]]; then
186 - return
187 - fi
188 -
189 - # F: fopen_wr
190 - # P: /proc/self/setgroups
191 - # Even with standalone enabled, the Bazel sandbox binary is run for feature test:
192 - # https://github.com/bazelbuild/bazel/blob/7b091c1397a82258e26ab5336df6c8dae1d97384/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedSpawnRunner.java#L61
193 - # https://github.com/bazelbuild/bazel/blob/76555482873ffcf1d32fb40106f89231b37f850a/src/main/tools/linux-sandbox-pid1.cc#L113
194 - addpredict /proc
195 -
196 - mkdir -p "${T}/bazel-cache" || die
197 - mkdir -p "${T}/bazel-distdir" || die
198 -
199 - cat > "${T}/bazelrc" <<-EOF || die
200 - startup --batch
201 -
202 - # dont strip HOME, portage sets a temp per-package dir
203 - build --action_env HOME
204 -
205 - # make bazel respect MAKEOPTS
206 - build --jobs=$(makeopts_jobs) $(bazel-get-flags)
207 - build --compilation_mode=opt --host_compilation_mode=opt
208 -
209 - # Use standalone strategy to deactivate the bazel sandbox, since it
210 - # conflicts with FEATURES=sandbox.
211 - build --spawn_strategy=standalone --genrule_strategy=standalone
212 - test --spawn_strategy=standalone --genrule_strategy=standalone
213 -
214 - build --strip=never
215 - build --verbose_failures --noshow_loading_progress
216 - test --verbose_test_summary --verbose_failures --noshow_loading_progress
217 -
218 - # make bazel only fetch distfiles from the cache
219 - fetch --repository_cache=${T}/bazel-cache/ --distdir=${T}/bazel-distdir/
220 - build --repository_cache=${T}/bazel-cache/ --distdir=${T}/bazel-distdir/
221 -
222 - build --define=PREFIX=${EPREFIX%/}/usr
223 - build --define=LIBDIR=\$(PREFIX)/$(get_libdir)
224 -
225 - EOF
226 -}
227 -
228 -ebazel() {
229 - # Use different build folders for each multibuild variant.
230 - local base_suffix="${MULTIBUILD_VARIANT+-}${MULTIBUILD_VARIANT}"
231 - local output_base="${WORKDIR}/bazel-base${base_suffix}"
232 - mkdir -p "${output_base}" || die
233 -
234 - einfo Running: bazel --output_base="${output_base}" "$@"
235 - bazel --output_base="${output_base}" $@ || die
236 -}
237 -
238 -load_distfiles() {
239 - # Populate the bazel distdir to fetch from since it cannot use the network
240 - # Bazel looks in distdir but will only look for the original filename, not
241 - # the possibly renamed one that portage downloaded. If the line has -> we
242 - # need to rename it back, otherwise a simple copy is fine.
243 -
244 - local src dst uri rename
245 -
246 - while read uri rename dst; do
247 - src="${uri##*/}"
248 - [[ -z $src ]] && continue
249 - if [[ "$rename" != "->" ]]; then
250 - dst="${src}"
251 - fi
252 -
253 - [[ ${A} =~ ${dst} ]] || continue
254 -
255 - if [[ "$dst" == "$src" ]]; then
256 - einfo "Copying $dst to bazel distdir ..."
257 - else
258 - einfo "Copying $dst to bazel distdir $src ..."
259 - fi
260 - ln -s "${DISTDIR}/${dst}" "${T}/bazel-distdir/${src}" || die
261 - done <<< "$(sed -re 's/!?[A-Za-z]+\?\s+\(\s*//g; s/\s+\)//g' <<< "${bazel_external_uris}")"
262 -}
263 -
264 -pkg_setup() {
265 - check-reqs_pkg_setup
266 -}
267 -
268 -src_unpack() {
269 - # Only unpack the main distfile
270 - unpack "${P}.tar.gz"
271 - unpack tensorflow-patches-${PVR}.tar.bz2
272 -}
273 -
274 -src_prepare() {
275 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
276 -
277 - setup_bazelrc
278 - load_distfiles
279 -
280 - eapply "${WORKDIR}"/patches/*.patch
281 -
282 - default
283 - use python && python_copy_sources
284 -
285 - if use cuda; then
286 - local i
287 - for i in /dev/nvidia*; do
288 - addpredict $i
289 - done
290 - fi
291 -}
292 -
293 -src_configure() {
294 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
295 -
296 - do_configure() {
297 - export CC_OPT_FLAGS=" "
298 - export TF_NEED_JEMALLOC=$(usex jemalloc 1 0)
299 - export TF_NEED_GCP=0
300 - export TF_NEED_HDFS=0
301 - export TF_NEED_S3=0
302 - export TF_NEED_AWS=0
303 - export TF_NEED_KAFKA=0
304 - export TF_ENABLE_XLA=0
305 - export TF_NEED_GDR=0
306 - export TF_NEED_VERBS=0
307 - export TF_NEED_NGRAPH=0
308 - export TF_NEED_OPENCL_SYCL=0
309 - export TF_NEED_OPENCL=0
310 - export TF_NEED_COMPUTECPP=0
311 - export TF_NEED_MKL=0
312 - export TF_NEED_MPI=$(usex mpi 1 0)
313 - export TF_SET_ANDROID_WORKSPACE=0
314 -
315 - if use python; then
316 - python_export PYTHON_SITEDIR
317 - export PYTHON_BIN_PATH="${PYTHON}"
318 - export PYTHON_LIB_PATH="${PYTHON_SITEDIR}"
319 - else
320 - export PYTHON_BIN_PATH="$(which python)"
321 - export PYTHON_LIB_PATH="$(python -c 'from distutils.sysconfig import *; print(get_python_lib())')"
322 - fi
323 -
324 - export TF_NEED_CUDA=$(usex cuda 1 0)
325 - export TF_DOWNLOAD_CLANG=0
326 - export TF_CUDA_CLANG=0
327 - export TF_NEED_TENSORRT=0
328 - if use cuda; then
329 - export CUDA_TOOLKIT_PATH="${EPREFIX%/}/opt/cuda"
330 - export CUDNN_INSTALL_PATH="${EPREFIX%/}/opt/cuda"
331 - export GCC_HOST_COMPILER_PATH="$(cuda_gccdir)/$(tc-getCC)"
332 - export TF_NCCL_VERSION="1"
333 -
334 - TF_CUDA_VERSION="$(best_version dev-util/nvidia-cuda-toolkit)"
335 - TF_CUDA_VERSION="${TF_CUDA_VERSION##*cuda-toolkit-}"
336 - export TF_CUDA_VERSION="$(ver_cut 1-2 ${TF_CUDA_VERSION})"
337 - einfo "Setting CUDA version: $TF_CUDA_VERSION"
338 -
339 - TF_CUDNN_VERSION="$(best_version dev-libs/cudnn)"
340 - TF_CUDNN_VERSION="${TF_CUDNN_VERSION##*cudnn-}"
341 - export TF_CUDNN_VERSION="$(ver_cut 1-2 ${TF_CUDNN_VERSION})"
342 - einfo "Setting CUDNN version: $TF_CUDNN_VERSION"
343 - fi
344 -
345 - local SYSLIBS=(
346 - astor_archive
347 - com_googlesource_code_re2
348 - curl
349 - cython
350 - flatbuffers
351 - gif_archive
352 - grpc
353 - jemalloc
354 - jpeg
355 - jsoncpp_git
356 - lmdb
357 - nasm
358 - nsync
359 - org_sqlite
360 - pcre
361 - png_archive
362 - six_archive
363 - snappy
364 - swig
365 - termcolor_archive
366 - zlib_archive
367 - )
368 - if use system-libs; then
369 - SYSLIBS+=(
370 - absl_py
371 - astor_archive
372 - boringssl
373 - com_github_googleapis_googleapis
374 - com_github_googlecloudplatform_google_cloud_cpp
375 - com_google_protobuf
376 - com_google_protobuf_cc
377 - protobuf_archive
378 - )
379 - fi
380 -
381 - SYSLIBS="${SYSLIBS[@]}"
382 - export TF_SYSTEM_LIBS="${SYSLIBS// /,}"
383 -
384 - # Only one bazelrc is read, import our one before configure sets its options
385 - echo "import ${T}/bazelrc" >> ./.bazelrc
386 -
387 - # This is not autoconf
388 - ./configure || die
389 - }
390 - if use python; then
391 - python_foreach_impl run_in_build_dir do_configure
392 - else
393 - do_configure
394 - fi
395 -}
396 -
397 -src_compile() {
398 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
399 -
400 - if use python; then
401 - python_setup
402 - local MULTIBUILD_VARIANT="${EPYTHON/./_}"
403 - cd "${S}-${MULTIBUILD_VARIANT}" || die
404 - fi
405 -
406 - # fail early if anything is missing
407 - ebazel build --nobuild \
408 - //tensorflow:libtensorflow_framework.so \
409 - //tensorflow:libtensorflow.so \
410 - //tensorflow:libtensorflow_cc.so \
411 - $(usex python '//tensorflow/tools/pip_package:build_pip_package' '')
412 -
413 - ebazel build \
414 - //tensorflow:libtensorflow_framework.so \
415 - //tensorflow:libtensorflow.so
416 - ebazel build //tensorflow:libtensorflow_cc.so
417 -
418 - do_compile() {
419 - ebazel build //tensorflow/tools/pip_package:build_pip_package
420 - }
421 - use python && python_foreach_impl run_in_build_dir do_compile
422 -}
423 -
424 -src_install() {
425 - local i j
426 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
427 -
428 - do_install() {
429 - einfo "Installing ${EPYTHON} files"
430 - local srcdir="${T}/src-${MULTIBUILD_VARIANT}"
431 - mkdir -p "${srcdir}" || die
432 - bazel-bin/tensorflow/tools/pip_package/build_pip_package --src "${srcdir}" || die
433 - cd "${srcdir}" || die
434 - esetup.py install
435 -
436 - # libtensorflow_framework.so is in /usr/lib already
437 - python_export PYTHON_SITEDIR PYTHON_SCRIPTDIR
438 - rm -f "${D}/${PYTHON_SITEDIR}/${PN}/lib${PN}_framework.so" "${D}/${PYTHON_SCRIPTDIR}/tensorboard" || die
439 - python_optimize
440 - }
441 -
442 - if use python; then
443 - python_foreach_impl run_in_build_dir do_install
444 -
445 - # Symlink to python-exec scripts
446 - for i in "${ED}"/usr/lib/python-exec/*/*; do
447 - n="${i##*/}"
448 - [[ -e "${ED}/usr/bin/${n}" ]] || dosym ../lib/python-exec/python-exec2 "/usr/bin/${n}"
449 - done
450 -
451 - python_setup
452 - local MULTIBUILD_VARIANT="${EPYTHON/./_}"
453 - cd "${S}-${MULTIBUILD_VARIANT}" || die
454 - fi
455 -
456 - einfo "Installing headers"
457 - ebazel build //tensorflow:install_headers
458 - insinto /usr/include/${PN}/
459 - doins -r bazel-genfiles/tensorflow/include/*
460 -
461 - einfo "Installing libs"
462 - # Generate pkg-config file
463 - ${PN}/c/generate-pc.sh --prefix="${EPREFIX}"/usr --libdir=$(get_libdir) --version=${MY_PV} || die
464 - insinto /usr/$(get_libdir)/pkgconfig
465 - doins ${PN}.pc
466 -
467 - dolib.so bazel-bin/tensorflow/lib${PN}_framework.so
468 - dolib.so bazel-bin/tensorflow/lib${PN}.so
469 - dolib.so bazel-bin/tensorflow/lib${PN}_cc.so
470 -
471 - einstalldocs
472 -}
473
474 diff --git a/sci-libs/tensorflow/tensorflow-1.11.0_rc2.ebuild b/sci-libs/tensorflow/tensorflow-1.11.0_rc2.ebuild
475 deleted file mode 100644
476 index 2d82b286c6e..00000000000
477 --- a/sci-libs/tensorflow/tensorflow-1.11.0_rc2.ebuild
478 +++ /dev/null
479 @@ -1,435 +0,0 @@
480 -# Copyright 1999-2018 Gentoo Foundation
481 -# Distributed under the terms of the GNU General Public License v2
482 -
483 -EAPI=7
484 -
485 -DISTUTILS_OPTIONAL=1
486 -PYTHON_COMPAT=( python2_7 python3_6 )
487 -MY_PV=${PV/_rc/-rc}
488 -MY_P=${PN}-${MY_PV}
489 -
490 -inherit check-reqs cuda distutils-r1 multiprocessing toolchain-funcs
491 -
492 -DESCRIPTION="Computation framework using data flow graphs for scalable machine learning"
493 -HOMEPAGE="https://www.tensorflow.org/"
494 -
495 -LICENSE="Apache-2.0"
496 -SLOT="0"
497 -KEYWORDS="~amd64"
498 -IUSE="cuda jemalloc mpi +python +system-libs"
499 -CPU_USE_FLAGS_X86="sse sse2 sse3 sse4_1 sse4_2 avx avx2 fma3 fma4"
500 -for i in $CPU_USE_FLAGS_X86; do
501 - IUSE+=" cpu_flags_x86_$i"
502 -done
503 -
504 -# distfiles that bazel uses for the workspace, will be copied to basel-distdir
505 -bazel_external_uris="
506 - http://www.kurims.kyoto-u.ac.jp/~ooura/fft.tgz -> oourafft-20061228.tgz
507 - https://bitbucket.org/eigen/eigen/get/fd6845384b86.tar.gz -> eigen-fd6845384b86.tar.gz
508 - https://github.com/abseil/abseil-cpp/archive/f0f15c2778b0e4959244dd25e63f445a455870f5.tar.gz -> abseil-cpp-f0f15c2778b0e4959244dd25e63f445a455870f5.tar.gz
509 - https://github.com/bazelbuild/rules_closure/archive/dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz -> bazelbuild-rules_closure-dbb96841cc0a5fb2664c37822803b06dab20c7d1.tar.gz
510 - https://github.com/google/double-conversion/archive/3992066a95b823efc8ccc1baf82a1cfc73f6e9b8.zip -> double-conversion-3992066a95b823efc8ccc1baf82a1cfc73f6e9b8.zip
511 - https://github.com/google/farmhash/archive/816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz -> farmhash-816a4ae622e964763ca0862d9dbd19324a1eaf45.tar.gz
512 - https://github.com/google/gemmlowp/archive/38ebac7b059e84692f53e5938f97a9943c120d98.zip -> gemmlowp-38ebac7b059e84692f53e5938f97a9943c120d98.zip
513 - https://github.com/google/highwayhash/archive/fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz -> highwayhash-fd3d9af80465e4383162e4a7c5e2f406e82dd968.tar.gz
514 - cuda? (
515 - https://github.com/nvidia/nccl/archive/03d856977ecbaac87e598c0c4bafca96761b9ac7.tar.gz -> nvidia-nccl-03d856977ecbaac87e598c0c4bafca96761b9ac7.tar.gz
516 - https://github.com/NVlabs/cub/archive/1.8.0.zip -> cub-1.8.0.zip
517 - )
518 - python? (
519 - https://github.com/intel/ARM_NEON_2_x86_SSE/archive/0f77d9d182265259b135dad949230ecbf1a2633d.tar.gz -> ARM_NEON_2_x86_SSE-0f77d9d182265259b135dad949230ecbf1a2633d.tar.gz
520 - https://mirror.bazel.build/docs.python.org/2.7/_sources/license.txt -> tensorflow-python-license.txt
521 - https://pypi.python.org/packages/bc/cc/3cdb0a02e7e96f6c70bd971bc8a90b8463fda83e264fa9c5c1c98ceabd81/backports.weakref-1.0rc1.tar.gz
522 - !system-libs? (
523 - https://github.com/abseil/abseil-py/archive/pypi-v0.2.2.tar.gz -> abseil-py-0.2.2.tar.gz
524 - https://github.com/googleapis/googleapis/archive/f81082ea1e2f85c43649bee26e0d9871d4b41cdb.zip -> googleapis-f81082ea1e2f85c43649bee26e0d9871d4b41cdb.zip
525 - https://github.com/GoogleCloudPlatform/google-cloud-cpp/archive/f875700a023bdd706333cde45aee8758b272c357.tar.gz -> google-cloud-cpp-f875700a023bdd706333cde45aee8758b272c357.tar.gz
526 - https://github.com/google/boringssl/archive/a0fb951d2a26a8ee746b52f3ba81ab011a0af778.tar.gz -> boringssl-a0fb951d2a26a8ee746b52f3ba81ab011a0af778.tar.gz
527 - https://pypi.python.org/packages/5c/78/ff794fcae2ce8aa6323e789d1f8b3b7765f601e7702726f430e814822b96/gast-0.2.0.tar.gz
528 - )
529 - )
530 - !system-libs? (
531 - https://github.com/google/protobuf/archive/v3.6.0.tar.gz -> protobuf-3.6.0.tar.gz
532 - )"
533 -
534 -SRC_URI="https://github.com/${PN}/${PN}/archive/v${MY_PV}.tar.gz -> ${P}.tar.gz
535 - https://dev.gentoo.org/~perfinion/patches/tensorflow-patches-${PVR}.tar.bz2
536 - ${bazel_external_uris}"
537 -
538 -RDEPEND="
539 - app-arch/snappy
540 - dev-db/lmdb
541 - dev-db/sqlite
542 - >=dev-libs/jsoncpp-1.8.4
543 - dev-libs/libpcre
544 - dev-libs/nsync
545 - >=dev-libs/protobuf-3.6.0
546 - >=dev-libs/re2-0.2018.04.01
547 - media-libs/giflib
548 - media-libs/libjpeg-turbo
549 - media-libs/libpng:0
550 - >=net-libs/grpc-1.13.0
551 - net-misc/curl
552 - sys-libs/zlib
553 - cuda? (
554 - >=dev-util/nvidia-cuda-toolkit-8.0[profiler]
555 - >=dev-libs/cudnn-6.0
556 - )
557 - jemalloc? ( >=dev-libs/jemalloc-4.4.0 )
558 - mpi? ( virtual/mpi )
559 - python? (
560 - ${PYTHON_DEPS}
561 - >=dev-libs/flatbuffers-1.8.0
562 - dev-python/absl-py[${PYTHON_USEDEP}]
563 - dev-python/astor[${PYTHON_USEDEP}]
564 - dev-python/gast[${PYTHON_USEDEP}]
565 - dev-python/numpy[${PYTHON_USEDEP}]
566 - >=dev-python/protobuf-python-3.6.0[${PYTHON_USEDEP}]
567 - dev-python/six[${PYTHON_USEDEP}]
568 - dev-python/termcolor[${PYTHON_USEDEP}]
569 - >=net-libs/grpc-1.13.0[python,${PYTHON_USEDEP}]
570 - sci-libs/keras-applications[${PYTHON_USEDEP}]
571 - sci-libs/keras-preprocessing[${PYTHON_USEDEP}]
572 - virtual/python-enum34[${PYTHON_USEDEP}]
573 - system-libs? (
574 - net-libs/google-cloud-cpp
575 - )
576 - )
577 - system-libs? (
578 - dev-libs/openssl:0
579 - )"
580 -DEPEND="${RDEPEND}
581 - dev-python/mock"
582 -BDEPEND="
583 - app-arch/unzip
584 - >=dev-libs/protobuf-3.6.0
585 - >=dev-util/bazel-0.16.0
586 - dev-java/java-config
587 - dev-python/mock
588 - dev-lang/swig
589 - dev-python/cython
590 - cuda? (
591 - >=dev-util/nvidia-cuda-toolkit-8.0[profiler]
592 - )
593 - !python? ( dev-lang/python )
594 - python? (
595 - >=net-libs/grpc-1.13.0[tools]
596 - )"
597 -REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"
598 -
599 -S="${WORKDIR}/${MY_P}"
600 -
601 -DOCS=( AUTHORS CONTRIBUTING.md ISSUE_TEMPLATE.md README.md RELEASE.md )
602 -CHECKREQS_MEMORY="5G"
603 -CHECKREQS_DISK_BUILD="5G"
604 -
605 -bazel-get-cpu-flags() {
606 - local i f=()
607 - # Keep this list in sync with tensorflow/core/platform/cpu_feature_guard.cc.
608 - for i in sse sse2 sse3 sse4_1 sse4_2 avx avx2 fma4; do
609 - use cpu_flags_x86_${i} && f+=( -m${i/_/.} )
610 - done
611 - use cpu_flags_x86_fma3 && f+=( -mfma )
612 - echo "${f[*]}"
613 -}
614 -
615 -bazel-get-flags() {
616 - local i fs=()
617 - for i in ${CFLAGS} $(bazel-get-cpu-flags); do
618 - fs+=( "--copt=${i}" "--host_copt=${i}" )
619 - done
620 - for i in ${CXXFLAGS} $(bazel-get-cpu-flags); do
621 - fs+=( "--cxxopt=${i}" "--host_cxxopt=${i}" )
622 - done
623 - for i in ${CPPFLAGS}; do
624 - fs+=( "--copt=${i}" "--host_copt=${i}" )
625 - fs+=( "--cxxopt=${i}" "--host_cxxopt=${i}" )
626 - done
627 - for i in ${LDFLAGS}; do
628 - fs+=( "--linkopt=${i}" "--host_linkopt=${i}" )
629 - done
630 - echo "${fs[*]}"
631 -}
632 -
633 -setup_bazelrc() {
634 - if [[ -f "${T}/bazelrc" ]]; then
635 - return
636 - fi
637 -
638 - # F: fopen_wr
639 - # P: /proc/self/setgroups
640 - # Even with standalone enabled, the Bazel sandbox binary is run for feature test:
641 - # https://github.com/bazelbuild/bazel/blob/7b091c1397a82258e26ab5336df6c8dae1d97384/src/main/java/com/google/devtools/build/lib/sandbox/LinuxSandboxedSpawnRunner.java#L61
642 - # https://github.com/bazelbuild/bazel/blob/76555482873ffcf1d32fb40106f89231b37f850a/src/main/tools/linux-sandbox-pid1.cc#L113
643 - addpredict /proc
644 -
645 - mkdir -p "${T}/bazel-cache" || die
646 - mkdir -p "${T}/bazel-distdir" || die
647 -
648 - cat > "${T}/bazelrc" <<-EOF || die
649 - startup --batch
650 -
651 - # dont strip HOME, portage sets a temp per-package dir
652 - build --action_env HOME
653 -
654 - # make bazel respect MAKEOPTS
655 - build --jobs=$(makeopts_jobs) $(bazel-get-flags)
656 - build --compilation_mode=opt --host_compilation_mode=opt
657 -
658 - # Use standalone strategy to deactivate the bazel sandbox, since it
659 - # conflicts with FEATURES=sandbox.
660 - build --spawn_strategy=standalone --genrule_strategy=standalone
661 - test --spawn_strategy=standalone --genrule_strategy=standalone
662 -
663 - build --strip=never
664 - build --verbose_failures --noshow_loading_progress
665 - test --verbose_test_summary --verbose_failures --noshow_loading_progress
666 -
667 - # make bazel only fetch distfiles from the cache
668 - fetch --repository_cache="${T}/bazel-cache/" --distdir="${T}/bazel-distdir/"
669 - build --repository_cache="${T}/bazel-cache/" --distdir="${T}/bazel-distdir/"
670 -
671 - build --define=PREFIX=${EPREFIX%/}/usr
672 - build --define=LIBDIR=\$(PREFIX)/$(get_libdir)
673 -
674 - EOF
675 -
676 - tc-is-cross-compiler || \
677 - echo "build --nodistinct_host_configuration" >> "${T}/bazelrc" || die
678 -}
679 -
680 -ebazel() {
681 - # Use different build folders for each multibuild variant.
682 - local base_suffix="${MULTIBUILD_VARIANT+-}${MULTIBUILD_VARIANT}"
683 - local output_base="${WORKDIR}/bazel-base${base_suffix}"
684 - mkdir -p "${output_base}" || die
685 -
686 - einfo Running: bazel --output_base="${output_base}" "$@"
687 - bazel --output_base="${output_base}" $@ || die
688 -}
689 -
690 -load_distfiles() {
691 - # Populate the bazel distdir to fetch from since it cannot use the network
692 - # Bazel looks in distdir but will only look for the original filename, not
693 - # the possibly renamed one that portage downloaded. If the line has -> we
694 - # need to rename it back, otherwise a simple copy is fine.
695 -
696 - local src dst uri rename
697 -
698 - while read uri rename dst; do
699 - src="${uri##*/}"
700 - [[ -z $src ]] && continue
701 - if [[ "$rename" != "->" ]]; then
702 - dst="${src}"
703 - fi
704 -
705 - [[ ${A} =~ ${dst} ]] || continue
706 -
707 - if [[ "$dst" == "$src" ]]; then
708 - einfo "Copying $dst to bazel distdir ..."
709 - else
710 - einfo "Copying $dst to bazel distdir $src ..."
711 - fi
712 - dst="$(readlink -f "${DISTDIR}/${dst}")"
713 - ln -s "${dst}" "${T}/bazel-distdir/${src}" || die
714 - done <<< "$(sed -re 's/!?[A-Za-z]+\?\s+\(\s*//g; s/\s+\)//g' <<< "${bazel_external_uris}")"
715 -}
716 -
717 -pkg_setup() {
718 - check-reqs_pkg_setup
719 -}
720 -
721 -src_unpack() {
722 - # Only unpack the main distfile
723 - unpack "${P}.tar.gz"
724 - unpack tensorflow-patches-${PVR}.tar.bz2
725 -}
726 -
727 -src_prepare() {
728 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
729 -
730 - setup_bazelrc
731 - load_distfiles
732 -
733 - eapply "${WORKDIR}"/patches/*.patch
734 -
735 - default
736 - use python && python_copy_sources
737 -
738 - use cuda && cuda_add_sandbox
739 -}
740 -
741 -src_configure() {
742 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
743 -
744 - do_configure() {
745 - export CC_OPT_FLAGS=" "
746 - export TF_NEED_JEMALLOC=$(usex jemalloc 1 0)
747 - export TF_NEED_GCP=0
748 - export TF_NEED_HDFS=0
749 - export TF_NEED_S3=0
750 - export TF_NEED_AWS=0
751 - export TF_NEED_KAFKA=0
752 - export TF_ENABLE_XLA=0
753 - export TF_NEED_GDR=0
754 - export TF_NEED_VERBS=0
755 - export TF_NEED_NGRAPH=0
756 - export TF_NEED_OPENCL_SYCL=0
757 - export TF_NEED_OPENCL=0
758 - export TF_NEED_COMPUTECPP=0
759 - export TF_NEED_MKL=0
760 - export TF_NEED_MPI=$(usex mpi 1 0)
761 - export TF_SET_ANDROID_WORKSPACE=0
762 -
763 - if use python; then
764 - python_export PYTHON_SITEDIR
765 - export PYTHON_BIN_PATH="${PYTHON}"
766 - export PYTHON_LIB_PATH="${PYTHON_SITEDIR}"
767 - else
768 - export PYTHON_BIN_PATH="$(which python)"
769 - export PYTHON_LIB_PATH="$(python -c 'from distutils.sysconfig import *; print(get_python_lib())')"
770 - fi
771 -
772 - export TF_NEED_CUDA=$(usex cuda 1 0)
773 - export TF_DOWNLOAD_CLANG=0
774 - export TF_CUDA_CLANG=0
775 - export TF_NEED_TENSORRT=0
776 - if use cuda; then
777 - export CUDA_TOOLKIT_PATH="${EPREFIX%/}/opt/cuda"
778 - export CUDNN_INSTALL_PATH="${EPREFIX%/}/opt/cuda"
779 - export GCC_HOST_COMPILER_PATH="$(cuda_gccdir)/$(tc-getCC)"
780 - export TF_NCCL_VERSION="1"
781 - export TF_CUDA_VERSION="$(cuda_toolkit_version)"
782 - export TF_CUDNN_VERSION="$(cuda_cudnn_version)"
783 - einfo "Setting CUDA version: $TF_CUDA_VERSION"
784 - einfo "Setting CUDNN version: $TF_CUDNN_VERSION"
785 - fi
786 -
787 - local SYSLIBS=(
788 - astor_archive
789 - com_googlesource_code_re2
790 - curl
791 - cython
792 - flatbuffers
793 - gif_archive
794 - grpc
795 - jemalloc
796 - jpeg
797 - jsoncpp_git
798 - lmdb
799 - nasm
800 - nsync
801 - org_sqlite
802 - pcre
803 - png_archive
804 - six_archive
805 - snappy
806 - swig
807 - termcolor_archive
808 - zlib_archive
809 - )
810 - if use system-libs; then
811 - SYSLIBS+=(
812 - absl_py
813 - astor_archive
814 - boringssl
815 - com_github_googleapis_googleapis
816 - com_github_googlecloudplatform_google_cloud_cpp
817 - com_google_protobuf
818 - com_google_protobuf_cc
819 - protobuf_archive
820 - gast_archive
821 - )
822 - fi
823 -
824 - export TF_SYSTEM_LIBS="${SYSLIBS[@]}"
825 -
826 - # Only one bazelrc is read, import our one before configure sets its options
827 - echo "import ${T}/bazelrc" >> ./.bazelrc
828 -
829 - # This is not autoconf
830 - ./configure || die
831 - }
832 - if use python; then
833 - python_foreach_impl run_in_build_dir do_configure
834 - else
835 - do_configure
836 - fi
837 -}
838 -
839 -src_compile() {
840 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
841 -
842 - if use python; then
843 - python_setup
844 - local MULTIBUILD_VARIANT="${EPYTHON/./_}"
845 - cd "${S}-${MULTIBUILD_VARIANT}" || die
846 - fi
847 -
848 - # fail early if anything is missing
849 - ebazel build --nobuild \
850 - //tensorflow:libtensorflow_framework.so \
851 - //tensorflow:libtensorflow.so \
852 - //tensorflow:libtensorflow_cc.so \
853 - $(usex python '//tensorflow/tools/pip_package:build_pip_package' '')
854 -
855 - ebazel build \
856 - //tensorflow:libtensorflow_framework.so \
857 - //tensorflow:libtensorflow.so
858 - ebazel build //tensorflow:libtensorflow_cc.so
859 -
860 - do_compile() {
861 - ebazel build //tensorflow/tools/pip_package:build_pip_package
862 - }
863 - use python && python_foreach_impl run_in_build_dir do_compile
864 -}
865 -
866 -src_install() {
867 - local i j
868 - export JAVA_HOME=$(java-config --jre-home) # so keepwork works
869 -
870 - do_install() {
871 - einfo "Installing ${EPYTHON} files"
872 - local srcdir="${T}/src-${MULTIBUILD_VARIANT}"
873 - mkdir -p "${srcdir}" || die
874 - bazel-bin/tensorflow/tools/pip_package/build_pip_package --src "${srcdir}" || die
875 - cd "${srcdir}" || die
876 - esetup.py install
877 -
878 - # libtensorflow_framework.so is in /usr/lib already
879 - python_export PYTHON_SITEDIR PYTHON_SCRIPTDIR
880 - rm -f "${D}/${PYTHON_SITEDIR}/${PN}/lib${PN}_framework.so" "${D}/${PYTHON_SCRIPTDIR}/tensorboard" || die
881 - python_optimize
882 - }
883 -
884 - if use python; then
885 - python_foreach_impl run_in_build_dir do_install
886 -
887 - # Symlink to python-exec scripts
888 - for i in "${ED}"/usr/lib/python-exec/*/*; do
889 - n="${i##*/}"
890 - [[ -e "${ED}/usr/bin/${n}" ]] || dosym ../lib/python-exec/python-exec2 "/usr/bin/${n}"
891 - done
892 -
893 - python_setup
894 - local MULTIBUILD_VARIANT="${EPYTHON/./_}"
895 - cd "${S}-${MULTIBUILD_VARIANT}" || die
896 - fi
897 -
898 - einfo "Installing headers"
899 - ebazel build //tensorflow:install_headers
900 - insinto /usr/include/${PN}/
901 - doins -r bazel-genfiles/tensorflow/include/*
902 -
903 - einfo "Installing libs"
904 - # Generate pkg-config file
905 - ${PN}/c/generate-pc.sh --prefix="${EPREFIX}"/usr --libdir=$(get_libdir) --version=${MY_PV} || die
906 - insinto /usr/$(get_libdir)/pkgconfig
907 - doins ${PN}.pc
908 -
909 - dolib.so bazel-bin/tensorflow/lib${PN}_framework.so
910 - dolib.so bazel-bin/tensorflow/lib${PN}.so
911 - dolib.so bazel-bin/tensorflow/lib${PN}_cc.so
912 -
913 - einstalldocs
914 -}