Merge pull request #720 from borglab/fix/717
						commit
						8fcfb4fe30
					
				|  | @ -0,0 +1,18 @@ | |||
| ### Script to install Boost | ||||
| BOOST_FOLDER=boost_${BOOST_VERSION//./_} | ||||
| 
 | ||||
| # Download Boost | ||||
| wget https://dl.bintray.com/boostorg/release/${BOOST_VERSION}/source/${BOOST_FOLDER}.tar.gz | ||||
| 
 | ||||
| # Unzip | ||||
| tar -zxf ${BOOST_FOLDER}.tar.gz | ||||
| 
 | ||||
| # Bootstrap | ||||
| cd ${BOOST_FOLDER}/ | ||||
| ./bootstrap.sh | ||||
| 
 | ||||
| # Build and install | ||||
| sudo ./b2 install | ||||
| 
 | ||||
| # Rebuild ld cache | ||||
| sudo ldconfig | ||||
|  | @ -65,21 +65,23 @@ sudo $PYTHON -m pip install -r $GITHUB_WORKSPACE/python/requirements.txt | |||
| mkdir $GITHUB_WORKSPACE/build | ||||
| cd $GITHUB_WORKSPACE/build | ||||
| 
 | ||||
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=Release \ | ||||
|     -DGTSAM_BUILD_TESTS=OFF -DGTSAM_BUILD_UNSTABLE=ON \ | ||||
| cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE} \ | ||||
|     -DGTSAM_BUILD_TESTS=OFF \ | ||||
|     -DGTSAM_BUILD_UNSTABLE=${GTSAM_BUILD_UNSTABLE:-ON} \ | ||||
|     -DGTSAM_USE_QUATERNIONS=OFF \ | ||||
|     -DGTSAM_WITH_TBB=${GTSAM_WITH_TBB:-OFF} \ | ||||
|     -DGTSAM_BUILD_EXAMPLES_ALWAYS=OFF \ | ||||
|     -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF \ | ||||
|     -DGTSAM_BUILD_PYTHON=${BUILD_PYBIND} \ | ||||
|     -DGTSAM_TYPEDEF_POINTS_TO_VECTORS=${TYPEDEF_POINTS_TO_VECTORS} \ | ||||
|     -DGTSAM_UNSTABLE_BUILD_PYTHON=${GTSAM_BUILD_UNSTABLE:-ON} \ | ||||
|     -DGTSAM_PYTHON_VERSION=$PYTHON_VERSION \ | ||||
|     -DPYTHON_EXECUTABLE:FILEPATH=$(which $PYTHON) \ | ||||
|     -DGTSAM_ALLOW_DEPRECATED_SINCE_V41=OFF \ | ||||
|     -DCMAKE_INSTALL_PREFIX=$GITHUB_WORKSPACE/gtsam_install | ||||
| 
 | ||||
| make -j$(nproc) install | ||||
| 
 | ||||
| # Set to 2 cores so that Actions does not error out during resource provisioning. | ||||
| make -j2 install | ||||
| 
 | ||||
| cd $GITHUB_WORKSPACE/build/python | ||||
| $PYTHON setup.py install --user --prefix= | ||||
|  |  | |||
|  | @ -12,6 +12,7 @@ jobs: | |||
|       CTEST_PARALLEL_LEVEL: 2 | ||||
|       CMAKE_BUILD_TYPE: ${{ matrix.build_type }} | ||||
|       GTSAM_BUILD_UNSTABLE: ${{ matrix.build_unstable }} | ||||
|       BOOST_VERSION: 1.67.0 | ||||
| 
 | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|  | @ -44,7 +45,8 @@ jobs: | |||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@master | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install (Linux) | ||||
|         if: runner.os == 'Linux' | ||||
|         run: | | ||||
|  | @ -61,10 +63,7 @@ jobs: | |||
|           fi | ||||
|           sudo apt-get -y update | ||||
| 
 | ||||
|           sudo apt install cmake build-essential pkg-config libpython-dev python-numpy | ||||
|            | ||||
|           echo "BOOST_ROOT=$(echo $BOOST_ROOT_1_72_0)" >> $GITHUB_ENV | ||||
|           echo "LD_LIBRARY_PATH=$(echo $BOOST_ROOT_1_72_0/lib)" >> $GITHUB_ENV | ||||
|           sudo apt-get install cmake build-essential pkg-config libpython-dev python-numpy libicu-dev | ||||
| 
 | ||||
