Skip to content

Commit

Permalink
Merge branch 'master' into refactor/factor_constructor_arguments
Browse files Browse the repository at this point in the history
  • Loading branch information
varunagrawal committed Oct 18, 2023
2 parents a197b37 + ea65f4a commit a97968c
Show file tree
Hide file tree
Showing 479 changed files with 266,719 additions and 5,354 deletions.
45 changes: 26 additions & 19 deletions .github/workflows/linux-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,39 +11,40 @@ jobs:
CTEST_OUTPUT_ON_FAILURE: ON
CTEST_PARALLEL_LEVEL: 2
CMAKE_BUILD_TYPE: ${{ matrix.build_type }}
GTSAM_BUILD_UNSTABLE: ${{ matrix.build_unstable }}

strategy:
fail-fast: false
matrix:
# Github Actions requires a single row to be added to the build matrix.
# See https://help.github.com/en/articles/workflow-syntax-for-github-actions.
name: [ubuntu-18.04-gcc-9, ubuntu-18.04-clang-9]
name: [ubuntu-20.04-gcc-9, ubuntu-20.04-clang-10]

build_type: [Debug, Release]
build_unstable: [ON]
include:
- name: ubuntu-18.04-gcc-9
os: ubuntu-18.04
- name: ubuntu-20.04-gcc-9
os: ubuntu-20.04
compiler: gcc
version: "9"

- name: ubuntu-18.04-clang-9
os: ubuntu-18.04
- name: ubuntu-20.04-clang-10
os: ubuntu-20.04
compiler: clang
version: "9"
version: "10"

steps:
- name: Setup Compiler
run: |
sudo apt-get -y clean && sudo apt-get -y update
if [ "${{ matrix.compiler }}" = "gcc" ]; then
sudo apt-get install -y g++-${{ matrix.version }} g++-${{ matrix.version }}-multilib
echo "CC=gcc-${{ matrix.version }}" >> $GITHUB_ENV
echo "CXX=g++-${{ matrix.version }}" >> $GITHUB_ENV
else
sudo apt-get install -y clang-${{ matrix.version }} g++-multilib
echo "CC=clang" >> $GITHUB_ENV
echo "CXX=clang++" >> $GITHUB_ENV
echo "CC=clang-${{ matrix.version }}" >> $GITHUB_ENV
echo "CXX=clang++-${{ matrix.version }}" >> $GITHUB_ENV
fi
- name: Install Dependencies
Expand All @@ -53,17 +54,19 @@ jobs:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D2486D2DD83DB69272AFE98867170598AF249743
sudo apt-get -y update
sudo apt-get -y install libtbb-dev libboost-all-dev libsdformat10-dev
sudo apt-get -y install libtbb-dev libboost-all-dev libsdformat12-dev
# Install CppUnitLite.
git clone https://github.com/borglab/CppUnitLite.git
cd CppUnitLite && mkdir build && cd $_
cmake .. && sudo make -j4 install
cd ../../
- name: GTSAM
run: |
git clone https://github.com/borglab/gtsam.git
cd gtsam
mkdir build && cd build
cmake -D GTSAM_BUILD_EXAMPLES_ALWAYS=OFF ..
sudo make -j$(nproc) install
sudo ldconfig
cd ../../ # go back to home directory
sudo add-apt-repository -y ppa:borglab/gtsam-develop
sudo apt-get -y update
sudo apt-get -y install libgtsam-no-tbb-dev libgtsam-no-tbb-unstable-dev
- name: Checkout
uses: actions/checkout@master
Expand All @@ -73,7 +76,7 @@ jobs:

- name: Configure
run: |
cmake -DGTDYNAMICS_BUILD_PYTHON=OFF -DGTDYNAMICS_BUILD_CABLE_ROBOT=ON -DGTDYNAMICS_BUILD_JUMPING_ROBOT=ON ..
cmake -DGTDYNAMICS_BUILD_PYTHON=OFF -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
working-directory: ./build

