From 1920ff31d37c238f48bd8b3a4ad167b123aa11e6 Mon Sep 17 00:00:00 2001 From: dongjiuzhu1 Date: Fri, 26 May 2023 10:43:15 +0800 Subject: [PATCH] libs/libc/gpsutils/minmea: move minmea library from apps/gpsutils Signed-off-by: dongjiuzhu1 --- include/.gitignore | 1 + libs/libc/Kconfig | 1 + libs/libc/Makefile | 1 + libs/libc/gpsutils/.gitignore | 1 + libs/libc/gpsutils/Kconfig | 14 +++++++++ libs/libc/gpsutils/Make.defs | 59 +++++++++++++++++++++++++++++++++++ 6 files changed, 77 insertions(+) create mode 100644 libs/libc/gpsutils/.gitignore create mode 100644 libs/libc/gpsutils/Kconfig create mode 100644 libs/libc/gpsutils/Make.defs diff --git a/include/.gitignore b/include/.gitignore index 37b9cfef19..39c3317621 100644 --- a/include/.gitignore +++ b/include/.gitignore @@ -10,3 +10,4 @@ /openamp /metal /etl +/minmea diff --git a/libs/libc/Kconfig b/libs/libc/Kconfig index ac59bac040..e8a220fe4b 100644 --- a/libs/libc/Kconfig +++ b/libs/libc/Kconfig @@ -31,3 +31,4 @@ source "libs/libc/builtin/Kconfig" source "libs/libc/symtab/Kconfig" source "libs/libc/stream/Kconfig" source "libs/libc/regex/Kconfig" +source "libs/libc/gpsutils/Kconfig" diff --git a/libs/libc/Makefile b/libs/libc/Makefile index b08dabe046..b18f91c36c 100644 --- a/libs/libc/Makefile +++ b/libs/libc/Makefile @@ -32,6 +32,7 @@ include eventfd/Make.defs include fixedmath/Make.defs include gdbstub/Make.defs include grp/Make.defs +include gpsutils/Make.defs include hex2bin/Make.defs include inttypes/Make.defs include libgen/Make.defs diff --git a/libs/libc/gpsutils/.gitignore b/libs/libc/gpsutils/.gitignore new file mode 100644 index 0000000000..e4b0386edb --- /dev/null +++ b/libs/libc/gpsutils/.gitignore @@ -0,0 +1 @@ +/minmea diff --git a/libs/libc/gpsutils/Kconfig b/libs/libc/gpsutils/Kconfig new file mode 100644 index 0000000000..c5680a8ec2 --- /dev/null +++ b/libs/libc/gpsutils/Kconfig @@ -0,0 +1,14 @@ +# +# For a description of the syntax of this configuration file, +# see the file kconfig-language.txt in the NuttX tools repository. +# + +config GPSUTILS_MINMEA_LIB + bool "MINMEA NMEA Library" + default n + ---help--- + Enable support for the MINMEA NMEA library. + + NOTE: This library depends on having some version of math.h + at include/nuttx. There are some different ways to accomplish + this. See the discussion in the top-level nuttx/README.txt file. diff --git a/libs/libc/gpsutils/Make.defs b/libs/libc/gpsutils/Make.defs new file mode 100644 index 0000000000..e7df3dc06a --- /dev/null +++ b/libs/libc/gpsutils/Make.defs @@ -0,0 +1,59 @@ +############################################################################ +# libs/libc/gpsutils/Make.defs +# +# Licensed to the Apache Software Foundation (ASF) under one or more +# contributor license agreements. See the NOTICE file distributed with +# this work for additional information regarding copyright ownership. The +# ASF licenses this file to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance with the +# License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# +############################################################################ + +ifneq ($(CONFIG_GPSUTILS_MINMEA_LIB),) + +MINMEA_URL ?= "https://github.com/kosma/minmea/archive" +MINMEA_VERSION ?= db46128e73cee26d6a6eb0482dcba544ee1ea9f5 + +MINMEA_UNPACKNAME = gpsutils/minmea + +$(MINMEA_UNPACKNAME): + @echo "Downloading: $(MINMEA_UNPACKNAME)" + $(Q) curl -O -L $(MINMEA_URL)/$(MINMEA_VERSION).zip + $(Q) mkdir $(MINMEA_UNPACKNAME) + $(Q) unzip -o -j $(MINMEA_VERSION).zip -d $(MINMEA_UNPACKNAME) + $(call DELFILE, $(MINMEA_VERSION).zip) + +# Files + +CSRCS += minmea.c +CFLAGS += -std=c99 + +.header: + $(shell mkdir -p $(TOPDIR)$(DELIM)include$(DELIM)minmea$(DELIM)) + $(shell cp gpsutils/minmea/minmea.h $(TOPDIR)$(DELIM)include$(DELIM)minmea$(DELIM)) + +clean:: + $(call DELFILE, $(OBJS)) + +# Download and unpack tarball if no git repo found +ifeq ($(wildcard $(MINMEA_UNPACKNAME)/.git),) +context:: $(MINMEA_UNPACKNAME) .header + +distclean:: + $(call DELDIR, $(MINMEA_UNPACKNAME)) +else +context:: .header +endif + +DEPPATH += --dep-path gpsutils/minmea +VPATH += :gpsutils/minmea +endif