|           if [ "${{ matrix.compiler }}" = "gcc" ]; then | ||||
|             sudo apt-get install -y g++-${{ matrix.version }} g++-${{ matrix.version }}-multilib | ||||
|  | @ -75,10 +74,11 @@ jobs: | |||
|             echo "CC=clang-${{ matrix.version }}" >> $GITHUB_ENV | ||||
|             echo "CXX=clang++-${{ matrix.version }}" >> $GITHUB_ENV | ||||
|           fi | ||||
|       - name: Check Boost version | ||||
|         if: runner.os == 'Linux' | ||||
| 
 | ||||
|       - name: Install Boost | ||||
|         run: | | ||||
|           echo "BOOST_ROOT = $BOOST_ROOT" | ||||
|           bash .github/scripts/boost.sh | ||||
| 
 | ||||
|       - name: Build and Test (Linux) | ||||
|         if: runner.os == 'Linux' | ||||
|         run: | | ||||
|  |  | |||
|  | @ -12,6 +12,7 @@ jobs: | |||
|       CTEST_PARALLEL_LEVEL: 2 | ||||
|       CMAKE_BUILD_TYPE: ${{ matrix.build_type }} | ||||
|       GTSAM_BUILD_UNSTABLE: ${{ matrix.build_unstable }} | ||||
| 
 | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|  | @ -31,7 +32,8 @@ jobs: | |||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@master | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install (macOS) | ||||
|         if: runner.os == 'macOS' | ||||
|         run: | | ||||
|  |  | |||
|  | @ -12,6 +12,7 @@ jobs: | |||
|       CTEST_PARALLEL_LEVEL: 2 | ||||
|       CMAKE_BUILD_TYPE: ${{ matrix.build_type }} | ||||
|       PYTHON_VERSION: ${{ matrix.python_version }} | ||||
| 
 | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|       matrix: | ||||
|  | @ -22,10 +23,12 @@ jobs: | |||
|           ubuntu-18.04-gcc-9, | ||||
|           ubuntu-18.04-clang-9, | ||||
|           macOS-10.15-xcode-11.3.1, | ||||
|           #ubuntu-18.04-gcc-5-tbb, | ||||
|           # ubuntu-18.04-gcc-5-tbb, | ||||
|         ] | ||||
| 
 | ||||
|         build_type: [Debug, Release] | ||||
|         #TODO update wrapper to prevent OOM | ||||
|         # build_type: [Debug, Release] | ||||
|         build_type: [Release] | ||||
|         python_version: [3] | ||||
|         include: | ||||
|           - name: ubuntu-18.04-gcc-5 | ||||
|  | @ -43,20 +46,28 @@ jobs: | |||
|             compiler: clang | ||||
|             version: "9" | ||||
| 
 | ||||
|           #NOTE temporarily added this as it is a required check. | ||||
|           - name: ubuntu-18.04-clang-9 | ||||
|             os: ubuntu-18.04 | ||||
|             compiler: clang | ||||
|             version: "9" | ||||
|             build_type: Debug | ||||
|             python_version: "3" | ||||
| 
 | ||||
|           - name: macOS-10.15-xcode-11.3.1 | ||||
|             os: macOS-10.15 | ||||
|             compiler: xcode | ||||
|             version: "11.3.1" | ||||
| 
 | ||||
| #           - name: ubuntu-18.04-gcc-5-tbb | ||||
| #             os: ubuntu-18.04 | ||||
| #             compiler: gcc | ||||
| #             version: "5" | ||||
| #             flag: tbb | ||||
|           # - name: ubuntu-18.04-gcc-5-tbb | ||||
|           #   os: ubuntu-18.04 | ||||
|           #   compiler: gcc | ||||
|           #   version: "5" | ||||
|           #   flag: tbb | ||||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@master | ||||
|         uses: actions/checkout@v2 | ||||
|       - name: Install (Linux) | ||||
|         if: runner.os == 'Linux' | ||||
|         run: | | ||||
|  |  | |||
|  | @ -12,6 +12,7 @@ jobs: | |||
|       CTEST_PARALLEL_LEVEL: 2 | ||||
|       CMAKE_BUILD_TYPE: ${{ matrix.build_type }} | ||||
|       GTSAM_BUILD_UNSTABLE: ON | ||||
|       BOOST_VERSION: 1.67.0 | ||||
| 
 | ||||
