|
@@ -11,93 +11,99 @@ env:
|
|
BUILD_TYPE: Release
|
|
BUILD_TYPE: Release
|
|
|
|
|
|
jobs:
|
|
jobs:
|
|
- macos:
|
|
|
|
|
|
+ macosPython:
|
|
runs-on: macOS-latest
|
|
runs-on: macOS-latest
|
|
steps:
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/checkout@v3
|
|
- - name: Install Python NumPy and Pybind11
|
|
|
|
- # run: sudo apt install python3-numpy python3-all-dev python-numpy-dev python3-pybind11 python3-distutils && sudo pip3 install tox
|
|
|
|
|
|
+
|
|
|
|
+ - name: Install tox
|
|
run: pip3 install tox
|
|
run: pip3 install tox
|
|
|
|
|
|
- name: Python initial test
|
|
- name: Python initial test
|
|
working-directory: ${{github.workspace}}
|
|
working-directory: ${{github.workspace}}
|
|
run: tox run
|
|
run: tox run
|
|
|
|
|
|
- build:
|
|
|
|
- # The CMake configure and build commands are platform agnostic and should work equally well on Windows or Mac.
|
|
|
|
- # You can convert this to a matrix build if you need cross-platform coverage.
|
|
|
|
- # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix
|
|
|
|
|
|
+ ubuntu_Python_wo_Boost:
|
|
runs-on: ubuntu-latest
|
|
runs-on: ubuntu-latest
|
|
|
|
+ steps:
|
|
|
|
+ - uses: actions/checkout@v3
|
|
|
|
+
|
|
|
|
+ - name: Install Python NumPy and Pybind11
|
|
|
|
+ run: sudo pip3 install tox
|
|
|
|
+
|
|
|
|
+ - name: Python initial test
|
|
|
|
+ working-directory: ${{github.workspace}}
|
|
|
|
+ run: tox run
|
|
|
|
|
|
|
|
+ ubuntu_Python_Boost:
|
|
|
|
+ runs-on: ubuntu-latest
|
|
steps:
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/checkout@v3
|
|
|
|
|
|
- # without GTest and Boost
|
|
|
|
- name: Install Python NumPy and Pybind11
|
|
- name: Install Python NumPy and Pybind11
|
|
- # run: sudo apt install python3-numpy python3-all-dev python-numpy-dev python3-pybind11 python3-distutils && sudo pip3 install tox
|
|
|
|
- run: sudo apt install python3-numpy python3-all-dev python3-pybind11 python3-distutils && sudo pip3 install tox
|
|
|
|
|
|
+ run: sudo pip3 install tox
|
|
|
|
+
|
|
|
|
+ - name: install Boost (to use multiprecision)
|
|
|
|
+ run: sudo apt install libboost-all-dev
|
|
|
|
|
|
- name: Python initial test
|
|
- name: Python initial test
|
|
working-directory: ${{github.workspace}}
|
|
working-directory: ${{github.workspace}}
|
|
run: tox run
|
|
run: tox run
|
|
|
|
|
|
|
|
+ isBuilding_wo_GTest_Boost:
|
|
|
|
+ runs-on: ubuntu-latest
|
|
|
|
+ steps:
|
|
|
|
+ - uses: actions/checkout@v3
|
|
|
|
+
|
|
|
|
+ - name: Install Python NumPy and Pybind11
|
|
|
|
+ run: sudo apt install python3-pybind11
|
|
|
|
+
|
|
- name: Configure CMake
|
|
- name: Configure CMake
|
|
- # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
|
|
|
|
- # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
|
|
|
|
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
|
|
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
|
|
|
|
|
|
- name: Build
|
|
- name: Build
|
|
- # Build your program with the given configuration
|
|
|
|
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
|
|
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
|
|
|
|
|
|
- name: Test
|
|
- name: Test
|
|
working-directory: ${{github.workspace}}/build
|
|
working-directory: ${{github.workspace}}/build
|
|
- # Execute tests defined by the CMake configuration.
|
|
|
|
- # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
|
|
|
|
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
|
|
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
|
|
|
|
|
|
- ##################################################################
|
|
|
|
- # Do just the same but now with Google Test lib for C++ part
|
|
|
|
- ##################################################################
|
|
|
|
- - name: install Google Test
|
|
|
|
- run: sudo apt install libgtest-dev
|
|
|
|
|
|
+ ctest_wo_Boost:
|
|
|
|
+ runs-on: ubuntu-latest
|
|
|
|
+ steps:
|
|
|
|
+ - uses: actions/checkout@v3
|
|
|
|
+
|
|
|
|
+ - name: Install deps
|
|
|
|
+ run: sudo apt install python3-pybind11 libgtest-dev
|
|
|
|
|
|
- name: Configure CMake
|
|
- name: Configure CMake
|
|
- # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
|
|
|
|
- # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
|
|
|
|
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
|
|
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
|
|
|
|
|
|
- name: Build
|
|
- name: Build
|
|
- # Build your program with the given configuration
|
|
|
|
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
|
|
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
|
|
|
|
|
|
- name: Test
|
|
- name: Test
|
|
working-directory: ${{github.workspace}}/build
|
|
working-directory: ${{github.workspace}}/build
|
|
- # Execute tests defined by the CMake configuration.
|
|
|
|
- # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
|
|
|
|
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
|
|
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
|
|
|
|
|
|
|
|
+ ctest_full:
|
|
|
|
+ runs-on: ubuntu-latest
|
|
|
|
+
|
|
|
|
+ steps:
|
|
|
|
+ - uses: actions/checkout@v3
|
|
|
|
+
|
|
##################################################################
|
|
##################################################################
|
|
# Do just the same but now with Boost multiprecision
|
|
# Do just the same but now with Boost multiprecision
|
|
##################################################################
|
|
##################################################################
|
|
- name: install Boost (to use multiprecision)
|
|
- name: install Boost (to use multiprecision)
|
|
- run: sudo apt install libboost-all-dev
|
|
|
|
|
|
+ run: sudo apt install python3-pybind11 libgtest-dev libboost-all-dev
|
|
|
|
|
|
- name: Configure CMake
|
|
- name: Configure CMake
|
|
- # Configure CMake in a 'build' subdirectory. `CMAKE_BUILD_TYPE` is only required if you are using a single-configuration generator such as make.
|
|
|
|
- # See https://cmake.org/cmake/help/latest/variable/CMAKE_BUILD_TYPE.html?highlight=cmake_build_type
|
|
|
|
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
|
|
run: cmake -B ${{github.workspace}}/build -DCMAKE_BUILD_TYPE=${{env.BUILD_TYPE}}
|
|
|
|
|
|
- name: Build
|
|
- name: Build
|
|
- # Build your program with the given configuration
|
|
|
|
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
|
|
run: cmake --build ${{github.workspace}}/build --config ${{env.BUILD_TYPE}}
|
|
|
|
|
|
- name: Test
|
|
- name: Test
|
|
working-directory: ${{github.workspace}}/build
|
|
working-directory: ${{github.workspace}}/build
|
|
- # Execute tests defined by the CMake configuration.
|
|
|
|
- # See https://cmake.org/cmake/help/latest/manual/ctest.1.html for more detail
|
|
|
|
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
|
|
run: ctest -C ${{env.BUILD_TYPE}} --output-on-failure
|
|
-
|
|
|
|
- - name: Python mp test
|
|
|
|
- working-directory: ${{github.workspace}}
|
|
|
|
- run: tox run
|
|
|