diff options
author | AdriĆ Arrufat | 2019-09-25 09:27:54 +0900 |
---|---|---|
committer | AdriĆ Arrufat | 2019-09-25 09:27:54 +0900 |
commit | f7a9f9699a11614d91e824e4507510aa91206689 (patch) | |
tree | c2b06ba9445e6c63be1a6818fb0230ccf0b8a4f1 | |
parent | 03cd464c2231f5168e1db90012258802dd49ac96 (diff) | |
download | aur-f7a9f9699a11614d91e824e4507510aa91206689.tar.gz |
sync with official repository
-rw-r--r-- | .SRCINFO | 49 | ||||
-rw-r--r-- | PKGBUILD | 190 |
2 files changed, 150 insertions, 89 deletions
@@ -1,8 +1,6 @@ -# Generated by makepkg 5.1.2 -# Tue Feb 26 23:59:04 UTC 2019 pkgbase = tensorflow-git pkgdesc = Library for computation using data flow graphs for scalable machine learning - pkgver = 1.13.0+172+gb29d52ce7f + pkgver = 1.15.0+rc1+531+g68546bb7a3 pkgrel = 1 url = https://tensorflow.org/ arch = x86_64 @@ -10,42 +8,69 @@ pkgbase = tensorflow-git makedepends = git makedepends = bazel makedepends = python-numpy - makedepends = gcc7 makedepends = cuda - makedepends = cudnn + makedepends = nvidia-utils makedepends = nccl - makedepends = python-greenlet + makedepends = git + makedepends = gcc8 + makedepends = cudnn makedepends = python-pip makedepends = python-wheel makedepends = python-setuptools + makedepends = python-h5py + makedepends = python-keras-applications + makedepends = python-keras-preprocessing + depends = c-ares optdepends = tensorboard: Tensorflow visualization toolkit source = git+https://github.com/tensorflow/tensorflow md5sums = SKIP pkgname = tensorflow-git + pkgdesc = Library for computation using data flow graphs for scalable machine learning (with CPU optimizations) provides = tensorflow conflicts = tensorflow pkgname = tensorflow-cuda-git + pkgdesc = Library for computation using data flow graphs for scalable machine learning (with CUDA) + depends = c-ares depends = cuda depends = cudnn + depends = nccl provides = tensorflow conflicts = tensorflow pkgname = python-tensorflow-git - depends = python + depends = c-ares + depends = tensorflow + depends = python-termcolor + depends = python-astor + depends = python-gast + depends = python-numpy depends = python-protobuf - optdepends = python-werkzeug: for using tensorboard - provides = python-tensorflow - conflicts = python-tensorflow + depends = absl-py + depends = python-h5py + depends = python-keras-applications + depends = python-keras-preprocessing + depends = python-tensorflow-estimator pkgname = python-tensorflow-cuda-git - depends = python + pkgdesc = Library for computation using data flow graphs for scalable machine learning (with CUDA) + depends = c-ares + depends = tensorflow-cuda + depends = python-termcolor + depends = python-astor + depends = python-gast + depends = python-numpy depends = cuda depends = cudnn depends = python-pycuda depends = python-protobuf - optdepends = python-werkzeug: for using tensorboard + depends = absl-py + depends = nccl + depends = python-h5py + depends = python-keras-applications + depends = python-keras-preprocessing + depends = python-tensorflow-estimator provides = python-tensorflow conflicts = python-tensorflow @@ -1,15 +1,18 @@ -# Maintainer: Adria Arrufat <adria.arrufat+AUR@protonmail.ch> +# Maintainer: Adria Arrufat <swiftscythe@gmail.com> # Contributor: Sven-Hendrik Haase <sh@lutzhaase.com> pkgbase=tensorflow-git pkgname=(tensorflow-git tensorflow-cuda-git python-tensorflow-git python-tensorflow-cuda-git) -pkgver=1.13.0+172+gb29d52ce7f +pkgver=1.15.0+rc1+581+gfdf4b54d40 pkgrel=1 pkgdesc="Library for computation using data flow graphs for scalable machine learning" url="https://tensorflow.org/" license=('APACHE') arch=('x86_64') -makedepends=(git bazel python-numpy gcc7 cuda cudnn nccl python-greenlet python-pip python-wheel python-setuptools) +depends=('c-ares') +makedepends=('git' 'bazel' 'python-numpy' 'cuda' 'nvidia-utils' 'nccl' 'git' 'gcc8' + 'cudnn' 'python-pip' 'python-wheel' 'python-setuptools' 'python-h5py' + 'python-keras-applications' 'python-keras-preprocessing') optdepends=('tensorboard: Tensorflow visualization toolkit') source=("git+https://github.com/tensorflow/tensorflow") md5sums=('SKIP') @@ -22,125 +25,158 @@ pkgver() { prepare() { [ -d ${srcdir}/tensorflow-cuda ] && rm -rf ${srcdir}/tensorflow-cuda cp -r ${srcdir}/tensorflow ${srcdir}/tensorflow-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_KAFKA=0 - export TF_NEED_OPENCL_SYCL=0 - export TF_NEED_AWS=0 - 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 - export TF_NEED_TENSORRT=0 - export TF_NEED_NGRAPH=0 - export TF_NEED_IGNITE=0 - export TF_NEED_ROCM=0 - export TF_SET_ANDROID_WORKSPACE=0 - export TF_DOWNLOAD_CLANG=0 - export TF_NCCL_VERSION=2.3 - export NCCL_INSTALL_PATH=/usr - export CC_OPT_FLAGS="-march=x86-64" - - # make sure the proxy variables are in all caps, otherwise bazel ignores them - export HTTP_PROXY=`echo $http_proxy | sed -e 's/\/$//'` - export HTTPS_PROXY=`echo $https_proxy | sed -e 's/\/$//'` + + # 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_KAFKA=0 + export TF_NEED_OPENCL_SYCL=0 + export TF_NEED_AWS=0 + 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 + export TF_NEED_TENSORRT=0 + export TF_NEED_NGRAPH=0 + export TF_NEED_IGNITE=0 + export TF_NEED_ROCM=0 + export TF_SET_ANDROID_WORKSPACE=0 + export TF_DOWNLOAD_CLANG=0 + export TF_NCCL_VERSION=2.4 + export TF_IGNORE_MAX_BAZEL_VERSION=1 + export NCCL_INSTALL_PATH=/usr + export GCC_HOST_COMPILER_PATH=/usr/bin/gcc-8 + export HOST_CXX_COMPILER_PATH=/usr/bin/gcc-8 + export TF_CUDA_CLANG=0 # Clang currently disabled because it's not compatible at the moment. + export CLANG_CUDA_COMPILER_PATH=/usr/bin/clang + export TF_CUDA_PATHS=/opt/cuda,/usr/lib,/usr + export TF_CUDA_VERSION=$(/opt/cuda/bin/nvcc --version | sed -n 's/^.*release \(.*\),.*/\1/p') + export TF_CUDNN_VERSION=$(sed -n 's/^#define CUDNN_MAJOR\s*\(.*\).*/\1/p' /usr/include/cudnn.h) + export TF_CUDA_COMPUTE_CAPABILITIES=3.5,3.7,5.0,5.2,5.3,6.0,6.1,6.2,7.0,7.2,7.5 + export CC_OPT_FLAGS="-march=native" + + # make sure the proxy variables are in all caps, otherwise bazel ignores them + export HTTP_PROXY=`echo $http_proxy | sed -e 's/\/$//'` + export HTTPS_PROXY=`echo $https_proxy | sed -e 's/\/$//'` } build() { - # _bazel_09_fix="--incompatible_load_argument_is_label=false" cd ${srcdir}/tensorflow - export TF_NEED_CUDA=0 - ./configure + ./configure bazel \ - build --config=opt \ + build --config=opt --incompatible_no_support_tools_in_action_inputs=false \ //tensorflow:libtensorflow.so \ //tensorflow:libtensorflow_cc.so \ //tensorflow:install_headers \ //tensorflow/tools/pip_package:build_pip_package - bazel-bin/tensorflow/tools/pip_package/build_pip_package ${srcdir}/tmp + bazel-bin/tensorflow/tools/pip_package/build_pip_package "${srcdir}"/tmp cd ${srcdir}/tensorflow-cuda export TF_NEED_CUDA=1 - export GCC_HOST_COMPILER_PATH=/usr/bin/gcc-7 - 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.5,3.7,5.0,5.2,5.3,6.0,6.1,6.2,7.0,7.2,7.5 ./configure bazel \ - build --config=opt --config=opt \ + build --config=opt --incompatible_no_support_tools_in_action_inputs=false \ //tensorflow:libtensorflow.so \ //tensorflow:libtensorflow_cc.so \ //tensorflow:install_headers \ //tensorflow/tools/pip_package:build_pip_package - bazel-bin/tensorflow/tools/pip_package/build_pip_package ${srcdir}/tmpcuda + bazel-bin/tensorflow/tools/pip_package/build_pip_package "${srcdir}"/tmpcuda +} + +_package() { + # install headers first + install -d "${pkgdir}"/usr/include/tensorflow + cp -r bazel-genfiles/tensorflow/include/* "${pkgdir}"/usr/include/tensorflow/ + # install python-version to get all extra headers + WHEEL_PACKAGE=$(find "${srcdir}"/$1 -name "tensor*.whl") + pip install --ignore-installed --upgrade --root "${pkgdir}"/ $WHEEL_PACKAGE --no-dependencies + # move extra headers to correct location + find "${pkgdir}/usr/lib/python$(get_pyver)"/site-packages/tensorflow/include -maxdepth 1 -mindepth 1 -type d -print0 | while read -rd $'\0' _folder; do + cp -nr "${_folder}" "${pkgdir}"/usr/include/tensorflow/ + done + # clean up unneeded files + rm -rf "${pkgdir}"/usr/bin + rm -rf "${pkgdir}"/usr/lib + rm -rf "${pkgdir}"/usr/share + + # install the rest of tensorflow + tensorflow/c/generate-pc.sh --prefix=/usr --version=${pkgver} + sed -e 's/\/include/\/include\/tensorflow/' -i tensorflow.pc + install -Dm644 tensorflow.pc "${pkgdir}"/usr/lib/pkgconfig/tensorflow.pc + install -Dm755 bazel-bin/tensorflow/libtensorflow.so "${pkgdir}"/usr/lib/libtensorflow.so.${pkgver} + ln -s libtensorflow.so.${pkgver} "${pkgdir}"/usr/lib/libtensorflow.so.${pkgver:0:1} + ln -s libtensorflow.so.${pkgver:0:1} "${pkgdir}"/usr/lib/libtensorflow.so + install -Dm755 bazel-bin/tensorflow/libtensorflow_cc.so "${pkgdir}"/usr/lib/libtensorflow_cc.so.${pkgver} + ln -s libtensorflow_cc.so.${pkgver} "${pkgdir}"/usr/lib/libtensorflow_cc.so.${pkgver:0:1} + ln -s libtensorflow_cc.so.${pkgver:0:1} "${pkgdir}"/usr/lib/libtensorflow_cc.so + install -Dm755 bazel-bin/tensorflow/libtensorflow_framework.so "${pkgdir}"/usr/lib/libtensorflow_framework.so.${pkgver} + ln -s libtensorflow_framework.so.${pkgver} "${pkgdir}"/usr/lib/libtensorflow_framework.so.${pkgver:0:1} + ln -s libtensorflow_framework.so.${pkgver:0:1} "${pkgdir}"/usr/lib/libtensorflow_framework.so + install -Dm644 tensorflow/c/c_api.h "${pkgdir}"/usr/include/tensorflow/tensorflow/c/c_api.h + install -Dm644 LICENSE "${pkgdir}"/usr/share/licenses/${pkgname}/LICENSE +} + +_python_package() { + WHEEL_PACKAGE=$(find "${srcdir}"/$1 -name "tensor*.whl") + pip install --ignore-installed --upgrade --root "${pkgdir}"/ $WHEEL_PACKAGE --no-dependencies + + # create symlinks to headers + find "${pkgdir}/usr/lib/python$(get_pyver)"/site-packages/tensorflow/include/ -maxdepth 1 -mindepth 1 -type d -print0 | while read -rd $'\0' _folder; do + rm -rf "${_folder}" + _smlink="$(basename "${_folder}")" + ln -s /usr/include/tensorflow/"${_smlink}" "${pkgdir}/usr/lib/python$(get_pyver)"/site-packages/tensorflow/include/ + done + + # 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_tensorflow-git() { + pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CPU optimizations)" conflicts=(tensorflow) provides=(tensorflow) cd ${srcdir}/tensorflow - - 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 -Dm644 tensorflow/c/c_api.h ${pkgdir}/usr/include/tensorflow/c/c_api.h - install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/tensorflow/LICENSE + _package tmp + conflicts=(tensorflow) + provides=(tensorflow) } package_tensorflow-cuda-git() { - depends=(cuda cudnn) + pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CUDA)" + depends+=(cuda cudnn nccl) conflicts=(tensorflow) provides=(tensorflow) cd ${srcdir}/tensorflow-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 -Dm644 tensorflow/c/c_api.h ${pkgdir}/usr/include/tensorflow/c/c_api.h - install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/tensorflow/LICENSE + _package tmpcuda } package_python-tensorflow-git() { - depends=(python python-protobuf) - conflicts=(python-tensorflow) - provides=(python-tensorflow) - optdepends=('python-werkzeug: for using tensorboard') + depends+=(tensorflow python-termcolor python-astor python-gast python-numpy python-protobuf absl-py python-h5py python-keras-applications python-keras-preprocessing python-tensorflow-estimator) cd ${srcdir}/tensorflow - - WHEEL_PACKAGE=$(find ${srcdir}/tmpcuda -name "tensor*.whl") - pip install --ignore-installed --upgrade --root $pkgdir/ $WHEEL_PACKAGE --no-dependencies - rm -rf ${pkgdir}/usr/bin/tensorboard - - install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/python-tensorflow/LICENSE + _python_package tmp } package_python-tensorflow-cuda-git() { - depends=(python cuda cudnn python-pycuda python-protobuf) + pkgdesc="Library for computation using data flow graphs for scalable machine learning (with CUDA)" + depends+=(tensorflow-cuda python-termcolor python-astor python-gast python-numpy cuda cudnn python-pycuda python-protobuf absl-py nccl python-h5py python-keras-applications python-keras-preprocessing python-tensorflow-estimator) conflicts=(python-tensorflow) provides=(python-tensorflow) - optdepends=('python-werkzeug: for using tensorboard') cd ${srcdir}/tensorflow-cuda - - WHEEL_PACKAGE=$(find ${srcdir}/tmpcuda -name "tensor*.whl") - pip install --ignore-installed --upgrade --root $pkgdir/ $WHEEL_PACKAGE --no-dependencies - rm -rf ${pkgdir}/usr/bin/tensorboard - - install -Dm644 LICENSE ${pkgdir}/usr/share/licenses/python-tensorflow/LICENSE + _python_package tmpcuda } # vim:set ts=2 sw=2 et: |