Skip to content

Commit

Permalink
Release v4.0.2
Browse files Browse the repository at this point in the history
  • Loading branch information
arobenko committed Mar 13, 2023
2 parents 76d958c + e49c4c8 commit ea4f23e
Show file tree
Hide file tree
Showing 5 changed files with 84 additions and 36 deletions.
104 changes: 80 additions & 24 deletions .github/workflows/actions_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,23 +6,31 @@ env:
COMMS_BRANCH: master

jobs:
build_gcc_limited_ubuntu_18_04:
runs-on: ubuntu-18.04
build_gcc_old_ubuntu_20_04:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
cc_ver: [4.8]
cpp: [11]
cc_ver: [4.8, 5, 6, 7]
cpp: [11, 14]
exclude:
- cc_ver: 4.8
cpp: 14

steps:
- uses: actions/checkout@v2

- name: Add repositories
run: |
sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu/ bionic main'; \
sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu/ bionic universe'
- name: Prepare Install
run: sudo apt-get update --fix-missing

- name: Install Packages
run: sudo apt install qtbase5-dev libqt5serialport5-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}}
run: sudo apt install qtbase5-dev libqt5serialport5-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}}

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build
Expand Down Expand Up @@ -55,14 +63,14 @@ jobs:
env:
VERBOSE: 1

build_gcc_ubuntu_18_04:
runs-on: ubuntu-18.04
build_gcc_ubuntu_20_04:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
cc_ver: [5, 6, 7]
cpp: [11, 14]
cc_ver: [8]
cpp: [11, 14, 17]

steps:
- uses: actions/checkout@v2
Expand All @@ -71,10 +79,10 @@ jobs:
run: sudo apt-get update --fix-missing

- name: Install Packages
run: sudo apt install qtbase5-dev libqt5serialport5-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}}
run: sudo apt install qtbase5-dev libqt5serialport5-dev libxml2-dev gcc-${{matrix.cc_ver}} g++-${{matrix.cc_ver}}

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build
run: cmake -E make_directory ${{runner.workspace}}/build

- name: Prepare externals
shell: bash
Expand All @@ -92,7 +100,7 @@ jobs:
- name: Configure CMake
shell: bash
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=gold -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCC_TOOLS_QT_BUILD_DEMO_PROTOCOL=ON
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCC_TOOLS_QT_BUILD_DEMO_PROTOCOL=ON
env:
CC: gcc-${{matrix.cc_ver}}
CXX: g++-${{matrix.cc_ver}}
Expand All @@ -104,18 +112,14 @@ jobs:
env:
VERBOSE: 1


build_gcc_ubuntu_20_04:
runs-on: ubuntu-20.04
build_gcc_ubuntu_22_04:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
cc_ver: [8, 9, 10, 11]
cc_ver: [9, 10, 11, 12]
cpp: [11, 14, 17, 20]
exclude:
- cc_ver: 8
cpp: 20

steps:
- uses: actions/checkout@v2
Expand Down Expand Up @@ -155,10 +159,10 @@ jobs:
shell: bash
run: cmake --build . --config ${{matrix.type}} --target install
env:
VERBOSE: 1
VERBOSE: 1

build_clang_ubuntu_18_04:
runs-on: ubuntu-18.04
build_clang_old_ubuntu_20_04:
runs-on: ubuntu-20.04
strategy:
fail-fast: false
matrix:
Expand All @@ -173,13 +177,17 @@ jobs:
steps:
- uses: actions/checkout@v2

- name: Add repositories
run: |
sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu/ bionic main'; \
sudo add-apt-repository 'deb http://archive.ubuntu.com/ubuntu/ bionic universe'
- name: Prepare Install
run: sudo apt-get update --fix-missing

- name: Install Packages
run: sudo apt install qtbase5-dev libqt5serialport5-dev libxml2-dev clang-${{matrix.cc_ver}}


- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build

Expand Down Expand Up @@ -217,7 +225,7 @@ jobs:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
cc_ver: [7, 8, 9, 10, 11, 12]
cc_ver: [7, 8, 9, 10, 11]
cpp: [11, 14, 17, 20]
exclude:
- cc_ver: 7
Expand Down Expand Up @@ -265,4 +273,52 @@ jobs:
env:
VERBOSE: 1

build_clang_ubuntu_22_04:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
cc_ver: [12, 13, 14]
cpp: [11, 14, 17, 20]

steps:
- uses: actions/checkout@v2

- name: Prepare Install
run: sudo apt-get update --fix-missing

- name: Install Packages
run: sudo apt install qtbase5-dev libqt5serialport5-dev libxml2-dev clang-${{matrix.cc_ver}}

