Skip to content

Commit

Permalink
package/rtklib: new package
Browse files Browse the repository at this point in the history
RTKLIB is an open source program package for standard and precise
positioning with GNSS.

Version used here is from rtkexplorer, which is better optimized
and more frequently updated than original version by Tomoji Takasu.

Signed-off-by: Jan Havran <[email protected]>

---

v1: WIP: For SkiffOS:

- https://patchwork.ozlabs.org/project/buildroot/patch/[email protected]/
- Changes applied from Thomas's review.
- There are still Changes Requested before submitting upstream.
- Updated to latest revision of the pkg.
- Skip building the fortran files, need to investigate when this is necessary.

Tested-by: Christian Stewart <[email protected]>
  • Loading branch information
sonicpp authored and paralin committed Feb 20, 2022
1 parent 86ba01a commit 5cea6b7
Show file tree
Hide file tree
Showing 5 changed files with 81 additions and 0 deletions.
1 change: 1 addition & 0 deletions DEVELOPERS
Original file line number Diff line number Diff line change
Expand Up @@ -1553,6 +1553,7 @@ F: package/microchip-hss-payload-generator/
N: Jan Havran <[email protected]>
F: board/pine64/pinecube/
F: configs/pine64_pinecube_defconfig
F: package/rtklib/

N: Jan Heylen <[email protected]>
F: package/opentracing-cpp/
Expand Down
1 change: 1 addition & 0 deletions package/Config.in
Original file line number Diff line number Diff line change
Expand Up @@ -605,6 +605,7 @@ endmenu
source "package/rpi-userland/Config.in"
source "package/rs485conf/Config.in"
source "package/rtc-tools/Config.in"
source "package/rtklib/Config.in"
source "package/rtl8188eu/Config.in"
source "package/rtl8189es/Config.in"
source "package/rtl8189fs/Config.in"
Expand Down
38 changes: 38 additions & 0 deletions package/rtklib/Config.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
comment "rtklib needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS

config BR2_PACKAGE_RTKLIB
bool "rtklib"
depends on BR2_TOOLCHAIN_HAS_THREADS
help
RTKLIB is an open source program package for standard and
precise positioning with GNSS (global navigation satellite
system).

This is a version of RTKLIB optimized for single and dual
frequency low cost GPS receivers, especially u-blox receivers.

https://rtkexplorer.com/

if BR2_PACKAGE_RTKLIB

config BR2_PACKAGE_RTKLIB_CONVBIN
bool "convbin"

config BR2_PACKAGE_RTKLIB_POS2KML
bool "pos2kml"

comment "rnx2rtkp needs Fortran"
depends on !BR2_TOOLCHAIN_HAS_FORTRAN

config BR2_PACKAGE_RTKLIB_RNX2RTKP
bool "rnx2rtkp"
depends on BR2_TOOLCHAIN_HAS_FORTRAN

config BR2_PACKAGE_RTKLIB_RTKRCV
bool "rtkrcv"

config BR2_PACKAGE_RTKLIB_STR2STR
bool "str2str"

endif
3 changes: 3 additions & 0 deletions package/rtklib/rtklib.hash
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Locally computed
sha256 f10efd2cc9e22d9e4a0c950ab86660747241d8b8a34d657952b5d2b9d14cb81b rtklib-620fa2873ce9182ab3ceab223170a3a2b7c3d651.tar.gz
sha256 219747832d49ee958457b2934080ab8d94bd9d8e45fcb1c36f89776fd2c5ed8a license.txt
38 changes: 38 additions & 0 deletions package/rtklib/rtklib.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
################################################################################
#
# rtklib
#
################################################################################

RTKLIB_VERSION = 620fa2873ce9182ab3ceab223170a3a2b7c3d651
RTKLIB_SITE = $(call github,rtklibexplorer,RTKLIB,$(RTKLIB_VERSION))
RTKLIB_LICENSE = BSD-2-Clause
RTKLIB_LICENSE_FILES = license.txt

RTKLIB_APPS = \
$(if $(BR2_PACKAGE_RTKLIB_CONVBIN),convbin) \
$(if $(BR2_PACKAGE_RTKLIB_POS2KML),pos2kml) \
$(if $(BR2_PACKAGE_RTKLIB_RNX2RTKP),rnx2rtkp) \
$(if $(BR2_PACKAGE_RTKLIB_RTKRCV),rtkrcv) \
$(if $(BR2_PACKAGE_RTKLIB_STR2STR),str2str)

define RTKLIB_BUILD_CMDS
find $(@D) -name '*.a' | xargs rm -f
# TODO: Requires fortran compiler. Build conditional on RNX2RTKP.
# $(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/lib/iers/gcc \
# CC="$(TARGET_CC)" \
# F77="$(TARGET_FC)"
$(foreach app,$(RTKLIB_APPS),\
$(TARGET_MAKE_ENV) $(MAKE) -C $(@D)/app/consapp/$(app)/gcc \
CC="$(TARGET_CC)"
)
endef

define RTKLIB_INSTALL_TARGET_CMDS
$(foreach app,$(RTKLIB_APPS), \
$(INSTALL) -m 0755 $(@D)/app/consapp/$(app)/gcc/$(app) \
$(TARGET_DIR)/usr/bin/$(app)
)
endef

$(eval $(generic-package))

0 comments on commit 5cea6b7

Please sign in to comment.