PUD: import nmealib v0.6.9
authorFerry Huberts <ferry.huberts@pelagic.nl>
Wed, 16 May 2012 15:09:47 +0000 (17:09 +0200)
committerFerry Huberts <ferry.huberts@pelagic.nl>
Wed, 16 May 2012 15:11:23 +0000 (17:11 +0200)
Signed-off-by: Ferry Huberts <ferry.huberts@pelagic.nl>
15 files changed:
lib/pud/nmealib/Makefile
lib/pud/nmealib/Makefile.inc
lib/pud/nmealib/include/nmea/context.h
lib/pud/nmealib/include/nmea/tok.h
lib/pud/nmealib/samples/Makefile
lib/pud/nmealib/samples/generate/main.c
lib/pud/nmealib/samples/generator/main.c
lib/pud/nmealib/samples/math/main.c
lib/pud/nmealib/samples/parse/main.c
lib/pud/nmealib/samples/parse_file/main.c
lib/pud/nmealib/src/context.c
lib/pud/nmealib/src/generate.c
lib/pud/nmealib/src/generator.c
lib/pud/nmealib/src/parse.c
lib/pud/nmealib/src/parser.c

index 76c7680..6f2753b 100644 (file)
@@ -15,42 +15,44 @@ INCLUDEDIR = usr/include
 MODULES = context generate generator gmath info parse parser sentence time tok util
 OBJ = $(MODULES:%=build/%.o)
 
-LIBS = -lm
-INCS = -I ./include
+LIBRARIES = -lm
+INCLUDES = -I ./include
 
 
 #
 # Targets
 #
 
-all: all-before lib/$(LIBNAME)
+all: default_target
+
+default_target: all-before lib/$(LIBNAME)
 
 remake: clean all
 
 lib/$(LIBNAME): $(OBJ)
        @echo "[LD] $@"
-       @$(CC) -shared -Wl,-soname=$(LIBNAME) -o lib/$(LIBNAME) $(OBJ) -lc
+       @$(CC) -shared -Wl,-soname=$(LIBNAME) -o "$@" $(LIBRARIES) $(OBJ)
 
 build/%.o: src/%.c Makefile Makefile.inc
        @echo "[CC] $<"
