From 9c4f1b9287d21b31bebd66a0fb17c57a76d97fd7 Mon Sep 17 00:00:00 2001 From: Sergey Yakubov <sergey.yakubov@desy.de> Date: Wed, 9 Dec 2020 19:28:40 +0100 Subject: [PATCH] centos 8 build, cmake - do not build python by default --- consumer/api/python/CMakeLists_Linux.cmake | 3 +-- .../python/source_dist_linux/CMakeLists.txt | 11 +++++----- deploy/build_env/Ubuntu16.04/build.sh | 4 ++-- deploy/build_env/Ubuntu16.04/build_image.sh | 2 +- deploy/build_env/centos/Dockerfile.8.3.2011 | 22 +++++++++++++++++++ deploy/build_env/centos/build.sh | 5 +++-- .../centos/{build_image.sh => build_el7.sh} | 0 deploy/build_env/centos/build_el8.sh | 2 ++ deploy/build_env/manylinux2010/build.sh | 20 ++++++++--------- producer/api/python/CMakeLists_Linux.cmake | 2 +- .../python/source_dist_linux/CMakeLists.txt | 10 +++++---- tests/automatic/asapo_fabric/timeout_test.cpp | 8 +++---- 12 files changed, 58 insertions(+), 31 deletions(-) create mode 100644 deploy/build_env/centos/Dockerfile.8.3.2011 rename deploy/build_env/centos/{build_image.sh => build_el7.sh} (100%) create mode 100755 deploy/build_env/centos/build_el8.sh diff --git a/consumer/api/python/CMakeLists_Linux.cmake b/consumer/api/python/CMakeLists_Linux.cmake index 22888994e..e0bbd7af0 100644 --- a/consumer/api/python/CMakeLists_Linux.cmake +++ b/consumer/api/python/CMakeLists_Linux.cmake @@ -19,8 +19,7 @@ set (ASAPO_CONSUMER_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../cpp/include) configure_files(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} @ONLY) -ADD_CUSTOM_TARGET(python-lib ALL - COMMAND ${Python_EXECUTABLE} setup.py build_ext --inplace --force) +ADD_CUSTOM_TARGET(python-lib COMMAND ${Python_EXECUTABLE} setup.py build_ext --inplace --force) ADD_DEPENDENCIES(python-lib asapo-consumer) diff --git a/consumer/api/python/source_dist_linux/CMakeLists.txt b/consumer/api/python/source_dist_linux/CMakeLists.txt index 99d58f4cd..9c8c2d41b 100644 --- a/consumer/api/python/source_dist_linux/CMakeLists.txt +++ b/consumer/api/python/source_dist_linux/CMakeLists.txt @@ -1,22 +1,21 @@ configure_file(setup.py.in setup.py @ONLY) configure_file(MANIFEST.in MANIFEST.in @ONLY) - -ADD_CUSTOM_TARGET(python-dist ALL +ADD_CUSTOM_TARGET(python-dist COMMAND ${Python_EXECUTABLE} setup.py sdist ) ADD_CUSTOM_TARGET(python-rpm-consumer - COMMAND PACKAGE_PREFIX=python- python setup.py bdist_rpm --release=${PACKAGE_RELEASE_SUFFIX} --requires=numpy + COMMAND PACKAGE_PREFIX=python- python setup.py bdist_rpm --release=1.${PACKAGE_RELEASE_SUFFIX} --requires=numpy ) ADD_CUSTOM_TARGET(python3-rpm-consumer - COMMAND PACKAGE_PREFIX=python3- python3 setup.py bdist_rpm --release=${PACKAGE_RELEASE_SUFFIX} --requires=python3-numpy + COMMAND PACKAGE_PREFIX=python3- python3 setup.py bdist_rpm --release=1.${PACKAGE_RELEASE_SUFFIX} --requires=python3-numpy ) #get_property(ASAPO_CONSUMER_LIB TARGET asapo-consumer PROPERTY LOCATION) -ADD_CUSTOM_TARGET(copy_python_dist ALL +ADD_CUSTOM_TARGET(copy_python_dist COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/../asapo_wrappers.h ${CMAKE_CURRENT_BINARY_DIR}/. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/../asapo_consumer.cpp ${CMAKE_CURRENT_BINARY_DIR}/. COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/consumer/api/cpp/include ${CMAKE_CURRENT_BINARY_DIR}/include @@ -33,3 +32,5 @@ ADD_CUSTOM_TARGET(copy_python_dist ALL ADD_DEPENDENCIES(copy_python_dist python-lib) ADD_DEPENDENCIES(python-dist copy_python_dist) +ADD_DEPENDENCIES(python-rpm-consumer python-dist) +ADD_DEPENDENCIES(python3-rpm-consumer python-dist) diff --git a/deploy/build_env/Ubuntu16.04/build.sh b/deploy/build_env/Ubuntu16.04/build.sh index 6cc5e5b95..54678561c 100755 --- a/deploy/build_env/Ubuntu16.04/build.sh +++ b/deploy/build_env/Ubuntu16.04/build.sh @@ -10,7 +10,7 @@ cmake \ -DBUILD_PYTHON_DOCS=ON \ -DBUILD_EVENT_MONITOR_PRODUCER=ON \ .. -cd consumer && make -cd ../producer && make +cd consumer/api/python/source_dist_linux && make python-dist +cd ../producer/api/python/source_dist_linux && make python-dist-producer cd ../docs/sphinx && make diff --git a/deploy/build_env/Ubuntu16.04/build_image.sh b/deploy/build_env/Ubuntu16.04/build_image.sh index df1c4b6ce..415b215af 100755 --- a/deploy/build_env/Ubuntu16.04/build_image.sh +++ b/deploy/build_env/Ubuntu16.04/build_image.sh @@ -1,4 +1,4 @@ #!/usr/bin/env bash set -e docker build -t yakser/asapo-env:ubuntu16.04 . -#docker push yakser/asapo-env:ubuntu16.04 +docker push yakser/asapo-env:ubuntu16.04 diff --git a/deploy/build_env/centos/Dockerfile.8.3.2011 b/deploy/build_env/centos/Dockerfile.8.3.2011 new file mode 100644 index 000000000..0b7037a13 --- /dev/null +++ b/deploy/build_env/centos/Dockerfile.8.3.2011 @@ -0,0 +1,22 @@ +from centos:8.3.2011 + +RUN yum update -y +RUN yum -y groupinstall "Development Tools" +RUN yum config-manager --set-enabled powertools +RUN yum -y install wget rpm-build zlib-devel python3-devel python3-numpy libibverbs librdmacm librdmacm-devel mc +RUN yum -y install cmake glibc-static libstdc++-static +RUN pip3 install cython +RUN ln -s /usr/bin/python3 /usr/bin/python + +ADD install_curl.sh install_curl.sh +RUN ./install_curl.sh /curl + +ADD install_libfabric.sh install_libfabric.sh +RUN ./install_libfabric.sh + +ENV GOPATH /tmp +ENV OS el8 +ADD build.sh /bin/build.sh + + + diff --git a/deploy/build_env/centos/build.sh b/deploy/build_env/centos/build.sh index 8f01bd363..dbcfc1ccc 100755 --- a/deploy/build_env/centos/build.sh +++ b/deploy/build_env/centos/build.sh @@ -10,8 +10,9 @@ cmake \ -DNUMPY_VERSION=0 \ -DLIBCURL_DIR=/curl \ .. +make make package -cd consumer/api/python/source_dist_linux && make python-rpm-consumer && make python3-rpm-consumer && cd - -cd producer/api/python/source_dist_linux && make python-rpm-producer && make python3-rpm-producer +cd consumer/api/python/source_dist_linux && make python-rpm-consumer python3-rpm-consumer && cd - +cd producer/api/python/source_dist_linux && make python-rpm-producer python3-rpm-producer diff --git a/deploy/build_env/centos/build_image.sh b/deploy/build_env/centos/build_el7.sh similarity index 100% rename from deploy/build_env/centos/build_image.sh rename to deploy/build_env/centos/build_el7.sh diff --git a/deploy/build_env/centos/build_el8.sh b/deploy/build_env/centos/build_el8.sh new file mode 100755 index 000000000..44d5e7dcf --- /dev/null +++ b/deploy/build_env/centos/build_el8.sh @@ -0,0 +1,2 @@ +#!/usr/bin/env bash +docker build -t yakser/asapo-env:centos8.3.2011 -f Dockerfile.8.3.2011 . diff --git a/deploy/build_env/manylinux2010/build.sh b/deploy/build_env/manylinux2010/build.sh index 647c7c4d1..586cd0486 100755 --- a/deploy/build_env/manylinux2010/build.sh +++ b/deploy/build_env/manylinux2010/build.sh @@ -19,22 +19,22 @@ for python_path in /opt/python/cp{27,35,36,37,38}*; do cd /asapo/build 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 \ - && $pip wheel api/python/source_dist_linux/dist/*.tar.gz -w wheelhouse --no-deps - cd ../producer \ - && $pip install -r api/python/dev-requirements.txt \ - && make \ - && $pip wheel api/python/source_dist_linux/dist/*.tar.gz -w wheelhouse --no-deps + cd /asapo/build/consumer/api/python/source_dist_linux \ + && $pip install -r ../dev-requirements.txt \ + && make python-dist \ + && $pip wheel dist/*.tar.gz -w /asapo/build/consumer/wheelhouse --no-deps + cd /asapo/build/producer/api/python/source_dist_linux \ + && $pip install -r ../dev-requirements.txt \ + && make python-dist-producer \ + && $pip wheel dist/*.tar.gz -w /asapo/build/producer/wheelhouse --no-deps done -cd ../consumer \ +cd /asapo/build/consumer \ && for wheel in wheelhouse/asapo_consumer*.whl; do auditwheel repair $wheel --plat manylinux2010_x86_64 -w /asapo/build/wheelhouse done -cd ../producer \ +cd /asapo/build/producer \ && for wheel in wheelhouse/asapo_producer*.whl; do auditwheel repair $wheel --plat manylinux2010_x86_64 -w /asapo/build/wheelhouse done \ No newline at end of file diff --git a/producer/api/python/CMakeLists_Linux.cmake b/producer/api/python/CMakeLists_Linux.cmake index 0a8ca96ac..47bee3561 100644 --- a/producer/api/python/CMakeLists_Linux.cmake +++ b/producer/api/python/CMakeLists_Linux.cmake @@ -15,7 +15,7 @@ configure_files(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} @ONLY) file(GENERATE OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/setup.py INPUT ${CMAKE_CURRENT_BINARY_DIR}/setup.py) -ADD_CUSTOM_TARGET(python-lib-producer ALL +ADD_CUSTOM_TARGET(python-lib-producer COMMAND ${Python_EXECUTABLE} setup.py build_ext --inplace --force) ADD_DEPENDENCIES(python-lib-producer asapo-producer) diff --git a/producer/api/python/source_dist_linux/CMakeLists.txt b/producer/api/python/source_dist_linux/CMakeLists.txt index ff359b363..1ee0b4ff1 100644 --- a/producer/api/python/source_dist_linux/CMakeLists.txt +++ b/producer/api/python/source_dist_linux/CMakeLists.txt @@ -4,18 +4,18 @@ configure_file(MANIFEST.in MANIFEST.in @ONLY) file(GENERATE OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/setup.py INPUT ${CMAKE_CURRENT_BINARY_DIR}/setup.py) ADD_CUSTOM_TARGET(python-rpm-producer - COMMAND PACKAGE_PREFIX=python- python setup.py bdist_rpm --release=${PACKAGE_RELEASE_SUFFIX} --requires=numpy + COMMAND PACKAGE_PREFIX=python- python setup.py bdist_rpm --release=1.${PACKAGE_RELEASE_SUFFIX} --requires=numpy ) ADD_CUSTOM_TARGET(python3-rpm-producer - COMMAND PACKAGE_PREFIX=python3- python3 setup.py bdist_rpm --release=${PACKAGE_RELEASE_SUFFIX} --requires=python3-numpy + COMMAND PACKAGE_PREFIX=python3- python3 setup.py bdist_rpm --release=1.${PACKAGE_RELEASE_SUFFIX} --requires=python3-numpy ) -ADD_CUSTOM_TARGET(python-dist-producer ALL +ADD_CUSTOM_TARGET(python-dist-producer COMMAND ${Python_EXECUTABLE} setup.py sdist ) -ADD_CUSTOM_TARGET(copy_python_dist-producer ALL +ADD_CUSTOM_TARGET(copy_python_dist-producer COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/../asapo_wrappers.h ${CMAKE_CURRENT_BINARY_DIR}/. COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_BINARY_DIR}/../asapo_producer.cpp ${CMAKE_CURRENT_BINARY_DIR}/. COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/producer/api/cpp/include ${CMAKE_CURRENT_BINARY_DIR}/include @@ -35,3 +35,5 @@ ELSE() ENDIF() ADD_DEPENDENCIES(python-dist-producer copy_python_dist-producer) +ADD_DEPENDENCIES(python3-rpm-producer copy_python_dist-producer) +ADD_DEPENDENCIES(python-rpm-producer copy_python_dist-producer) diff --git a/tests/automatic/asapo_fabric/timeout_test.cpp b/tests/automatic/asapo_fabric/timeout_test.cpp index 22621d49c..f752af6ef 100644 --- a/tests/automatic/asapo_fabric/timeout_test.cpp +++ b/tests/automatic/asapo_fabric/timeout_test.cpp @@ -1,10 +1,10 @@ #include <iostream> #include <future> -#include <asapo/common/error.h> -#include <logger/logger.h> +#include "asapo/common/error.h" +#include "asapo/logger/logger.h" #include <testing.h> -#include <asapo/asapo_fabric/asapo_fabric.h> -#include <asapo/common/io_error.h> +#include "asapo/asapo_fabric/asapo_fabric.h" +#include "asapo/common/io_error.h" using namespace asapo; using namespace fabric; -- GitLab