[ccan] [PATCH 1/9] time: rework HAVE_CLOCK_GETTIME to avoid conflicts with autoconf and other config.h sources
Cody P Schafer
dev at codyps.com
Sat Jun 21 10:45:59 EST 2014
CC: Rusty Russell <rusty at rustcorp.com.au>
Signed-off-by: Cody P Schafer <dev at codyps.com>
---
ccan/time/time.c | 2 +-
tools/configurator/configurator.c | 9 +++++++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/ccan/time/time.c b/ccan/time/time.c
index 8e7fbff..fd383c3 100644
--- a/ccan/time/time.c
+++ b/ccan/time/time.c
@@ -3,7 +3,7 @@
#include <stdlib.h>
#include <stdio.h>
-#if !HAVE_CLOCK_GETTIME && !HAVE_CLOCK_GETTIME_IN_LIBRT
+#if !HAVE_CLOCK_GETTIME
#include <sys/time.h>
struct timeabs time_now(void)
diff --git a/tools/configurator/configurator.c b/tools/configurator/configurator.c
index 5ba8cb0..ed6acbf 100644
--- a/tools/configurator/configurator.c
+++ b/tools/configurator/configurator.c
@@ -125,7 +125,7 @@ static struct test tests[] = {
"return __builtin_types_compatible_p(char *, int) ? 1 : 0;" },
{ "HAVE_BYTESWAP_H", OUTSIDE_MAIN, NULL, NULL,
"#include <byteswap.h>\n" },
- { "HAVE_CLOCK_GETTIME",
+ { "HAVE_CLOCK_GETTIME_WITHOUT_LIBS",
DEFINES_FUNC, "HAVE_STRUCT_TIMESPEC", NULL,
"#include <time.h>\n"
"static struct timespec func(void) {\n"
@@ -135,7 +135,7 @@ static struct test tests[] = {
"}\n" },
{ "HAVE_CLOCK_GETTIME_IN_LIBRT",
DEFINES_FUNC,
- "HAVE_STRUCT_TIMESPEC !HAVE_CLOCK_GETTIME",
+ "HAVE_STRUCT_TIMESPEC !HAVE_CLOCK_GETTIME_WITHOUT_LIBS",
"-lrt",
"#include <time.h>\n"
"static struct timespec func(void) {\n"
@@ -528,6 +528,11 @@ int main(int argc, const char *argv[])
printf("#define HAVE_CCAN 1\n");
for (i = 0; i < sizeof(tests)/sizeof(tests[0]); i++)
printf("#define %s %u\n", tests[i].name, tests[i].answer);
+ printf("#if defined(HAVE_CLOCK_GETTIME_IN_LIBRT) || defined(HAVE_CLOCK_GETTIME_WITHOUT_LIBS)\n");
+ printf("#define HAVE_CLOCK_GETTIME 1\n");
+ printf("#else\n");
+ printf("#define HAVE_CLOCK_GETTIME 0\n");
+ printf("#endif\n");
printf("#endif /* CCAN_CONFIG_H */\n");
return 0;
}
--
2.0.0
More information about the ccan
mailing list