-       @$(CC) $(CCFLAGS) $(INCS) -c $< -o $@
+       @$(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
 
 samples: all
-       $(MAKE) -C samples all
+       @$(MAKE) -C samples all
 
 
 #
 # Phony Targets
 #
 
-.PHONY: all-before clean doc install install-headers uninstall uninstall-headers
+.PHONY: all default_target all-before clean doc install install-headers uninstall uninstall-headers
 
 all-before:
        @mkdir -p build lib
 
 clean:
-       $(MAKE) -C doc clean
-       $(MAKE) -C samples clean
+       @$(MAKE) -C doc clean
+       @$(MAKE) -C samples clean
        rm -fr build lib
 
 doc:
index 50f9a86..7ef80f7 100644 (file)
@@ -20,11 +20,9 @@ STRIP ?=     :
 endif
 
 
-GITVERSION = $(shell git describe --dirty='-dirty')
-
 # we expect the version to be like 'v0.5.3-27-g0c2727a' and then strip the 'v',
 # and the '-27-g0c2727a' parts
-VERSION=0.6.8
+VERSION=0.6.9
 
 # protect against no version number
 ifeq ($(strip $(VERSION)),)
@@ -32,5 +30,10 @@ VERSION=0.0.0
 endif
 
 CC ?= gcc
-CCFLAGS += -fPIC -O2 -Wall -Wextra -Wformat=2 -Winit-self \
-           -Wmissing-include-dirs -Wswitch-default -Wswitch-enum -Werror
+CFLAGS ?= -Wall -Wextra -Wold-style-definition -Wdeclaration-after-statement -Wmissing-prototypes -Wstrict-prototypes \
+          -Wmissing-declarations -Wsign-compare -Waggregate-return -Wmissing-noreturn -Wmissing-format-attribute \
+          -Wno-multichar -Wno-deprecated-declarations -Wendif-labels -Wwrite-strings -Wbad-function-cast \
+          -Wpointer-arith -Wcast-qual -Wshadow -Wformat -Wsequence-point -Wcast-align -Werror -Wnested-externs \
+          -Winline -Wdisabled-optimization -finline-functions-called-once -funit-at-a-time -fearly-inlining \
+          -finline-limit=350 -O2  -fPIC -ggdb -fPIC -O2 -Wall -Wextra -Wformat=2 -Winit-self -Wmissing-include-dirs \
+          -Wswitch-default -Wswitch-enum -Werror
index c692a86..1fb30ed 100644 (file)
@@ -40,9 +40,9 @@ typedef struct _nmeaPROPERTY {
 
 nmeaPROPERTY * nmea_property(void);
 
-void nmea_trace(const char *str, ...);
+void nmea_trace(const char *str, ...) __attribute__ ((format(printf, 1, 2)));
 void nmea_trace_buff(const char *buff, int buff_size);
-void nmea_error(const char *str, ...);
+void nmea_error(const char *str, ...) __attribute__ ((format(printf, 1, 2)));
 
 #ifdef  __cplusplus
 }
index e132d68..7ca6c4e 100644 (file)
@@ -28,7 +28,7 @@ extern "C" {
 int nmea_calc_crc(const char *buff, int buff_sz);
 int nmea_atoi(const char *str, int str_sz, int radix);
 double nmea_atof(const char *str, int str_sz);
-int nmea_printf(char *buff, int buff_sz, const char *format, ...);
+int nmea_printf(char *buff, int buff_sz, const char *format, ...) __attribute__ ((format(printf, 3, 4)));
 int nmea_scanf(const char *buff, int buff_sz, const char *format, ...);
 
 #ifdef  __cplusplus
index a583a20..2f87548 100644 (file)
@@ -8,8 +8,8 @@ SAMPLES = generate generator math parse parse_file
 SMPLS = $(SAMPLES:%=../build/samples/%)
 SMPLOBJ = $(SAMPLES:%=%/main.o)
 
-LIBS = -lm -L../lib -lnmea
-INCS = -I ../include
+LIBRARIES = -lm -L../lib -lnmea
+INCLUDES = -I ../include
 
 
 #
@@ -24,18 +24,18 @@ samples: $(SMPLS)
 
 ../build/samples/%: %/main.o
        @echo "[LD] $@"
-       @$(CC) $(CCFLAGS) $< $(LIBS) -o $@
+       @$(CC) $(CFLAGS) $< $(LIBRARIES) -o $@
 
 %/main.o: %/main.c Makefile ../Makefile.inc
        @echo "[CC] $<"
-       @$(CC) $(CCFLAGS) $(INCS) -c $< -o $@
+       @$(CC) $(CFLAGS) $(INCLUDES) -c $< -o $@
 
 
 #
 # Phony Targets
 #
 
-.PHONY: all-before clean
+.PHONY: all all-before clean samples
 
 all-before:
        @mkdir -p ../build/samples
index 73e584d..e8bb187 100644 (file)
@@ -23,8 +23,7 @@
 #include <stdio.h>
 #include <unistd.h>
 
-int main()
-{
+int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) {
     nmeaINFO info;
     char buff[2048];
     int gen_sz;
index f95cf1e..b48c53d 100644 (file)
@@ -23,8 +23,7 @@
 #include <stdio.h>
 #include <unistd.h>
 
-int main()
-{
+int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) {
     nmeaGENERATOR *gen;
     nmeaINFO info;
     char buff[2048];
index d1bcfa8..7b81769 100644 (file)
@@ -25,8 +25,7 @@
 \r
 #define NUM_POINTS 4\r
 \r
-int main()\r
-{\r
+int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) {\r
     const char *buff[] = {\r
         "$GPRMC,213916.199,A,4221.0377,N,07102.9778,W,0.00,,010207,,,A*6A\r\n",\r
         "$GPRMC,213917.199,A,4221.0510,N,07102.9549,W,0.23,175.43,010207,,,A*77\r\n",\r
index 3f03da8..a29a6c2 100644 (file)
@@ -23,8 +23,7 @@
 #include <stdio.h>
 #include <string.h>
 
-int main()
-{
+int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) {
     const char *buff[] = {
         "$GPRMC,173843,A,3349.896,N,11808.521,W,000.0,360.0,230108,013.4,E*69\r\n",
         "$GPGGA,111609.14,5001.27,N,3613.06,E,3,08,0.0,10.2,M,0.0,M,0.0,0000*70\r\n",
index a6f3617..cc47180 100644 (file)
 #include <unistd.h>
 
 
-void trace(const char *str, int str_size)
+static void trace(const char *str, int str_size)
 {
     printf("Trace: ");
     write(1, str, str_size);
     printf("\n");
 }
-void error(const char *str, int str_size)
+static void error(const char *str, int str_size)
 {
     printf("Error: ");
     write(1, str, str_size);
     printf("\n");
 }
 
-int main()
-{
+int main(int argc __attribute__((unused)), char *argv[] __attribute__((unused))) {
     static const char * filename = "../../samples/parse_file/gpslog.txt";
     nmeaINFO info;
     nmeaPARSER parser;
index c49d66f..5fbfdc8 100644 (file)
@@ -25,8 +25,7 @@
 
 #include <nmea/config.h>
 
-nmeaPROPERTY * nmea_property()
-{
+nmeaPROPERTY * nmea_property(void) {
     static nmeaPROPERTY prop = {
         0, 0, NMEA_DEF_PARSEBUFF
         };
index abbb98f..b8441c2 100644 (file)
@@ -116,7 +116,7 @@ void nmea_info2GPGSA(const nmeaINFO *info, nmeaGPGSA *pack)
 
 int nmea_gsv_npack(int sat_count)
 {
-    int pack_count = (int)ceil(((double)sat_count) / NMEA_SATINPACK);
+    int pack_count = lrint(ceil(((double)sat_count) / (double)NMEA_SATINPACK));
 
     if(0 == pack_count)
         pack_count = 1;
index 5cc2158..47d5999 100644 (file)
@@ -26,8 +26,9 @@
 #include <nmea/context.h>
 #include <nmea/generate.h>
 #include <nmea/gmath.h>
+#include <math.h>
 
-double nmea_random(double min, double max)
+static double nmea_random(double min, double max)
 {
     static double rand_max = RAND_MAX;
     double rand_val = rand();
@@ -124,29 +125,29 @@ int nmea_generate_from(
  * NOISE generator
  */
 
-int nmea_igen_noise_init(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_noise_init(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info __attribute__ ((unused)))
 {
     return 1;
 }
 
-int nmea_igen_noise_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_noise_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {
     int it;
     int in_use;
 
-    info->sig = (int)nmea_random(1, 3);
+    info->sig = lrint(nmea_random(1, 3));
     info->PDOP = nmea_random(0, 9);
     info->HDOP = nmea_random(0, 9);
     info->VDOP = nmea_random(0, 9);
-    info->fix = (int)nmea_random(2, 3);
+    info->fix = lrint(nmea_random(2, 3));
     info->lat = nmea_random(0, 100);
     info->lon = nmea_random(0, 100);
     info->speed = nmea_random(0, 100);
     info->direction = nmea_random(0, 360);
     info->declination = nmea_random(0, 360);
-    info->elv = (int)nmea_random(-100, 100);
+    info->elv = lrint(nmea_random(-100, 100));
 
     info->satinfo.inuse = 0;
     info->satinfo.inview = 0;
@@ -154,9 +155,9 @@ int nmea_igen_noise_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
     for(it = 0; it < 12; ++it)
     {
         info->satinfo.sat[it].id = it;
-        info->satinfo.sat[it].in_use = in_use = (int)nmea_random(0, 3);
-        info->satinfo.sat[it].elv = (int)nmea_random(0, 90);
-        info->satinfo.sat[it].azimuth = (int)nmea_random(0, 359);
+        info->satinfo.sat[it].in_use = in_use = lrint(nmea_random(0, 3));
+        info->satinfo.sat[it].elv = lrint(nmea_random(0, 90));
+        info->satinfo.sat[it].azimuth = lrint(nmea_random(0, 359));
         info->satinfo.sat[it].sig = (int)(in_use?nmea_random(40, 99):nmea_random(0, 40));
 
         if(in_use)
@@ -168,7 +169,7 @@ int nmea_igen_noise_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
     return 1;
 }
 
-int nmea_igen_noise_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_noise_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info __attribute__ ((unused)))
 {
     return 1;
@@ -178,14 +179,14 @@ int nmea_igen_noise_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
  * STATIC generator
  */
 
-int nmea_igen_static_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_static_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {
     nmea_time_now(&info->utc);
     return 1;
 };
 
-int nmea_igen_static_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_static_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {
     info->satinfo.inuse = 4;
@@ -218,7 +219,7 @@ int nmea_igen_static_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
     return 1;
 }
 
-int nmea_igen_static_init(nmeaGENERATOR *gen, nmeaINFO *info)
+static int nmea_igen_static_init(nmeaGENERATOR *gen, nmeaINFO *info)
 {
     info->sig = 3;
     info->fix = 3;
@@ -232,7 +233,7 @@ int nmea_igen_static_init(nmeaGENERATOR *gen, nmeaINFO *info)
  * SAT_ROTATE generator
  */
 
-int nmea_igen_rotate_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_rotate_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {
     int it;
@@ -252,7 +253,7 @@ int nmea_igen_rotate_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
     return 1;
 };
 
-int nmea_igen_rotate_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_rotate_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {
     int it;
@@ -275,7 +276,7 @@ int nmea_igen_rotate_reset(nmeaGENERATOR *gen __attribute__ ((unused)),
     return 1;
 }
 
-int nmea_igen_rotate_init(nmeaGENERATOR *gen, nmeaINFO *info)
+static int nmea_igen_rotate_init(nmeaGENERATOR *gen, nmeaINFO *info)
 {
     info->sig = 3;
     info->fix = 3;
@@ -289,7 +290,7 @@ int nmea_igen_rotate_init(nmeaGENERATOR *gen, nmeaINFO *info)
  * POS_RANDMOVE generator
  */
 
-int nmea_igen_pos_rmove_init(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_pos_rmove_init(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {    
     info->sig = 3;
@@ -299,7 +300,7 @@ int nmea_igen_pos_rmove_init(nmeaGENERATOR *gen __attribute__ ((unused)),
     return 1;
 }
 
-int nmea_igen_pos_rmove_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
+static int nmea_igen_pos_rmove_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
                nmeaINFO *info)
 {
     nmeaPOS crd;
@@ -326,7 +327,7 @@ int nmea_igen_pos_rmove_loop(nmeaGENERATOR *gen __attribute__ ((unused)),
     return 1;
 };
 
-int nmea_igen_pos_rmove_destroy(nmeaGENERATOR *gen __attribute__ ((unused)))
+static int nmea_igen_pos_rmove_destroy(nmeaGENERATOR *gen __attribute__ ((unused)))
 {
     return 1;
 };
@@ -335,7 +336,7 @@ int nmea_igen_pos_rmove_destroy(nmeaGENERATOR *gen __attribute__ ((unused)))
  * generator create
  */
 
-nmeaGENERATOR * __nmea_create_generator(int type, nmeaINFO *info)
+static nmeaGENERATOR * __nmea_create_generator(int type, nmeaINFO *info)
 {
     nmeaGENERATOR *gen = 0;
 
index 1d54840..9248b01 100644 (file)
@@ -75,7 +75,7 @@
 
 #define NMEA_TIMEPARSE_BUF  (256)
 
-int _nmea_parse_time(const char *buff, int buff_sz, nmeaTIME *res)
+static int _nmea_parse_time(const char *buff, int buff_sz, nmeaTIME *res)
 {
     int success = 0;
 
index b04385d..e407d15 100644 (file)
@@ -138,7 +138,7 @@ int nmea_parse(
  * low level
  */
 
-int nmea_parser_real_push(nmeaPARSER *parser, const char *buff, int buff_sz)
+static int nmea_parser_real_push(nmeaPARSER *parser, const char *buff, int buff_sz)
 {
     int nparsed = 0, crc, sen_sz, ptype;
     nmeaParserNODE *node = 0;