Skip to content

Commit

Permalink
Merge branch 'release/v14.2.0' into stable
Browse files Browse the repository at this point in the history
  • Loading branch information
gloppyuser committed Aug 14, 2023
2 parents a236c11 + b9dff2a commit fe45a39
Show file tree
Hide file tree
Showing 89 changed files with 2,066 additions and 262 deletions.
118 changes: 111 additions & 7 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -262,6 +262,23 @@ build_ubuntu_20.04:
paths:
- build/

build_ubuntu_20.04_cpp17:
stage: build
needs: []
extends: .normal_build
tags:
- docker-executor
image: $DOCKER_REGISTRY/sgl/ubuntu-20.04:pkgbuild
script:
- mkdir -p build
- cd build
- export gnsstk=`pwd`/install
- cmake -DPYTHON_INSTALL_PREFIX=$gnsstk -DCMAKE_INSTALL_PREFIX=install -DCPPSTD=c++17 $CMAKE_ARG_DEFAULT
- make all -j 4
artifacts:
paths:
- build/

build_ext_noswig:
stage: build
needs: []
Expand Down Expand Up @@ -588,6 +605,25 @@ test_ubuntu_20.04:
dependencies:
- build_ubuntu_20.04

test_ubuntu_20.04_cpp17:
stage: test
needs: [build_ubuntu_20.04_cpp17]
extends: .normal_build
tags:
- docker-executor
image: $DOCKER_REGISTRY/sgl/ubuntu-20.04:pkgbuild
script:
- cd build
- ctest -j 4
- touch $CI_PROJECT_DIR/success
artifacts:
when: on_failure
paths:
- build/Testing/Temporary/
- build/swig/
dependencies:
- build_ubuntu_20.04_cpp17

test_debian_10_virtualenv:
stage: test
needs: [build_debian_10_virtualenv]
Expand Down Expand Up @@ -1071,7 +1107,10 @@ package_ubuntu_20.04:
# Mark the debian log so that this package is a backport.
# Use the most recent Maintainer as current maintainer.
- export DEBEMAIL=$(dpkg-parsechangelog -S Maintainer)
- dch --bpo "No Changes" && dch -l "ubuntu" -D focal 'No Changes' -u low
# Increment release number so c++11 compiled package gets installed by default over c++17 compiled package
- dch -q "No Changes"
# defaults to using c++11 standard
- dch --bpo "No Changes" && dch -l "cpp11ubuntu" -D focal 'No Changes' -u low
- if [ "$BUILD_TYPE" == "debug" ]; then BUILD_PROFILES="pkg_python,debug_package"; else BUILD_PROFILES="pkg_python"; fi
- dpkg-buildpackage --build-profiles=${BUILD_PROFILES} -us -uc -d --changes-option="-DDistribution=focal-sgl"
- mkdir debs
Expand All @@ -1087,6 +1126,43 @@ package_ubuntu_20.04:
dependencies:
- build_ubuntu_20.04

