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 <s...@lutzhaase.com> +# Contributor: Adria Arrufat (archdria) <adria.arrufat+...@protonmail.ch> +# Contributor: Thibault Lorrain (fredszaq) <freds...@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: