Skip to content

Various fixes detected with CDash ci and reverting changes around buildFrom() functions to make them no more deprecated #2187

Various fixes detected with CDash ci and reverting changes around buildFrom() functions to make them no more deprecated

Various fixes detected with CDash ci and reverting changes around buildFrom() functions to make them no more deprecated #2187

Workflow file for this run

name: Ubuntu-dep-apt
# https://www.jeffgeerling.com/blog/2020/running-github-actions-workflow-on-schedule-and-other-events
on:
pull_request:
types: [opened, reopened, synchronize]
schedule:
- cron: '0 2 * * SUN'
# https://stackoverflow.com/questions/66335225/how-to-cancel-previous-runs-in-the-pr-when-you-push-new-commitsupdate-the-curre#comment133398800_72408109
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#concurrency
concurrency:
group: ${{ github.workflow }}-${{ github.ref || github.run_id }}
cancel-in-progress: true
jobs:
build-ubuntu-dep-apt:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04, ubuntu-latest]
compiler: [ {CC: /usr/bin/gcc-9, CXX: /usr/bin/g++-9}, {CC: /usr/bin/gcc-10, CXX: /usr/bin/g++-10}, {CC: /usr/bin/clang, CXX: /usr/bin/clang++} ]
standard: [ 98, 11, 17 ]
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Print system information
run: lscpu
- name: Print OS information
run: lsb_release -a
- name: Print compiler information
run: dpkg --list | grep compiler
- name: Install dependencies for ubuntu 20.04
if: matrix.os == 'ubuntu-20.04'
run: sudo apt-get update && sudo apt-get install -y libx11-dev libdc1394-22-dev libv4l-dev liblapack-dev libopenblas-dev libeigen3-dev libopencv-dev nlohmann-json3-dev
- name: Install dependencies for ubuntu-latest
if: matrix.os == 'ubuntu-latest'
run: sudo apt-get update && sudo apt-get install -y libx11-dev libdc1394-dev libv4l-dev liblapack-dev libopenblas-dev libeigen3-dev libopencv-dev nlohmann-json3-dev
- name: Clone visp-images
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
# https://remarkablemark.org/blog/2022/09/25/check-git-branch-exists-in-remote-repository/
run: |
git clone --depth 1 https://github.com/lagadic/visp-images ${HOME}/visp-images
echo "VISP_INPUT_IMAGE_PATH=$HOME/visp-images" >> $GITHUB_ENV
echo ${VISP_INPUT_IMAGE_PATH}
- name: Clone visp_sample
run: |
git clone --depth 1 https://github.com/lagadic/visp_sample ${HOME}/visp_sample
- name: Configure CMake
run: |
mkdir build
cd build
CC=${{ matrix.compiler.CC }}
CXX=${{ matrix.compiler.CXX }}
CXX_STANDARD=${{ matrix.standard }}
echo "CC: $CC"
echo "CXX: $CXX"
echo "Standard: $CXX_STANDARD"
cmake .. -DCMAKE_C_COMPILER="${CC}" -DCMAKE_CXX_COMPILER="${CXX}" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/tmp/usr/local -DCMAKE_VERBOSE_MAKEFILE=ON -DUSE_CXX_STANDARD=$CXX_STANDARD
cat ViSP-third-party.txt
- name: Compile
working-directory: build
run: |
make -j$(nproc) install
- name: Run unit tests
working-directory: build
run: ctest -j$(nproc) --output-on-failure
- name: ViSP as 3rdparty with cmake
run: |
cd ${HOME}/visp_sample
mkdir visp_sample-build
cd visp_sample-build
CC=${{ matrix.compiler.CC }}
CXX=${{ matrix.compiler.CXX }}
cmake .. -DCMAKE_C_COMPILER="${CC}" -DCMAKE_CXX_COMPILER="${CXX}" -DVISP_DIR=/tmp/usr/local/lib/cmake/visp -DCMAKE_VERBOSE_MAKEFILE=ON
make -j$(nproc)
- name: ViSP as 3rdparty with visp.pc and pkg-config
run: |
cd ${HOME}/visp_sample
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/tmp/usr/local/lib/pkgconfig
CC=${{ matrix.compiler.CC }}
CXX=${{ matrix.compiler.CXX }}
pkg-config --cflags visp
pkg-config --libs visp
make CXX=${{ matrix.compiler.CXX }} -j$(nproc) -f Makefile.visp.pc
make CXX=${{ matrix.compiler.CXX }} -j$(nproc) -f Makefile.visp.pc clean
- name: ViSP as 3rdparty with visp-config
run: |
cd ${HOME}/visp_sample
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/tmp/usr/local/lib/pkgconfig
export VISP_INSTALL_PREFIX=/tmp/usr/local
CC=${{ matrix.compiler.CC }}
CXX=${{ matrix.compiler.CXX }}
$VISP_INSTALL_PREFIX/bin/visp-config --cflags
$VISP_INSTALL_PREFIX/bin/visp-config --libs
make CXX=${{ matrix.compiler.CXX }} -j$(nproc) -f Makefile.visp-config
make CXX=${{ matrix.compiler.CXX }} -j$(nproc) -f Makefile.visp-config clean