Skip to content

Commit

Permalink
Release v3.0
Browse files Browse the repository at this point in the history
  • Loading branch information
arobenko committed Jan 13, 2025
2 parents e046a87 + 29e7aa3 commit d5e4e5b
Show file tree
Hide file tree
Showing 60 changed files with 219 additions and 216 deletions.
47 changes: 26 additions & 21 deletions .github/workflows/actions_build.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,18 @@
name: Github Actions Build

on: [push]
on:
push:
branches:
- '**'
tags-ignore:
- '**'

env:
COMMS_TAG: v5.2.7
COMMSDSL_TAG: v6.3.4
CC_TOOLS_QT_TAG: v5.3.3
COMMS_TAG: v5.3
COMMSDSL_TAG: v7.0
CC_TOOLS_QT_TAG: v6.0
WIN_BOOST_VERSION: "1.87.0"
WIN_BOOST_DIR: "C:/local/boost_1_87_0"

jobs:
build_gcc_old_ubuntu_20_04:
Expand Down Expand Up @@ -117,20 +124,19 @@ jobs:
COMMON_CXX_STANDARD: ${{matrix.cpp}}
COMMS_TAG: ${{env.COMMS_TAG}}
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}}
CC_TOOLS_QT_SKIP: 1

- 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}} \
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} -DUBLOX_BUILD_EXAMPLES=ON \
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_BUILD_EXAMPLES=ON \
-DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
env:
CC: gcc-${{matrix.cc_ver}}
CXX: g++-${{matrix.cc_ver}}
BUILD_TOOLS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}"

- name: Build Target
working-directory: ${{runner.workspace}}/build
Expand Down Expand Up @@ -310,7 +316,7 @@ jobs:
COMMON_CXX_STANDARD: ${{matrix.cpp}}
COMMS_TAG: ${{env.COMMS_TAG}}
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}}
CC_TOOLS_QT_SKIP: 1

- name: Configure CMake
shell: bash
Expand All @@ -319,12 +325,11 @@ jobs:
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}} -DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON \
-DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} -DUBLOX_BUILD_EXAMPLES=ON \
-DUBLOX_BUILD_EXAMPLES=ON \
-DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
env:
CC: clang-${{matrix.cc_ver}}
CXX: clang++-${{matrix.cc_ver}}
BUILD_TOOLS: "${{ matrix.cpp >= 17 && 'ON' || 'OFF' }}"

- name: Build Target
working-directory: ${{runner.workspace}}/build
Expand Down Expand Up @@ -372,21 +377,19 @@ jobs:
COMMON_CXX_STANDARD: ${{matrix.cpp}}
COMMS_TAG: ${{env.COMMS_TAG}}
COMMSDSL_TAG: ${{env.COMMSDSL_TAG}}
CC_TOOLS_QT_TAG: ${{env.CC_TOOLS_QT_TAG}}
CC_TOOLS_QT_SKIP: "${{ matrix.cpp < 17 && '1' || '0' }}"
CC_TOOLS_QT_SKIP: 1

- 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}} \
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} \
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON \
-DUBLOX_BUILD_EXAMPLES=ON -DUBLOX_SCHEMA_FILES_LIST_FILE=$GITHUB_WORKSPACE/basic_msgs.txt
env:
CC: clang-${{matrix.cc_ver}}
CXX: clang++-${{matrix.cc_ver}}
BUILD_TOOLS: "${{ matrix.cpp == 17 && 'ON' || 'OFF' }}"

- name: Build Target
working-directory: ${{runner.workspace}}/build
Expand Down Expand Up @@ -529,7 +532,7 @@ jobs:
strategy:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
type: [Debug, Release]
arch: [Win32, x64]
cpp: [11, 14, 17]
qt_ver: [5, 6]
Expand Down Expand Up @@ -559,7 +562,8 @@ jobs:
if: matrix.arch == 'x64'
shell: cmd
run: |
choco install boost-msvc-14.2 --version=1.85.0
choco install boost-msvc-14.2 --version=${{env.WIN_BOOST_VERSION}}
echo BOOST_DIR=${{env.WIN_BOOST_DIR}}/lib64-msvc-14.2/cmake >>%GITHUB_ENV%
- name: Prepare externals
shell: cmd
Expand All @@ -584,8 +588,8 @@ jobs:
working-directory: ${{runner.workspace}}/build
run: |
cmake %GITHUB_WORKSPACE% -A ${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install ^
-DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install;${{env.QTDIR}}" ^
-DCMAKE_POLICY_DEFAULT_CMP0167=OLD -DBoost_USE_STATIC_LIBS=ON ^
-DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install;${{env.QTDIR}};${{env.BOOST_DIR}}" ^
-DCMAKE_POLICY_DEFAULT_CMP0167=NEW ^
-DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} ^
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_GEN_TOOLS=ON -DUBLOX_BUILD_TOOLS=${{env.BUILD_TOOLS}} ^
-DUBLOX_BUILD_EXAMPLES=${{env.HAS_BOOST}} ^
Expand All @@ -606,7 +610,7 @@ jobs:
strategy:
fail-fast: false
matrix:
type: [Debug, Release, MinSizeRel]
type: [Debug, Release]
arch: [Win32, x64]
cpp: [11, 14, 17, 20]

