[arch-commits] Commit in tensorflow/repos (2 files)
Sven-Hendrik Haase
svenstaro at archlinux.org
Thu Dec 14 20:23:45 UTC 2017
Date: Thursday, December 14, 2017 @ 20:23:44
Author: svenstaro
Revision: 274443
archrelease: copy trunk to community-testing-x86_64
Added:
tensorflow/repos/community-testing-x86_64/
tensorflow/repos/community-testing-x86_64/PKGBUILD
(from rev 274442, tensorflow/trunk/PKGBUILD)
----------+
PKGBUILD | 217 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 217 insertions(+)
Copied: tensorflow/repos/community-testing-x86_64/PKGBUILD (from rev 274442, tensorflow/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD (rev 0)
+++ community-testing-x86_64/PKGBUILD 2017-12-14 20:23:44 UTC (rev 274443)
@@ -0,0 +1,217 @@
+# Maintainer: Sven-Hendrik Haase <sh at lutzhaase.com>
+# Contributor: Adria Arrufat (archdria) <adria.arrufat+AUR at protonmail.ch>
+# Contributor: Thibault Lorrain (fredszaq) <fredszaq at gmail.com>
+
+pkgbase=tensorflow
+pkgname=(tensorflow tensorflow-opt tensorflow-cuda tensorflow-opt-cuda python-tensorflow python-tensorflow-opt python-tensorflow-cuda python-tensorflow-opt-cuda)
+pkgver=1.4.1
+_pkgver=1.4.1
+pkgrel=1
+pkgdesc="Library for computation using data flow graphs for scalable machine learning"
+url="https://www.tensorflow.org/"
+license=('APACHE')
+arch=('x86_64')
+makedepends=('bazel' 'python-numpy' 'gcc6' 'cuda' 'nvidia-utils'
+ 'cudnn' 'python-pip' 'python-wheel' 'python-setuptools')
+optdepends=('tensorboard: Tensorflow visualization toolkit')
+source=("https://github.com/tensorflow/tensorflow/archive/v${_pkgver}.tar.gz")
+sha512sums=('618e0a740c79ad9582944a827f43bbdafb1d51a1e621f6f5e5cc7f3f18eb239f0656f81fbbae20c69029a1fa8b4bab56ff5be0907f073eccbe4732e52c7511d6')
+
+prepare() {
+ cp -r tensorflow-${_pkgver} tensorflow-${_pkgver}-opt
+ cp -r tensorflow-${_pkgver} tensorflow-${_pkgver}-cuda
+ cp -r tensorflow-${_pkgver} tensorflow-${_pkgver}-opt-cuda
+ # These environment variables influence the behavior of the configure call below.
+ export PYTHON_BIN_PATH=/usr/bin/python
+ export USE_DEFAULT_PYTHON_LIB_PATH=1
+ export TF_NEED_JEMALLOC=1
+ export TF_NEED_GCP=0
+ export TF_NEED_HDFS=0
+ export TF_NEED_S3=0
+ export TF_ENABLE_XLA=1
+ export TF_NEED_GDR=0
+ export TF_NEED_VERBS=0
+ export TF_NEED_OPENCL=0
+ export TF_NEED_MPI=0
+}
+
+build() {
+ cd ${srcdir}/tensorflow-${_pkgver}
+ export CC_OPT_FLAGS="-march=x86-64"
+ export TF_NEED_CUDA=0
+ ./configure
+ bazel build --config=opt //tensorflow:libtensorflow.so //tensorflow/tools/pip_package:build_pip_package
+ bazel-bin/tensorflow/tools/pip_package/build_pip_package ${srcdir}/tmp
+
+ cd ${srcdir}/tensorflow-${_pkgver}-cuda
+ export CC_OPT_FLAGS="-march=x86-64"
+ export TF_NEED_CUDA=1
+ # For next version instead of the gcc-6 stuff:
+ export GCC_HOST_COMPILER_PATH=/usr/bin/gcc-6
+ export TF_CUDA_CLANG=0
+ # export CLANG_CUDA_COMPILER_PATH=/usr/bin/clang
+ export CUDA_TOOLKIT_PATH=/opt/cuda
+ export TF_CUDA_VERSION=$($CUDA_TOOLKIT_PATH/bin/nvcc --version | sed -n 's/^.*release \(.*\),.*/\1/p')
+ export CUDNN_INSTALL_PATH=/opt/cuda
+ export TF_CUDNN_VERSION=$(sed -n 's/^#define CUDNN_MAJOR\s*\(.*\).*/\1/p' $CUDNN_INSTALL_PATH/include/cudnn.h)
+ export TF_CUDA_COMPUTE_CAPABILITIES=3.0,3.5,5.2,6.1,6.2
+ ./configure
+ bazel build --cxxopt="-I/opt/cuda/include/crt" --config=opt --config=cuda //tensorflow:libtensorflow.so //tensorflow/tools/pip_package:build_pip_package
+ bazel-bin/tensorflow/tools/pip_package/build_pip_package ${srcdir}/tmpcuda
+
+ cd ${srcdir}/tensorflow-${_pkgver}-opt
+ export CC_OPT_FLAGS="-march=haswell"
+ export TF_NEED_CUDA=0
+ ./configure
+ bazel build --config=opt //tensorflow:libtensorflow.so //tensorflow/tools/pip_package:build_pip_package
+ bazel-bin/tensorflow/tools/pip_package/build_pip_package ${srcdir}/tmpopt
+
+ cd ${srcdir}/tensorflow-${_pkgver}-opt-cuda
+ export CC_OPT_FLAGS="-march=haswell"
+ export TF_NEED_CUDA=1
+ # For next version instead of the gcc-6 stuff:
+ export GCC_HOST_COMPILER_PATH=/usr/bin/gcc-6
+ export TF_CUDA_CLANG=0
+ # export CLANG_CUDA_COMPILER_PATH=/usr/bin/clang
+ export CUDA_TOOLKIT_PATH=/opt/cuda
+ export TF_CUDA_VERSION=$($CUDA_TOOLKIT_PATH/bin/nvcc --version | sed -n 's/^.*release \(.*\),.*/\1/p')
+ export CUDNN_INSTALL_PATH=/opt/cuda
+ export TF_CUDNN_VERSION=$(sed -n 's/^#define CUDNN_MAJOR\s*\(.*\).*/\1/p' $CUDNN_INSTALL_PATH/include/cudnn.h)
+ export TF_CUDA_COMPUTE_CAPABILITIES=3.0,3.5,5.2,6.1,6.2
+ ./configure
+ bazel build --cxxopt="-I/opt/cuda/include/crt" --config=opt --config=cuda //tensorflow:libtensorflow.so //tensorflow/tools/pip_package:build_pip_package
+ bazel-bin/tensorflow/tools/pip_package/build_pip_package ${srcdir}/tmpcudaopt
+}
+
+package_tensorflow() {
+ cd ${srcdir}/tensorflow-${_pkgver}
+
+ tensorflow/c/generate-pc.sh --prefix=/usr --version=${pkgver}
+ install -Dm644 tensorflow.pc ${pkgdir}/usr/lib/pkgconfig/tensorflow.pc
+ install -Dm755 bazel-bin/tensorflow/libtensorflow.so ${pkgdir}/usr/lib/libtensorflow.so
+ install -Dm755 bazel-bin/tensorflow/libtensorflow_framework.so ${pkgdir}/usr/lib/libtensorflow_framework.so
+ install -Dm644 tensorflow/c/c_api.h ${pkgdir}/usr/include/tensorflow/c/c_api.h
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_tensorflow-opt() {
+ conflicts=(tensorflow)
+ provides=(tensorflow)
+ pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CPU optimizations)"
+
+ cd ${srcdir}/tensorflow-${_pkgver}-opt
+
+ tensorflow/c/generate-pc.sh --prefix=/usr --version=${pkgver}
+ install -Dm644 tensorflow.pc ${pkgdir}/usr/lib/pkgconfig/tensorflow.pc
+ install -Dm755 bazel-bin/tensorflow/libtensorflow.so ${pkgdir}/usr/lib/libtensorflow.so
+ install -Dm755 bazel-bin/tensorflow/libtensorflow_framework.so ${pkgdir}/usr/lib/libtensorflow_framework.so
+ install -Dm644 tensorflow/c/c_api.h ${pkgdir}/usr/include/tensorflow/c/c_api.h
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_tensorflow-cuda() {
+ depends=(cuda cudnn)
+ conflicts=(tensorflow)
+ provides=(tensorflow)
+ pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CUDA)"
+
+ cd ${srcdir}/tensorflow-${_pkgver}-cuda
+
+ tensorflow/c/generate-pc.sh --prefix=/usr --version=${pkgver}
+ install -Dm644 tensorflow.pc ${pkgdir}/usr/lib/pkgconfig/tensorflow.pc
+ install -Dm755 bazel-bin/tensorflow/libtensorflow.so ${pkgdir}/usr/lib/libtensorflow.so
+ install -Dm755 bazel-bin/tensorflow/libtensorflow_framework.so ${pkgdir}/usr/lib/libtensorflow_framework.so
+ install -Dm644 tensorflow/c/c_api.h ${pkgdir}/usr/include/tensorflow/c/c_api.h
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_tensorflow-opt-cuda() {
+ depends=(cuda cudnn)
+ conflicts=(tensorflow)
+ provides=(tensorflow)
+ pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CUDA and CPU optimizations)"
+
+ cd ${srcdir}/tensorflow-${_pkgver}-opt-cuda
+
+ tensorflow/c/generate-pc.sh --prefix=/usr --version=${pkgver}
+ install -Dm644 tensorflow.pc ${pkgdir}/usr/lib/pkgconfig/tensorflow.pc
+ install -Dm755 bazel-bin/tensorflow/libtensorflow.so ${pkgdir}/usr/lib/libtensorflow.so
+ install -Dm755 bazel-bin/tensorflow/libtensorflow_framework.so ${pkgdir}/usr/lib/libtensorflow_framework.so
+ install -Dm644 tensorflow/c/c_api.h ${pkgdir}/usr/include/tensorflow/c/c_api.h
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python-tensorflow() {
+ depends=(python python-protobuf)
+
+ cd ${srcdir}/tensorflow-${_pkgver}
+
+ WHEEL_PACKAGE=$(find ${srcdir}/tmp -name "tensor*.whl")
+ pip install --ignore-installed --upgrade --root $pkgdir/ $WHEEL_PACKAGE --no-dependencies
+
+ # tensorboard has been separated from upstream but they still install it with
+ # tensorflow. I don't know what kind of sense that makes but we have to clean
+ # it out from this pacakge.
+ rm -rf ${pkgdir}/usr/bin/tensorboard
+
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python-tensorflow-opt() {
+ depends=(python python-protobuf)
+ conflicts=(python-tensorflow)
+ provides=(python-tensorflow)
+ pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CPU optimizations)"
+
+ cd ${srcdir}/tensorflow-${_pkgver}-opt
+
+ WHEEL_PACKAGE=$(find ${srcdir}/tmpopt -name "tensor*.whl")
+ pip install --ignore-installed --upgrade --root $pkgdir/ $WHEEL_PACKAGE --no-dependencies
+
+ # tensorboard has been separated from upstream but they still install it with
+ # tensorflow. I don't know what kind of sense that makes but we have to clean
+ # it out from this pacakge.
+ rm -rf ${pkgdir}/usr/bin/tensorboard
+
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python-tensorflow-cuda() {
+ depends=(python cuda cudnn python-pycuda python-protobuf)
+ conflicts=(python-tensorflow)
+ provides=(python-tensorflow)
+ pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CUDA)"
+
+ cd ${srcdir}/tensorflow-${_pkgver}-cuda
+
+ WHEEL_PACKAGE=$(find ${srcdir}/tmpcuda -name "tensor*.whl")
+ pip install --ignore-installed --upgrade --root $pkgdir/ $WHEEL_PACKAGE --no-dependencies
+
+ # tensorboard has been separated from upstream but they still install it with
+ # tensorflow. I don't know what kind of sense that makes but we have to clean
+ # it out from this pacakge.
+ rm -rf ${pkgdir}/usr/bin/tensorboard
+
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+package_python-tensorflow-opt-cuda() {
+ depends=(python cuda cudnn python-pycuda python-protobuf)
+ conflicts=(python-tensorflow)
+ provides=(python-tensorflow)
+ pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CUDA and CPU optimizations)"
+
+ cd ${srcdir}/tensorflow-${_pkgver}-cuda
+
+ WHEEL_PACKAGE=$(find ${srcdir}/tmpcudaopt -name "tensor*.whl")
+ pip install --ignore-installed --upgrade --root $pkgdir/ $WHEEL_PACKAGE --no-dependencies
+
+ # tensorboard has been separated from upstream but they still install it with
+ # tensorflow. I don't know what kind of sense that makes but we have to clean
+ # it out from this pacakge.
+ rm -rf ${pkgdir}/usr/bin/tensorboard
+
+ install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
+}
+
+# vim:set ts=2 sw=2 et:
More information about the arch-commits
mailing list