- name: Build
Expand All @@ -83,3 +86,7 @@ jobs:
- name: Test
run: make -j$(nproc) check
working-directory: ./build

- name: Install
run: sudo make -j$(nproc) install
working-directory: ./build
25 changes: 12 additions & 13 deletions .github/workflows/macos-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,15 @@ jobs:
matrix:
# Github Actions requires a single row to be added to the build matrix.
# See https://help.github.com/en/articles/workflow-syntax-for-github-actions.
name: [macOS-10.15-xcode-11.3.1]
name: [macOS-12-xcode-14.2]

build_type: [Debug, Release]
build_unstable: [ON]
include:
- name: macOS-10.15-xcode-11.3.1
os: macOS-10.15
- name: macOS-12-xcode-14.2
os: macOS-12
compiler: xcode
version: "11.3.1"
version: "14.2"

steps:
- name: Setup Compiler
Expand All @@ -44,16 +44,11 @@ jobs:
run: |
brew install boost
brew tap osrf/simulation
brew install sdformat10
brew install sdformat12
brew tap borglab/core
- name: GTSAM
run: |
git clone https://github.com/borglab/gtsam.git
cd gtsam
mkdir build && cd build
cmake -D GTSAM_BUILD_EXAMPLES_ALWAYS=OFF ..
make -j$(sysctl -n hw.physicalcpu) install
cd ../../ # go back to home directory
run: brew install --HEAD gtsam@latest

- name: Checkout
uses: actions/checkout@v2
Expand All @@ -63,7 +58,7 @@ jobs:

- name: Configure
run: |
cmake -DGTDYNAMICS_BUILD_PYTHON=OFF -DGTDYNAMICS_BUILD_CABLE_ROBOT=ON -DGTDYNAMICS_BUILD_JUMPING_ROBOT=ON ..
cmake -DGTDYNAMICS_BUILD_PYTHON=OFF -DGTSAM_BUILD_WITH_MARCH_NATIVE=OFF ..
working-directory: ./build

- name: Build
Expand All @@ -73,3 +68,7 @@ jobs:
- name: Test
run: make -j$(sysctl -n hw.physicalcpu) check
working-directory: ./build

- name: Install
run: make -j$(sysctl -n hw.physicalcpu) install
working-directory: ./build
66 changes: 42 additions & 24 deletions .github/workflows/python-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,38 +18,38 @@ jobs:
matrix:
# Github Actions requires a single row to be added to the build matrix.
# See https://help.github.com/en/articles/workflow-syntax-for-github-actions.
name:
[ubuntu-18.04-gcc-9, ubuntu-18.04-clang-9, macOS-10.15-xcode-11.3.1]
name: [ubuntu-22.04-gcc-9, ubuntu-22.04-clang-12, macOS-12-xcode-14.2]

build_type: [Debug, Release]
python_version: [3]
include:
- name: ubuntu-18.04-gcc-9
os: ubuntu-18.04
- name: ubuntu-22.04-gcc-9
os: ubuntu-22.04
compiler: gcc
version: "9"

- name: ubuntu-18.04-clang-9
os: ubuntu-18.04
- name: ubuntu-22.04-clang-12
os: ubuntu-22.04
compiler: clang
version: "9"
version: "12"

- name: ubuntu-18.04-clang-9
os: ubuntu-18.04
- name: ubuntu-22.04-clang-12
os: ubuntu-22.04
compiler: clang
version: "9"
version: "12"
build_type: Debug
python_version: "3"

- name: macOS-10.15-xcode-11.3.1
os: macOS-10.15
- name: macOS-12-xcode-14.2
os: macOS-12
compiler: xcode
version: "11.3.1"
version: "14.2"