Expand All @@ -620,7 +624,8 @@ jobs:
if: matrix.arch == 'x64'
shell: cmd
run: |
choco install boost-msvc-14.3 --version=1.85.0
choco install boost-msvc-14.3 --version=${{env.WIN_BOOST_VERSION}}
echo BOOST_DIR=${{env.WIN_BOOST_DIR}}/lib64-msvc-14.3/cmake >>%GITHUB_ENV%
- name: Prepare externals
shell: cmd
Expand All @@ -644,7 +649,7 @@ jobs:
run: |
cmake %GITHUB_WORKSPACE% -A ${{matrix.arch}} -DCMAKE_BUILD_TYPE=${{matrix.type}} -DCMAKE_INSTALL_PREFIX=install ^
-DCMAKE_PREFIX_PATH="${{runner.workspace}}/build/install" ^
-DCMAKE_POLICY_DEFAULT_CMP0167=OLD -DBoost_USE_STATIC_LIBS=ON ^
-DCMAKE_POLICY_DEFAULT_CMP0167=NEW ^
-DCMAKE_CXX_STANDARD=${{matrix.cpp}} -DUBLOX_TOOLS_QT_VER=${{matrix.qt_ver}} ^
-DUBLOX_GEN_PROTOCOL=ON -DUBLOX_GEN_TEST=ON -DUBLOX_BUILD_EXAMPLES=${{env.HAS_BOOST}} ^
-DUBLOX_SCHEMA_FILES_LIST_FILE=%GITHUB_WORKSPACE%/basic_msgs.txt
Expand Down
66 changes: 13 additions & 53 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ option (UBLOX_BUILD_EXAMPLES "Build examples." OFF)
# COMMSDSL2SWIG_EXTRA_ARGS - Extra arguments to pass to "commsdsl2swig"
# COMMSDSL2EMSCRIPTEN_EXTRA_ARGS - Extra arguments to pass to "commsdsl2emscripten"

set (UBLOX_VERSION "2.9")
set (UBLOX_MIN_COMMSDSL_VERSION "6.3.4")
set (UBLOX_VERSION "3.0")
set (UBLOX_MIN_COMMSDSL_VERSION "7.0")

if (("${CMAKE_VERSION}" VERSION_GREATER_EQUAL "3.30") AND
(NOT DEFINED CMAKE_POLICY_DEFAULT_CMP0167))
Expand Down Expand Up @@ -272,24 +272,16 @@ if (UBLOX_GEN_PROTOCOL)

set (prot_tmp_dir "${CMAKE_BINARY_DIR}/output.tmp")

