From 379fc97440d9e15578a9e73bb3d85e9069fb6bff Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 07:20:02 +0000 Subject: [PATCH 01/10] [WIP] Fix: Static link boost! --- src/CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index a8781c7..a46ffc6 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -35,6 +35,7 @@ set(SERVOARRAY_DEFAULT_CONFIG_FILES ~/.servoarrayrc ./.servoarrayrc) option(BUILD_PYTHON "Build servoarray python module" ON) +set(Boost_USE_STATIC_LIBS ON) find_package(Boost 1.36.0 REQUIRED COMPONENTS filesystem system) include_directories(${Boost_INCLUDE_DIRS}) From 79a6f5c86d55a2343decaa0d8ccbfaa57312cf89 Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 07:39:55 +0000 Subject: [PATCH 02/10] Add: Build boost manually with -fPIC --- ci/image/Dockerfile.in | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/ci/image/Dockerfile.in b/ci/image/Dockerfile.in index 6fbb1d9..d421197 100644 --- a/ci/image/Dockerfile.in +++ b/ci/image/Dockerfile.in @@ -3,7 +3,12 @@ FROM @BASE_IMAGE@ SHELL @SHELL@ RUN apt-get update -y \ - && apt-get install -y --no-install-recommends libboost-dev libboost-filesystem-dev cmake build-essential + && apt-get install -y --no-install-recommends libboost-dev libboost-filesystem-dev cmake build-essential curl + +RUN mkdir -p tmp/boost && cd $_ \ + && curl -L https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.gz | tar -xz --strip-components=1 \ + && ./bootstrap.sh \ + && ./b2 cxxflags=-fPIC cflags=-fPIC -a -d0 link=static --with-filesystem --with-system install COPY scripts /scripts From f5ea73e21fc80d840175b97e94c0f68ad5b0eb3e Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 07:40:27 +0000 Subject: [PATCH 03/10] Delete: Dont't install boost from apt --- ci/image/Dockerfile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/image/Dockerfile.in b/ci/image/Dockerfile.in index d421197..1e00a23 100644 --- a/ci/image/Dockerfile.in +++ b/ci/image/Dockerfile.in @@ -3,7 +3,7 @@ FROM @BASE_IMAGE@ SHELL @SHELL@ RUN apt-get update -y \ - && apt-get install -y --no-install-recommends libboost-dev libboost-filesystem-dev cmake build-essential curl + && apt-get install -y --no-install-recommends cmake build-essential curl RUN mkdir -p tmp/boost && cd $_ \ && curl -L https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.gz | tar -xz --strip-components=1 \ From 6dd428fc2bc23ad84f40f873f4c6e39eb6aa14ae Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 07:44:10 +0000 Subject: [PATCH 04/10] Fix: Install ca-certificates to fix curl error --- ci/image/Dockerfile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/image/Dockerfile.in b/ci/image/Dockerfile.in index 1e00a23..c46315a 100644 --- a/ci/image/Dockerfile.in +++ b/ci/image/Dockerfile.in @@ -3,7 +3,7 @@ FROM @BASE_IMAGE@ SHELL @SHELL@ RUN apt-get update -y \ - && apt-get install -y --no-install-recommends cmake build-essential curl + && apt-get install -y --no-install-recommends cmake build-essential curl ca-certificates RUN mkdir -p tmp/boost && cd $_ \ && curl -L https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.gz | tar -xz --strip-components=1 \ From c8cc6d569dd08846de1efa4505a2744eda19cf8f Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 07:44:54 +0000 Subject: [PATCH 05/10] Change: Use curl -fsSL to silently download file --- ci/image/Dockerfile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/image/Dockerfile.in b/ci/image/Dockerfile.in index c46315a..758915e 100644 --- a/ci/image/Dockerfile.in +++ b/ci/image/Dockerfile.in @@ -6,7 +6,7 @@ RUN apt-get update -y \ && apt-get install -y --no-install-recommends cmake build-essential curl ca-certificates RUN mkdir -p tmp/boost && cd $_ \ - && curl -L https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.gz | tar -xz --strip-components=1 \ + && curl -fsSL https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.gz | tar -xz --strip-components=1 \ && ./bootstrap.sh \ && ./b2 cxxflags=-fPIC cflags=-fPIC -a -d0 link=static --with-filesystem --with-system install From 6bec2fe1a9a48482a2afe5de87e4a15b531d1557 Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 07:51:20 +0000 Subject: [PATCH 06/10] Change: Inject boost version --- ci/image/Dockerfile.in | 2 +- ci/scripts/install.sh | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/ci/image/Dockerfile.in b/ci/image/Dockerfile.in index 758915e..65566d1 100644 --- a/ci/image/Dockerfile.in +++ b/ci/image/Dockerfile.in @@ -6,7 +6,7 @@ RUN apt-get update -y \ && apt-get install -y --no-install-recommends cmake build-essential curl ca-certificates RUN mkdir -p tmp/boost && cd $_ \ - && curl -fsSL https://dl.bintray.com/boostorg/release/1.69.0/source/boost_1_69_0.tar.gz | tar -xz --strip-components=1 \ + && curl -fsSL https://dl.bintray.com/boostorg/release/@BOOST_VERSION@/source/boost_@BOOST_VERSION_U@.tar.gz | tar -xz --strip-components=1 \ && ./bootstrap.sh \ && ./b2 cxxflags=-fPIC cflags=-fPIC -a -d0 link=static --with-filesystem --with-system install diff --git a/ci/scripts/install.sh b/ci/scripts/install.sh index d61f92f..4c42615 100755 --- a/ci/scripts/install.sh +++ b/ci/scripts/install.sh @@ -50,11 +50,14 @@ function cross_sh() { readonly BASE_IMAGE=$(base_image) readonly CROSS_SH=$(cross_sh) +readonly BOOST_VERSION=1.69.0 echo "BASE_IMAGE=${BASE_IMAGE}" cat ci/image/Dockerfile.in \ | sed "s/@BASE_IMAGE@/${BASE_IMAGE//\//\\/}/g" \ | sed "s/@SHELL@/${CROSS_SH//\//\\/}/g" \ + | sed "s/@BOOST_VERSION@/${BOOST_VERSION}/g" \ + | sed "s/@BOOST_VERSION_U@/${BOOST_VERSION//\./_}/g" \ > ci/image/Dockerfile docker build ci/image -t builder From 092570bea68322dffd63776c6fd163651025010c Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Sun, 10 Feb 2019 08:41:09 +0000 Subject: [PATCH 07/10] Fix: insert travis_wait --- ci/scripts/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/scripts/install.sh b/ci/scripts/install.sh index 4c42615..636928a 100755 --- a/ci/scripts/install.sh +++ b/ci/scripts/install.sh @@ -60,4 +60,4 @@ cat ci/image/Dockerfile.in \ | sed "s/@BOOST_VERSION_U@/${BOOST_VERSION//\./_}/g" \ > ci/image/Dockerfile -docker build ci/image -t builder +travis_wait 20 docker build ci/image -t builder From 0ab1674690085884251574f0e557aead97addfae Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Mon, 11 Feb 2019 05:58:55 +0000 Subject: [PATCH 08/10] Revert "Fix: insert travis_wait" This reverts commit 092570bea68322dffd63776c6fd163651025010c. --- ci/scripts/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/scripts/install.sh b/ci/scripts/install.sh index 636928a..4c42615 100755 --- a/ci/scripts/install.sh +++ b/ci/scripts/install.sh @@ -60,4 +60,4 @@ cat ci/image/Dockerfile.in \ | sed "s/@BOOST_VERSION_U@/${BOOST_VERSION//\./_}/g" \ > ci/image/Dockerfile -travis_wait 20 docker build ci/image -t builder +docker build ci/image -t builder From 4581896606fa31ea508e07242e0b078b21b2c41d Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Mon, 11 Feb 2019 06:00:08 +0000 Subject: [PATCH 09/10] Fix: Show logs during the build of boost --- ci/image/Dockerfile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/image/Dockerfile.in b/ci/image/Dockerfile.in index 65566d1..e9f751b 100644 --- a/ci/image/Dockerfile.in +++ b/ci/image/Dockerfile.in @@ -8,7 +8,7 @@ RUN apt-get update -y \ RUN mkdir -p tmp/boost && cd $_ \ && curl -fsSL https://dl.bintray.com/boostorg/release/@BOOST_VERSION@/source/boost_@BOOST_VERSION_U@.tar.gz | tar -xz --strip-components=1 \ && ./bootstrap.sh \ - && ./b2 cxxflags=-fPIC cflags=-fPIC -a -d0 link=static --with-filesystem --with-system install + && ./b2 cxxflags=-fPIC cflags=-fPIC -a link=static --with-filesystem --with-system install COPY scripts /scripts From b5df96ba92b4598aa2bfba7373630b3052d59587 Mon Sep 17 00:00:00 2001 From: "coord.e" Date: Mon, 11 Feb 2019 06:01:54 +0000 Subject: [PATCH 10/10] Delete: Delete libboost-filesystem dependency --- README.md | 2 -- src/cmake/cpack.cmake | 1 - 2 files changed, 3 deletions(-) diff --git a/README.md b/README.md index 599b338..44ba1b1 100644 --- a/README.md +++ b/README.md @@ -9,8 +9,6 @@ Pluggable servomotor driver library ## Install -[Boost.Filesystem](https://boostorg.github.io/filesystem) is required - ```shell pip install servoarray ``` diff --git a/src/cmake/cpack.cmake b/src/cmake/cpack.cmake index 4aba029..a11c188 100644 --- a/src/cmake/cpack.cmake +++ b/src/cmake/cpack.cmake @@ -16,6 +16,5 @@ set(CPACK_PACKAGE_FILE_NAME "${PROJECT_NAME}-${PROJECT_VERSION}-${CMAKE_SYSTEM_NAME}-${CMAKE_SYSTEM_PROCESSOR}") set(CPACK_GENERATOR "TGZ;ZIP") set(CPACK_PACKAGE_CONTACT "coord.e ") -set(CPACK_DEBIAN_PACKAGE_DEPENDS "libboost-filesystem1.62.0") include(CPack)