diff --git a/deploy/build_env/manylinux2010/Dockerfile b/deploy/build_env/manylinux2010/Dockerfile index 04a994ee477fa8787196254e4a355b4628c90026..cc73faaa30de881eb7cb90b92918d068a2eb50ea 100644 --- a/deploy/build_env/manylinux2010/Dockerfile +++ b/deploy/build_env/manylinux2010/Dockerfile @@ -2,7 +2,7 @@ FROM quay.io/pypa/manylinux2010_x86_64 ENV GOPATH /tmp -RUN yum update -y && yum install -y golang wget zlib-devel +RUN yum update -y && yum install -y golang wget zlib-devel libnl3-devel ADD install_curl.sh install_curl.sh RUN ./install_curl.sh /curl @@ -10,6 +10,9 @@ RUN ./install_curl.sh /curl ADD install_cmake.sh install_cmake.sh RUN ./install_cmake.sh +ADD install_libfabric.sh install_libfabric.sh +RUN ./install_libfabric.sh + RUN chmod og+rwX -R /opt ADD build.sh /bin/build.sh \ No newline at end of file diff --git a/deploy/build_env/manylinux2010/build.sh b/deploy/build_env/manylinux2010/build.sh index 82ed25026a64e04bda24c0a7dec88415d2047904..647c7c4d13128d05c8f0d84d61d33319c2b97c6e 100755 --- a/deploy/build_env/manylinux2010/build.sh +++ b/deploy/build_env/manylinux2010/build.sh @@ -18,7 +18,7 @@ for python_path in /opt/python/cp{27,35,36,37,38}*; do echo "building wheel for python_version=$python_version with numpy_version=$numpy_version" cd /asapo/build - cmake -DENABLE_LIBFABRIC=off -DCMAKE_BUILD_TYPE="Release" -DLIBCURL_DIR=/curl -DPython_EXECUTABLE=$python -DNUMPY_VERSION=$numpy_version .. + cmake -DENABLE_LIBFABRIC=on -DCMAKE_BUILD_TYPE="Release" -DLIBCURL_DIR=/curl -DPython_EXECUTABLE=$python -DNUMPY_VERSION=$numpy_version .. cd consumer \ && $pip install -r api/python/dev-requirements.txt\ && make \ diff --git a/deploy/build_env/manylinux2010/install_libfabric.sh b/deploy/build_env/manylinux2010/install_libfabric.sh new file mode 100755 index 0000000000000000000000000000000000000000..0a870810a1effffc7a3138b3ce973ddf982aefbb --- /dev/null +++ b/deploy/build_env/manylinux2010/install_libfabric.sh @@ -0,0 +1,26 @@ +#!/usr/bin/env bash + +# rdma-core + +wget https://github.com/linux-rdma/rdma-core/releases/download/v31.0/rdma-core-31.0.tar.gz + +tar -xvf rdma-core-31.0.tar.gz +cd rdma-core-31.0 +bash build.sh +cd .. +rm -f rdma-core-31.0.tar.gz +# rdma-core cannot be installed and some files in build are just symlinks +# therefore the folder is used as is and cannot be removed + +# libfabric + +wget https://github.com/ofiwg/libfabric/releases/download/v1.11.0/libfabric-1.11.0.tar.bz2 + +tar -xvf libfabric-1.11.0.tar.bz2 +cd libfabric-1.11.0 +./configure CPPFLAGS=-I/rdma-core-31.0/build/include LDFLAGS=-L/rdma-core-31.0/build/lib +make LD_LIBRARY_PATH=/rdma-core-31.0/build/lib # not sure why the flag is necessary +make install +cd .. +rm -f libfabric-1.11.0.tar.bz2 +rm -rf libfabric-1.11.0