|     strategy: | ||||
|       fail-fast: false | ||||
|  | @ -56,7 +57,7 @@ jobs: | |||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@master | ||||
|         uses: actions/checkout@v2 | ||||
| 
 | ||||
|       - name: Install (Linux) | ||||
|         if: runner.os == 'Linux' | ||||
|  | @ -69,10 +70,7 @@ jobs: | |||
|           fi | ||||
|           sudo apt-get -y update | ||||
| 
 | ||||
|           sudo apt install cmake build-essential pkg-config libpython-dev python-numpy | ||||
| 
 | ||||
|           echo "BOOST_ROOT=$(echo $BOOST_ROOT_1_72_0)" >> $GITHUB_ENV | ||||
|           echo "LD_LIBRARY_PATH=$(echo $BOOST_ROOT_1_72_0/lib)" >> $GITHUB_ENV | ||||
|           sudo apt install cmake build-essential pkg-config libpython-dev python-numpy libicu-dev | ||||
| 
 | ||||
|           if [ "${{ matrix.compiler }}" = "gcc" ]; then | ||||
|             sudo apt-get install -y g++-${{ matrix.version }} g++-${{ matrix.version }}-multilib | ||||
|  | @ -84,6 +82,11 @@ jobs: | |||
|             echo "CXX=clang++-${{ matrix.version }}" >> $GITHUB_ENV | ||||
|           fi | ||||
| 
 | ||||
|       - name: Install Boost | ||||
|         if: runner.os == 'Linux' | ||||
|         run: | | ||||
|           bash .github/scripts/boost.sh | ||||
| 
 | ||||
|       - name: Install (macOS) | ||||
|         if: runner.os == 'macOS' | ||||
|         run: | | ||||
|  |  | |||
|  | @ -38,7 +38,7 @@ jobs: | |||
| 
 | ||||
|     steps: | ||||
|       - name: Checkout | ||||
|         uses: actions/checkout@master | ||||
|         uses: actions/checkout@v2 | ||||
|       - name: Install (Windows) | ||||
|         if: runner.os == 'Windows' | ||||
|         shell: powershell | ||||
|  | @ -64,12 +64,21 @@ jobs: | |||
|           } | ||||
|           # Scoop modifies the PATH so we make the modified PATH global. | ||||
|           echo "$env:PATH" >> $GITHUB_PATH | ||||
| 
 | ||||
|       - name: Download and install Boost | ||||
|         uses: MarkusJx/install-boost@v1.0.1 | ||||
|         id: install-boost | ||||
|         with: | ||||
|           boost_version: 1.72.0 | ||||
|           toolset: msvc14.2 | ||||
| 
 | ||||
|       - name: Build (Windows) | ||||
|         if: runner.os == 'Windows' | ||||
|         env: | ||||
|           BOOST_ROOT: ${{ steps.install-boost.outputs.BOOST_ROOT }} | ||||
|         run: | | ||||
|           cmake -E remove_directory build | ||||
|           echo "BOOST_ROOT_1_72_0: ${env:BOOST_ROOT_1_72_0}" | ||||
|           cmake -B build -S . -DGTSAM_BUILD_EXAMPLES_ALWAYS=OFF -DBOOST_ROOT="${env:BOOST_ROOT_1_72_0}" -DBOOST_INCLUDEDIR="${env:BOOST_ROOT_1_72_0}\boost\include" -DBOOST_LIBRARYDIR="${env:BOOST_ROOT_1_72_0}\lib" | ||||
|           cmake -B build -S . -DGTSAM_BUILD_EXAMPLES_ALWAYS=OFF -DBOOST_ROOT="${env:BOOST_ROOT}" -DBOOST_INCLUDEDIR="${env:BOOST_ROOT}\boost\include" -DBOOST_LIBRARYDIR="${env:BOOST_ROOT}\lib" | ||||
|           cmake --build build --config ${{ matrix.build_type }} --target gtsam | ||||
|           cmake --build build --config ${{ matrix.build_type }} --target gtsam_unstable | ||||
|           cmake --build build --config ${{ matrix.build_type }} --target wrap | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue