[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gpsd-dev] regresssion from 2011: git head fails to build on NetBSD
From: |
Greg Troxel |
Subject: |
[gpsd-dev] regresssion from 2011: git head fails to build on NetBSD |
Date: |
Fri, 25 Oct 2013 20:13:38 -0400 |
User-agent: |
Gnus/5.130006 (Ma Gnus v0.6) Emacs/23.4 (berkeley-unix) |
I have been distracted with many things for longer than I realized. I'm
catching up to the autoconf->scons change, and found several regressions
when building on NetBSD 6 (it used to build find in the 2.96 days).
(Thanks to Gary for provoking this by way of the GR301-W bulk order.)
1) endian.h is unconditionally included without testing for where it is.
On NetBSD it's sys/endian.h. AFAICT POSIX does not specify this, so a
configure-time test is necessary. Is the current code tested on any
BSD?
2) gpsd.h uses va_list without having included stdarg.h. It seems
that's required by POSIX but I'm not 100% sure. Adding stdarg.h allows
the compile to succeed.
3) curses/curses_dll.h was not found, even though it's in $prefix, and
I was unable to find a --with-ncurses=prefix argument to scons from
reading the help output (to cause the corresponding -I and -L/-R
arguments).
(that's as far as I got)
The following patches of course should not be applied, but are
illustrative.
commit 2e6953b52c7c9d49f7785c144cc777f21dea1ed3
Author: Greg Troxel <address@hidden>
Date: Fri Oct 25 20:02:33 2013 -0400
XXX: stdarg
diff --git a/gpsd.h-tail b/gpsd.h-tail
index 72bcf7e..2ef1f3b 100644
--- a/gpsd.h-tail
+++ b/gpsd.h-tail
@@ -905,6 +905,8 @@ extern void libgps_dump_state(struct gps_data_t *);
# define libgps_debug_trace(args) /address@hidden@*/do { } while (0)
#endif /* LIBGPS_DEBUG */
+#include <stdarg.h>
+
void gpsd_labeled_report(const int, const int,
const char *, const char *, va_list);
# if __GNUC__ >= 3 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 7)
commit 25381095c0a9f0bb8fb84a7961026bac7137fb9d
Author: Greg Troxel <address@hidden>
Date: Fri Oct 25 19:58:38 2013 -0400
XXX: patch endian.h for NetBSD
diff --git a/SConstruct b/SConstruct
index 8cdb5d1..99e2622 100644
--- a/SConstruct
+++ b/SConstruct
@@ -613,7 +613,7 @@ confdefs.append('''
#ifdef __LITTLE_ENDIAN__
#undef WORDS_BIGENDIAN
#else
-#include <endian.h>
+#include <sys/endian.h>
#if __BYTE_ORDER == __BIG_ENDIAN
#define WORDS_BIGENDIAN 1
#elif __BYTE_ORDER == __LITTLE_ENDIAN
pgpRjSbH4aKND.pgp
Description: PGP signature
- [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD,
Greg Troxel <=
- Re: [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD, Hal Murray, 2013/10/25
- Re: [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD, Greg Troxel, 2013/10/26
- Re: [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD, Eric S. Raymond, 2013/10/26
- Re: [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD, Hal Murray, 2013/10/27
- Re: [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD, Eric S. Raymond, 2013/10/27
- Re: [gpsd-dev] regresssion from 2011: git head fails to build on NetBSD, Hal Murray, 2013/10/27