- name: Create Build Environment
run: cmake -E make_directory ${{runner.workspace}}/build

- name: Prepare externals
shell: bash
run: $GITHUB_WORKSPACE/script/prepare_externals.sh
env:
BUILD_DIR: ${{runner.workspace}}/build
CC: clang-${{matrix.cc_ver}}
CXX: clang++-${{matrix.cc_ver}}
EXTERNALS_DIR: ${{runner.workspace}}/externals
COMMON_INSTALL_DIR: ${{runner.workspace}}/build/install
COMMON_BUILD_TYPE: ${{matrix.type}}
COMMON_CXX_STANDARD: ${{matrix.cpp}}
COMMS_TAG: ${{env.COMMS_BRANCH}}

- name: Configure CMake
shell: bash
working-directory: ${{runner.workspace}}/build
run: cmake $GITHUB_WORKSPACE -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install -DCMAKE_PREFIX_PATH=${{runner.workspace}}/build/install -DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DCC_TOOLS_QT_BUILD_DEMO_PROTOCOL=ON
env:
CC: clang-${{matrix.cc_ver}}
CXX: clang++-${{matrix.cc_ver}}

- name: Build Target
working-directory: ${{runner.workspace}}/build
shell: bash
run: cmake --build . --config ${{matrix.type}} --target install
env:
VERBOSE: 1

8 changes: 0 additions & 8 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,20 +15,12 @@ option (CC_TOOLS_QT_USE_CCACHE "Use ccache on UNIX systems if it's available" ON
option (CC_TOOLS_QT_SKIP_CXX_STANDARD_FORCING "Do NOT force C++ standard to C++11, use compiler's default one." ON)
option (CC_TOOLS_QT_STATIC_RUNTIME "Enable/Disable static runtime" OFF)

# Extra variables
# CC_TOOLS_QT_EXTERNALS_DIR - Directory where pull externals, defaults to
# ${PROJECT_SOURCE_DIR}/externals

#######################################################################

if (CMAKE_TOOLCHAIN_FILE AND EXISTS ${CMAKE_TOOLCHAIN_FILE})
message(STATUS "Loading toolchain from ${CMAKE_TOOLCHAIN_FILE}")
endif()

if (NOT CC_TOOLS_QT_EXTERNALS_DIR)
set (CC_TOOLS_QT_EXTERNALS_DIR "${PROJECT_SOURCE_DIR}/externals")
endif ()

set (CMAKE_SCRIPTS_DIR "${PROJECT_SOURCE_DIR}/cmake")

if (("${CMAKE_CXX_STANDARD}" STREQUAL "") AND (NOT CC_COMMS_SKIP_CXX_STANDARD_FORCING))
Expand Down
2 changes: 1 addition & 1 deletion lib/include/cc_tools_qt/details/FieldWrapperCreator.h
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ class FieldWrapperCreator
static FieldWrapperPtr createWrapper(TField& field)
{
typedef typename std::decay<decltype(field)>::type DecayedField;
typedef typename DecayedField::Tag Tag;
typedef typename DecayedField::CommsTag Tag;
return createWrapperInternal(field, Tag());
}
private:
Expand Down
2 changes: 1 addition & 1 deletion lib/include/cc_tools_qt/property/field.h
Original file line number Diff line number Diff line change
Expand Up @@ -935,7 +935,7 @@ struct ForTag<comms::field::tag::NoValue>
/// @tparam TField Type of the field
/// @headerfile cc_tools_qt/property/field.h
template <typename TField>
using ForField = typename details::ForTag<typename TField::Tag>::Type;
using ForField = typename details::ForTag<typename TField::CommsTag>::Type;

} // namespace field

Expand Down
4 changes: 2 additions & 2 deletions lib/include/cc_tools_qt/version.h
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
#define CC_TOOLS_QT_MINOR_VERSION 0U

/// @brief Patch level of the library
#define CC_TOOLS_QT_PATCH_VERSION 1U
#define CC_TOOLS_QT_PATCH_VERSION 2U

/// @brief Macro to create numeric version as single unsigned number
#define CC_TOOLS_QT_MAKE_VERSION(major_, minor_, patch_) \
Expand Down Expand Up @@ -77,7 +77,7 @@ constexpr unsigned version()
return CC_TOOLS_QT_VERSION;
}

static_assert(COMMS_MAKE_VERSION(5, 0, 0) <= comms::version(),
static_assert(COMMS_MAKE_VERSION(5, 1, 0) <= comms::version(),
"The version of COMMS library is too old");

} // namespace cc_tools_qt

0 comments on commit ea4f23e

Please sign in to comment.