[ccan] [PATCH 1/9] time: rework HAVE_CLOCK_GETTIME to avoid conflicts with autoconf and other config.h sources
Rusty Russell
rusty at rustcorp.com.au
Mon Jun 23 09:50:22 EST 2014
Rusty Russell <rusty at rustcorp.com.au> writes:
> Cody P Schafer <dev at codyps.com> writes:
>> CC: Rusty Russell <rusty at rustcorp.com.au>
>> Signed-off-by: Cody P Schafer <dev at codyps.com>
>
> Yes, the HAVE_CLOCK_GETTIME_IN_LIBRT || HAVE_CLOCK_GETTIME is a hack.
>
> But I think that we should make configurator a bit smarter, rather
> than opencoding in config.h.
>
> I don't have a system which needs -lrt any more, but this should work.
>
> Thoughts?
> Rusty.
OK, I've applied this and pushed. Please ping me if it's not what
you need.
Thanks!
Rusty.
> diff --git a/tools/configurator/configurator.c b/tools/configurator/configurator.c
> index 5ba8cb0..e2d8806 100644
> --- a/tools/configurator/configurator.c
> +++ b/tools/configurator/configurator.c
> @@ -55,6 +55,7 @@ struct test {
> const char *depends;
> const char *link;
> const char *fragment;
> + const char *overrides; /* On success, force this to '1' */
> bool done;
> bool answer;
> };
> @@ -142,7 +143,9 @@ static struct test tests[] = {
> " struct timespec ts;\n"
> " clock_gettime(CLOCK_REALTIME, &ts);\n"
> " return ts;\n"
> - "}\n" },
> + "}\n",
> + /* This means HAVE_CLOCK_GETTIME, too */
> + "HAVE_CLOCK_GETTIME" },
> { "HAVE_COMPOUND_LITERALS", INSIDE_MAIN, NULL, NULL,
> "int *foo = (int[]) { 1, 2, 3, 4 };\n"
> "return foo[0] ? 0 : 1;" },
> @@ -477,6 +480,12 @@ static bool run_test(const char *cmd, struct test *test)
> test->answer = (status == 0);
> }
> test->done = true;
> +
> + if (test->answer && test->overrides) {
> + struct test *override = find_test(test->overrides);
> + override->done = true;
> + override->answer = true;
> + }
> return test->answer;
> }
>
> _______________________________________________
> ccan mailing list
> ccan at lists.ozlabs.org
> https://lists.ozlabs.org/listinfo/ccan
More information about the ccan
mailing list