add_custom_target(rm_prot_tmp_tgt
add_custom_target(${PROT_OUTPUT_TGT} ALL
COMMAND ${CMAKE_COMMAND} -E remove_directory ${prot_tmp_dir}
)

add_custom_command(
OUTPUT ${prot_tmp_dir}
DEPENDS ${schema_files} ${src_files} rm_prot_tmp_tgt
COMMAND ${COMMSDSL2COMMS} ${warn_as_error} -V ${UBLOX_VERSION}
-o ${prot_tmp_dir} -c ${PROJECT_SOURCE_DIR}/src/protocol
-p ${PROJECT_SOURCE_DIR} -i ${UBLOX_SCHEMA_FILES_LIST_FILE}
${COMMSDSL2COMMS_EXTRA_ARGS}
)

add_custom_target(${PROT_OUTPUT_TGT} ALL
${COMMSDSL2COMMS_EXTRA_ARGS}
COMMAND ${CMAKE_COMMAND}
-DGENERATED="${prot_tmp_dir}" -DOUTPUT="${UBLOX_PROT_OUTPUT_DIR}"
-P "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake"
DEPENDS ${prot_tmp_dir} ${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake ${schema_files})
DEPENDS ${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake ${schema_files})

if (UBLOX_BUILD_PROTOCOL)
execute_process(
Expand Down Expand Up @@ -342,23 +334,15 @@ if (UBLOX_GEN_TEST)

set (test_tmp_dir "${CMAKE_BINARY_DIR}/output_test.tmp")

add_custom_target(rm_test_tmp_tgt
add_custom_target("test_output_tgt" ALL
COMMAND ${CMAKE_COMMAND} -E remove_directory ${test_tmp_dir}
)

add_custom_command(
OUTPUT ${test_tmp_dir}
DEPENDS ${schema_files} ${src_files} rm_test_tmp_tgt
COMMAND ${COMMSDSL2TEST} ${warn_as_error} ${COMMSDSL2TEST_EXTRA_ARGS}
-o ${test_tmp_dir} -c ${PROJECT_SOURCE_DIR}/src/test
-p ${PROJECT_SOURCE_DIR} -i ${UBLOX_SCHEMA_FILES_LIST_FILE}
)

add_custom_target("test_output_tgt" ALL
COMMAND ${CMAKE_COMMAND}
-DGENERATED="${test_tmp_dir}" -DOUTPUT="${UBLOX_TEST_OUTPUT_DIR}"
-P "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake"
DEPENDS ${test_tmp_dir} "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})
DEPENDS "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})

if (UBLOX_BUILD_TEST)
if ((NOT UBLOX_GEN_PROTOCOL) OR (NOT UBLOX_BUILD_PROTOCOL))
Expand Down Expand Up @@ -405,24 +389,16 @@ if (UBLOX_GEN_TOOLS)

set (tools_tmp_dir "${CMAKE_BINARY_DIR}/output_tools.tmp")

add_custom_target(rm_tools_tmp_tgt
add_custom_target("tools_output_tgt" ALL
COMMAND ${CMAKE_COMMAND} -E remove_directory ${tools_tmp_dir}
)

add_custom_command(
OUTPUT ${tools_tmp_dir}
DEPENDS ${schema_files} ${src_files} rm_tools_tmp_tgt
COMMAND ${COMMSDSL2TOOLS_QT} ${warn_as_error} ${COMMSDSL2TOOLS_QT_EXTRA_ARGS}
--protocol "::CC UBLOX:UBX protocol used by the U-blox GNSS Receivers.:cc.UbloxProtocolPlugin"
-o ${tools_tmp_dir} -c ${PROJECT_SOURCE_DIR}/src/tools
-p ${PROJECT_SOURCE_DIR} -i ${UBLOX_SCHEMA_FILES_LIST_FILE}
)

add_custom_target("tools_output_tgt" ALL
COMMAND ${CMAKE_COMMAND}
-DGENERATED="${tools_tmp_dir}" -DOUTPUT="${UBLOX_TOOLS_OUTPUT_DIR}"
-P "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake"
DEPENDS ${tools_tmp_dir} "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})
DEPENDS "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})

if (UBLOX_BUILD_TOOLS)
if ((NOT UBLOX_GEN_PROTOCOL) OR (NOT UBLOX_BUILD_PROTOCOL))
Expand Down Expand Up @@ -468,23 +444,15 @@ if (UBLOX_GEN_SWIG)

set (swig_tmp_dir "${CMAKE_BINARY_DIR}/output_swig.tmp")

add_custom_target(rm_swig_tmp_tgt
add_custom_target("swig_output_tgt" ALL
COMMAND ${CMAKE_COMMAND} -E remove_directory ${swig_tmp_dir}
)

add_custom_command(
OUTPUT ${swig_tmp_dir}
DEPENDS ${schema_files} ${src_files} rm_swig_tmp_tgt
COMMAND ${COMMSDSL2SWIG} ${warn_as_error} ${COMMSDSL2SWIG_EXTRA_ARGS}
-c ${UBLOX_SWIG_SRC_DIR} -o ${swig_tmp_dir}
-p ${PROJECT_SOURCE_DIR} -i ${UBLOX_SCHEMA_FILES_LIST_FILE}
)

add_custom_target("swig_output_tgt" ALL
COMMAND ${CMAKE_COMMAND}
-DGENERATED="${swig_tmp_dir}" -DOUTPUT="${UBLOX_SWIG_OUTPUT_DIR}"
-P "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake"
DEPENDS ${swig_tmp_dir} "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})
DEPENDS "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})

if (UBLOX_BUILD_SWIG)
if ((NOT UBLOX_GEN_PROTOCOL) OR (NOT UBLOX_BUILD_PROTOCOL))
Expand Down Expand Up @@ -535,23 +503,15 @@ if (UBLOX_GEN_EMSCRIPTEN)

set (emscripten_tmp_dir "${CMAKE_BINARY_DIR}/output_emscripten.tmp")

add_custom_target(rm_emscripten_tmp_tgt
add_custom_target("emscripten_output_tgt" ALL
COMMAND ${CMAKE_COMMAND} -E remove_directory ${emscripten_tmp_dir}
)

add_custom_command(
OUTPUT ${emscripten_tmp_dir}
DEPENDS ${schema_files} ${src_files} rm_emscripten_tmp_tgt
COMMAND ${COMMSDSL2EMSCRIPTEN} ${warn_as_error} ${COMMSDSL2EMSCRIPTEN_EXTRA_ARGS}
-o ${emscripten_tmp_dir} -c ${PROJECT_SOURCE_DIR}/src/emscripten
-p ${PROJECT_SOURCE_DIR} -i ${UBLOX_SCHEMA_FILES_LIST_FILE}
)

add_custom_target("emscripten_output_tgt" ALL
COMMAND ${CMAKE_COMMAND}
-DGENERATED="${emscripten_tmp_dir}" -DOUTPUT="${UBLOX_EMSCRIPTEN_OUTPUT_DIR}"
-P "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake"
DEPENDS ${emscripten_tmp_dir} "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})
DEPENDS "${CMAKE_CURRENT_LIST_DIR}/CopyGenerated.cmake" ${schema_files})

if (UBLOX_BUILD_EMSCRIPTEN)
if ((NOT UBLOX_GEN_PROTOCOL) OR (NOT UBLOX_BUILD_PROTOCOL))
Expand Down
6 changes: 3 additions & 3 deletions dsl/field/cfgval.xml
Original file line number Diff line number Diff line change
Expand Up @@ -756,7 +756,7 @@
<validValue name="CFG_USBOUTPROT_RTCM3X" val="0x10780004" />
</enum>

<int name="CfgValKey" type="uint32" failOnInvalid="true" displayReadOnly="true" displayName="Key" />
<int name="CfgValKey" type="uint32" failOnInvalid="true" fixedValue="true" displayName="Key" />

<enum name="CfgValLayer" type="uint8">
<validValue name="Ram" val="0" displayName="RAM" />
Expand All @@ -765,7 +765,7 @@
<validValue name="Default" val="7" />
</enum>

<variant name="CfgValPair" displayIdxReadOnlyHidden="true" forceGen="true">
<variant name="CfgValPair" forceGen="true">
<!-- CFG-BDS -->
<bundle name="BdsUsePrn1to5" displayName="CFG-BDS-USE_PRN_1_TO_5">
<int reuse="CfgValKey" name="Key" validValue="CfgValKeyId.CFG_BDS_USE_PRN_1_TO_5" defaultValue="CfgValKeyId.CFG_BDS_USE_PRN_1_TO_5" />
Expand Down Expand Up @@ -3595,7 +3595,7 @@
</description>
<members>
<ref field="CfgValKeyId" name="Key" />
<variant name="Val" displayIdxReadOnlyHidden="true">
<variant name="Val">
<ref field="CfgValL" name="L" displayName="L" />
<ref field="CfgValU1" name="U1" displayName="U1" />
<ref field="CfgValU2" name="U2" displayName="U2" />
Expand Down
2 changes: 1 addition & 1 deletion dsl/main.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<schema name="cc_ublox" endian="little" nonUniqueMsgIdAllowed="true" dslVersion="6" >
<schema name="cc_ublox" endian="little" nonUniqueMsgIdAllowed="true" dslVersion="7" >
<platform name="ublox5" />
<platform name="ublox6" />
<platform name="ublox7" />
Expand Down
4 changes: 2 additions & 2 deletions dsl/message/AidAlpsrv.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<int name="ofs" type="uint16" />
<int name="size" type="uint16" />
<int name="fileId" type="uint16" />
<int name="dataSize" type="uint16" displayReadOnly="true"/>
<int name="dataSize" type="uint16"/>
<int name="id1" type="uint8" />
<int name="id2" type="uint8" />
<int name="id3" type="uint32" />
Expand All @@ -17,7 +17,7 @@
<int name="idSize" type="uint8" />
<int name="type" type="uint8" />
<int name="ofs" type="uint16" />
<int name="size" type="uint16" displayReadOnly="true" />
<int name="size" type="uint16" />
<int name="fileId" type="uint16" />
<list name="data" countPrefix="$size">
<int name="element" type="uint16" displayName="_" />
Expand Down
Loading

0 comments on commit d5e4e5b

Please sign in to comment.