diff --git a/compat/minmea_compat_ti-rtos.h b/compat/minmea_compat_ti-rtos.h new file mode 100644 index 0000000..1a79fa6 --- /dev/null +++ b/compat/minmea_compat_ti-rtos.h @@ -0,0 +1,18 @@ +/* + * Copyright © 2017 Kosma Moczek + * This program is free software. It comes without any warranty, to the extent + * permitted by applicable law. You can redistribute it and/or modify it under + * the terms of the Do What The Fuck You Want To Public License, Version 2, as + * published by Sam Hocevar. See the COPYING file for more details. + */ + +#if defined(__TI_ARM__) + +// timespec definition +#include + +#define timegm mktime + +#endif + +/* vim: set ts=4 sw=4 et: */ diff --git a/minmea.c b/minmea.c index 6bcf0f3..43d6926 100644 --- a/minmea.c +++ b/minmea.c @@ -323,7 +323,7 @@ bool minmea_scan(const char *sentence, const char *format, ...) default: { // Unknown. goto parse_error; - } break; + } } next_field(); @@ -581,7 +581,7 @@ bool minmea_parse_vtg(struct minmea_sentence_vtg *frame, const char *sentence) c_knots != 'N' || c_kph != 'K') return false; - frame->faa_mode = c_faa_mode; + frame->faa_mode = (enum minmea_faa_mode)c_faa_mode; return true; } @@ -633,7 +633,7 @@ int minmea_gettime(struct timespec *ts, const struct minmea_date *date, const st tm.tm_sec = time_->seconds; time_t timestamp = timegm(&tm); /* See README.md if your system lacks timegm(). */ - if (timestamp != -1) { + if (timestamp != (time_t)-1) { ts->tv_sec = timestamp; ts->tv_nsec = time_->microseconds * 1000; return 0;