summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2012-12-17 13:54:15 +1030
committerRusty Russell <rusty@rustcorp.com.au>2012-12-17 13:54:15 +1030
commitd21d629add995fe2eefd4290d62499671715b1a9 (patch)
tree2925e6c92d29243d4fd554bd6b5b9e64b0d92099
parent4814c4c79cc00ba61f865075af9ca8f919f6f370 (diff)
configurator: fix single-arg case.
In this case, CCAN_CFLAGS should be "". Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
-rw-r--r--tools/configurator/configurator.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/tools/configurator/configurator.c b/tools/configurator/configurator.c
index 14306907..bbf7259e 100644
--- a/tools/configurator/configurator.c
+++ b/tools/configurator/configurator.c
@@ -340,7 +340,8 @@ static char *connect_args(const char *argv[], const char *extra)
for (i = 1; argv[i]; i++) {
strcpy(ret + len, argv[i]);
len += strlen(argv[i]);
- ret[len++] = ' ';
+ if (argv[i+1])
+ ret[len++] = ' ';
}
strcpy(ret + len, extra);
return ret;
@@ -506,14 +507,13 @@ int main(int argc, const char *argv[])
if (argc == 1)
argv = default_args;
- cmd = connect_args(argv, "-o " OUTPUT_FILE " " INPUT_FILE);
+ cmd = connect_args(argv, " -o " OUTPUT_FILE " " INPUT_FILE);
for (i = 0; i < sizeof(tests)/sizeof(tests[0]); i++)
run_test(cmd, &tests[i]);
unlink(OUTPUT_FILE);
unlink(INPUT_FILE);
- cmd[strlen(cmd) - strlen(" -o " OUTPUT_FILE " " INPUT_FILE)] = '\0';
printf("/* Generated by CCAN configurator */\n"
"#ifndef CCAN_CONFIG_H\n"
"#define CCAN_CONFIG_H\n");
@@ -521,7 +521,7 @@ int main(int argc, const char *argv[])
printf("#define _GNU_SOURCE /* Always use GNU extensions. */\n");
printf("#endif\n");
printf("#define CCAN_COMPILER \"%s\"\n", argv[1]);
- printf("#define CCAN_CFLAGS \"%s\"\n\n", cmd + strlen(argv[1]) + 1);
+ printf("#define CCAN_CFLAGS \"%s\"\n\n", connect_args(argv+1, ""));
/* This one implies "#include <ccan/..." works, eg. for tdb2.h */
printf("#define HAVE_CCAN 1\n");
for (i = 0; i < sizeof(tests)/sizeof(tests[0]); i++)