steps:
- name: Install Dependencies (Linux)
if: runner.os == 'Linux'
run: |
sudo apt-get -y update
if [ "${{ matrix.compiler }}" = "gcc" ]; then
sudo apt-get install -y g++-${{ matrix.version }} g++-${{ matrix.version }}-multilib
echo "CC=gcc-${{ matrix.version }}" >> $GITHUB_ENV
Expand All @@ -66,7 +66,7 @@ jobs:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D2486D2DD83DB69272AFE98867170598AF249743
sudo apt-get -y update
sudo apt-get -y install libtbb-dev libboost-all-dev libsdformat10-dev
sudo apt-get -y install libtbb-dev libboost-all-dev libsdformat12-dev
- name: Install Dependencies (macOS)
if: runner.os == 'macOS'
Expand All @@ -83,34 +83,41 @@ jobs:
brew install boost
brew tap osrf/simulation
brew install sdformat10
brew install sdformat12
- name: Python Dependencies
run: |
# Install dependencies for gtwrap
pip3 install -U setuptools numpy pyparsing
pip3 install -U pip setuptools numpy pyparsing pyyaml
- name: GTSAM (Linux)
if: runner.os == 'Linux'
run: |
# Install gtsam
git clone https://github.com/borglab/gtsam.git /home/runner/work/gtsam
cd /home/runner/work/gtsam
# Clone gtsam
git clone https://github.com/borglab/gtsam.git $GITHUB_WORKSPACE/gtsam
cd $GITHUB_WORKSPACE/gtsam
# Build & Install gtsam
mkdir build && cd $_
cmake -D GTSAM_BUILD_EXAMPLES_ALWAYS=OFF -DGTSAM_BUILD_PYTHON=ON ..
sudo make -j$(nproc) install && sudo make python-install
sudo ldconfig
cd $GITHUB_WORKSPACE # go back to home directory
# Clean up after ourselves since we used `sudo`.
sudo rm -rf $GITHUB_WORKSPACE/gtsam
- name: GTSAM (macOS)
if: runner.os == 'macOS'
run: |
# Install gtsam
git clone https://github.com/borglab/gtsam.git
cd gtsam
git clone https://github.com/borglab/gtsam.git /Users/runner/work/gtsam
cd /Users/runner/work/gtsam
mkdir build && cd $_
cmake -D GTSAM_BUILD_EXAMPLES_ALWAYS=OFF -DGTSAM_BUILD_PYTHON=ON ..
cmake -D GTSAM_BUILD_EXAMPLES_ALWAYS=OFF -DGTSAM_BUILD_PYTHON=ON -DPYTHON_EXECUTABLE=/usr/local/bin/python3 ..
make -j$(sysctl -n hw.physicalcpu) install && make python-install
cd $GITHUB_WORKSPACE # go back to home directory
- name: Checkout
Expand All @@ -119,9 +126,16 @@ jobs:
- name: Build Directory
run: mkdir build

- name: Configure
- name: Configure (Linux)
if: runner.os == 'Linux'
run: |
cmake -DGTDYNAMICS_BUILD_PYTHON=ON ..
working-directory: ./build

- name: Configure (macOS)
if: runner.os == 'macOS'
run: |
cmake -DGTDYNAMICS_BUILD_PYTHON=ON -DGTDYNAMICS_BUILD_CABLE_ROBOT=ON -DGTDYNAMICS_BUILD_JUMPING_ROBOT=ON ..
cmake -DGTDYNAMICS_BUILD_PYTHON=ON -DPYTHON_EXECUTABLE=/usr/local/bin/python3 ..
working-directory: ./build

- name: Build
Expand All @@ -131,3 +145,7 @@ jobs:
- name: Test
run: make -j4 python-test
working-directory: ./build

- name: Install
run: sudo make -j4 python-install
working-directory: ./build
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ __pycache__/

# Distribution / packaging
.Python
build/
build*/
develop-eggs/
dist/
downloads/
Expand Down
Loading

0 comments on commit a97968c

Please sign in to comment.