Create decoder facade 2 join layered modules 4 unified access #37
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: x86_64-ubuntu22-gcc11 | |
on: | |
push: | |
branches: [master] | |
pull_request: | |
branches: [master] | |
jobs: | |
build: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Install compiler and stdlib | |
run: | | |
sudo apt-get install --no-install-recommends -y gcc-11 g++-11 cpp-11 libstdc++-11-dev libgtk2.0-dev python3-dev | |
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-11 800 | |
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/g++-11 800 | |
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-11 800 | |
sudo update-alternatives --install /usr/bin/cc cc /usr/bin/gcc-11 800 | |
# | |
# The following xorg/system dependencies are required when opencv has to be built from source | |
# and cannot be loaded from conan-center in a pre-built version (non-std-compiler/config). | |
# Most likly they are required for highgui features. You can install them manually or | |
# set tools.system.package_manager:mode=install and tools.system.package_manager:sudo=True | |
# in conan config to get them installed via conan install as shown further below in "Setup conan" step. | |
# But the conan config breaks with dependency caching mechanism from github actions so | |
# we prefer an explicit installation here. | |
# | |
sudo apt-get install --no-install-recommends -y \ | |
libx11-xcb-dev libfontenc-dev libxaw7-dev libxmu-dev libxmuu-dev libxpm-dev libxres-dev \ | |
libxss-dev libxtst-dev libxv-dev libxvmc-dev libxxf86vm-dev libxcb-render-util0-dev \ | |
libxcb-xkb-dev libxcb-icccm4-dev libxcb-image0-dev libxcb-keysyms1-dev libxcb-randr0-dev \ | |
libxcb-shape0-dev libxcb-sync-dev libxcb-xfixes0-dev libxcb-xinerama0-dev libxcb-dri3-dev libxcb-cursor-dev \ | |
libxcb-util-dev libxcb-util0-dev libxcb-glx0-dev libxcb-dri2-0-dev libxcb-present-dev libxcb-composite0-dev \ | |
libxcb-ewmh-dev libxcb-res0-dev libxkbfile-dev | |
# | |
# numpy is required to get boost.python compiled via conan recipe | |
# | |
pip3 install numpy | |
- name: Install conan | |
uses: turtlebrowser/get-conan@main | |
with: | |
version: 1.64.1 | |
- name: Setup conan | |
run: etc/conan-config.sh gcc 11 | |
- name: Cache/Restore dependencies | |
uses: actions/cache@v4 | |
with: | |
path: ~/.conan | |
key: ${{ runner.os }}-${{ github.workflow }}-conanfile-${{ hashFiles('conanfile.py') }} | |
- name: Install dependencies | |
run: etc/conan-install.sh Release | |
- name: Build | |
run: | | |
etc/cmake-config.sh Release | |
etc/cmake-build.sh Release -- -j | |
- name: Unit-Test C++ | |
run: | | |
etc/install-uic-keys.sh | |
build/Release/bin/ticket-decoder-test | |
- name: Unit-Test Python3 | |
run: etc/python-test.sh | |
- name: Archive artifacts | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ticket-decoder | |
path: | | |
build/Release/etc/* | |
build/Release/lib/* | |
build/Release/bin/* |