package_ubuntu_20.04_cpp17:
stage: package
needs: []
variables:
BUILD_TYPE: fast
rules:
# Add this rule to prevent an "additional" single element pipeline for merge requests.
- if: $CI_PIPELINE_SOURCE == "merge_request_event"
when: never
- if: $CI_COMMIT_REF_NAME =~ /main/ || $CI_COMMIT_REF_NAME =~/^ci_.*$/ || $CI_COMMIT_REF_NAME=~/^version_.*_prep$/
variables:
BUILD_TYPE: debug
- when: on_success
tags:
- docker-executor
image: $DOCKER_REGISTRY/sgl/ubuntu-20.04:pkgbuild
script:
- rm -rf ../*.deb .gitmodules
# Mark the debian log so that this package is a backport.
# Use the most recent Maintainer as current maintainer.
- export DEBEMAIL=$(dpkg-parsechangelog -S Maintainer)
- dch --bpo "No Changes" && dch -l "cpp17ubuntu" -D focal 'No Changes' -u low
- if [ "$BUILD_TYPE" == "debug" ]; then BUILD_PROFILES="pkg_python,debug_package,build_cpp17"; else BUILD_PROFILES="pkg_python,build_cpp17"; fi
- dpkg-buildpackage --build-profiles=${BUILD_PROFILES} -us -uc -d --changes-option="-DDistribution=focal-sgl"
- mkdir debs
- mv ../*.deb debs
- mv ../*.changes debs
- mv ../*.dsc debs
- mv ../*.git ../*.gitshallow debs
- mv ../*.buildinfo debs
artifacts:
paths:
- debs/
timeout: 90m
dependencies:
- build_ubuntu_20.04_cpp17

package_conda:
stage: package
needs: []
Expand Down Expand Up @@ -1216,8 +1292,11 @@ deploy_debian_10:
- docker-executor
image: $DOCKER_REGISTRY/sgl/debian-10:pkgbuild
script:
- cd debs
- pushd debs
- sudo apt-get -y install ./*.deb
- popd
# source gnsstk's enable script
- source /etc/profile.d/gnsstk_enable.sh
- python3 -c "import gnsstk"
- df_diff -h
- gnsstk-config --includedir
Expand All @@ -1232,8 +1311,11 @@ deploy_debian_11:
- docker-executor
image: $DOCKER_REGISTRY/sgl/debian-11:pkgbuild
script:
- cd debs
- pushd debs
- apt-get -y install ./*.deb
- popd
# source gnsstk's enable script
- source /etc/profile.d/gnsstk_enable.sh
- python3 -c "import gnsstk"
- df_diff -h
- gnsstk-config --includedir
Expand All @@ -1248,14 +1330,36 @@ deploy_ubuntu_20.04:
- docker-executor
image: $DOCKER_REGISTRY/sgl/ubuntu-20.04:pkgbuild
script:
- cd debs
- pushd debs
- apt-get -y install ./*.deb
- popd
# source gnsstk's enable script
- source /etc/profile.d/gnsstk_enable.sh
- python3 -c "import gnsstk"
- df_diff -h
- gnsstk-config --includedir
dependencies:
- package_ubuntu_20.04

deploy_ubuntu_20.04_cpp17:
stage: deploy
needs: [package_ubuntu_20.04_cpp17]
extends: .big_build
tags:
- docker-executor
image: $DOCKER_REGISTRY/sgl/ubuntu-20.04:pkgbuild
script:
- pushd debs
- apt-get -y install ./*.deb
- popd
# source gnsstk's enable script
- source /etc/profile.d/gnsstk_enable.sh
- python3 -c "import gnsstk"
- df_diff -h
- gnsstk-config --includedir
dependencies:
- package_ubuntu_20.04_cpp17

deploy_redhat_8:
stage: deploy
needs: [package_redhat_8]
Expand Down Expand Up @@ -1293,7 +1397,7 @@ push_artifacts:
variables:
DEB_10_PACKAGES: "debs/*bpo10+1_amd64.deb"
DEB_11_PACKAGES: "debs/*bpo11*.deb"
UBU_20_PACKAGES: "debs/*bpo10+1ubuntu*.deb"
UBU_20_PACKAGES: "debs/*bpo10+1*ubuntu*.deb"
stage: push
needs: [package_conda, package_debian_10, package_debian_11, package_ubuntu_20.04, package_redhat_8, package_redhat_8_py36, package_windows_vs2019]
dependencies: [package_conda, package_debian_10, package_debian_11, package_ubuntu_20.04, package_redhat_8, package_redhat_8_py36, package_windows_vs2019]
needs: [package_conda, package_debian_10, package_debian_11, package_ubuntu_20.04, package_ubuntu_20.04_cpp17, package_redhat_8, package_redhat_8_py36, package_windows_vs2019]
dependencies: [package_conda, package_debian_10, package_debian_11, package_ubuntu_20.04, package_ubuntu_20.04_cpp17, package_redhat_8, package_redhat_8_py36, package_windows_vs2019]
7 changes: 5 additions & 2 deletions BuildSetup.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,10 @@ elseif( WIN32 )
set( STADYN "STATIC" )
endif()

if( NOT DEFINED CPPSTD )
set( CPPSTD "c++11" )
endif()

# profiler stuff
if( ${PROFILER} )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pg -no-pie -static" )
Expand All @@ -37,7 +41,6 @@ endif()
#----------------------------------------
if( ${CMAKE_SYSTEM_NAME} MATCHES "SunOS" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -erroff=hidevf,wvarhidemem,badargtype2w" )
# add -DCMAKE_CXX_FLAGS=-std=c++03 or =-std=c++11 on the CMAKE invocation
set( CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -mt -shared" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
set( CMAKE_SHARED_LIBRARY_SUFFIX .dylib )
Expand All @@ -51,7 +54,7 @@ elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Darwin" )
set( CMAKE_C_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS} -O2" )
set( CMAKE_C_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS} -O3" )
elseif( ${CMAKE_SYSTEM_NAME} MATCHES "Linux" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -Werror=return-type -Werror=deprecated" )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=${CPPSTD} -Werror=return-type -Werror=deprecated" )
# Do not optimize for debug builds. Do the same for RELWITHDEBINFO ?
set( CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS} -O0 -g" )
set( CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS} -O3" )
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ cmake_minimum_required( VERSION 3.7.2 )

project( GNSSTK )
set( GNSSTK_VERSION_MAJOR "14" )
set( GNSSTK_VERSION_MINOR "1" )
set( GNSSTK_VERSION_MINOR "2" )
set( GNSSTK_VERSION_PATCH "0" )
set( GNSSTK_VERSION "${GNSSTK_VERSION_MAJOR}.${GNSSTK_VERSION_MINOR}.${GNSSTK_VERSION_PATCH}" )

Expand Down
27 changes: 27 additions & 0 deletions ChangeLog.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,30 @@
# Version 14.2.0 Friday August 11, 2023

Modifications by Author
-----------------------
Benjamin Glass <[email protected]> (3):
build.sh: Opportunistically use Ninja, when available
SEMNavDataFactory: bugfixes
Add GPS SV config message to NewNav

Brent Renfro <[email protected]> (1):
Issue 509 bei dou end fit

David Barber <[email protected]> (2):
Update submodule data reference
create debian/ubuntu major version coinstallable package

John Knutson <[email protected]> (3):
Add support for arbitrary C++ standards to the build, and specific CI builds for C++17 under ubuntu
Changes in support of CSMS.
Add support for norad IDs in SatID for those compilers that support c++17 or later

Taben Malik <[email protected]> (2):
Fix a sign convention for time offsets.
Missed a few sign convention changes



# Version 14.1.0 Monday February 27, 2023

Modifications by Author
Expand Down
2 changes: 1 addition & 1 deletion Doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ PROJECT_NAME = "GNSS ToolKit Software Library"
# could be handy for archiving the generated documentation or if some version
# control system is used.

PROJECT_NUMBER = 14.1.0
PROJECT_NUMBER = 14.2.0

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down
46 changes: 33 additions & 13 deletions RELNOTES.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,42 @@
GNSSTk 14.1.0 Release Notes
GNSSTk 14.2.0 Release Notes
========================

* This release includes the following:
* Adding SWIG bindings for MOPS and GCAT TropModel correctors.
* Refactoring PRSolution to update style and decompose large function.
* Fixing swig4.0 compile time issues.
* Fixing sphinx docs hidden navigation bar.

Updates since v14.0.0
---------------------
* Changes in support of CSMS. See New Modules below.
* Add GPS SV config message to NewNav
* Add support for norad IDs in SatID for those compilers that support c++17 or later
* Co-installation of major versions of debian packages.
* Additionally, it contains several bug fixes and build system updates.

**Build System and Test Suite**
* Fix swig4.0 compile time issues.
* Fix gnsstk data submodule reference
* Update build.sh to opportunistically use Ninja
* Update create debian/ubuntu major version coinstallable package

**Library Changes**
* Add SWIG bindings for MOPS and GCAT TropModel correctors.
* Update refactor PRSolution to update style and decompose large functions.
* Add support for specifying which c++ standard to use when compiling with g++
* Add GPS SV config message to NewNav
* Add support for norad IDs in SatID for those compilers that support c++17 or later
* Update BDSD?NavEph.cpp Modified end fit determination
* Changes in support of CSMS

Fixes since v14.0.0
Fixes since v14.1.0
--------------------
* Fix sphinx docs hidden navigation bar
* Fix SEM NavData system value
* Fix SEMNavDataFactory orbital inclination rate of change
* Fix time offset sign convention to be consistent between BasicTimeSystemConverter and the NavTimeSystemConverter.
* Fix a few sign convention changes

New Modules
-------------------------------
core/lib/GNSSCore/SatTimeSystem.cpp
core/lib/GNSSCore/SatTimeSystem.hpp
core/lib/NewNav/GPSNavConfig.cpp
core/lib/NewNav/GPSNavConfig.hpp
core/lib/NewNav/GPSSVConfig.cpp
core/lib/NewNav/GPSSVConfig.hpp
core/lib/NewNav/SystemNavData.hpp
core/tests/GNSSCore/SatelliteSystem_T.cpp
core/tests/NewNav/GPSNavConfig_T.cpp
core/tests/NewNav/GPSSVConfig_T.cpp
swig/tests/test_GPSNavConfig.py
Loading

0 comments on commit fe45a39

Please sign in to comment.