From 2585fc34200938fb3fa55a450ea37f68012aafa7 Mon Sep 17 00:00:00 2001 From: oharboe Date: Wed, 9 Apr 2008 05:55:23 +0000 Subject: [PATCH] Don Porges fixed c99 issues. git-svn-id: svn://svn.berlios.de/openocd/trunk@553 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- configure.in | 5 +++++ src/helper/command.c | 17 +++++++++++------ src/helper/log.c | 12 ++++++------ src/helper/replacements.c | 2 ++ src/helper/replacements.h | 2 +- src/helper/time_support.c | 2 -- src/helper/time_support.h | 12 ++++++++++-- src/jtag/amt_jtagaccel.c | 3 --- src/jtag/bitbang.c | 3 --- src/jtag/bitq.c | 3 --- src/jtag/ft2232.c | 5 +---- src/jtag/gw16012.c | 3 --- src/jtag/jtag.c | 40 ++++++++++++++++++++++++++++++--------- src/jtag/presto.c | 3 --- 14 files changed, 67 insertions(+), 45 deletions(-) diff --git a/configure.in b/configure.in index f2351fa00..8c5a21028 100644 --- a/configure.in +++ b/configure.in @@ -7,9 +7,14 @@ AC_CANONICAL_HOST AC_CHECK_HEADERS(jtag_minidriver.h) AC_CHECK_HEADERS(sys/param.h) +AC_CHECK_HEADERS(sys/time.h) AC_CHECK_HEADERS(elf.h) +AC_CHECK_HEADERS(strings.h) + +AC_HEADER_TIME AC_C_BIGENDIAN +AC_C_VARARRAYS AC_CHECK_FUNCS(strndup) AC_CHECK_FUNCS(strnlen) diff --git a/src/helper/command.c b/src/helper/command.c index ef5673336..ec7cc6bb7 100644 --- a/src/helper/command.c +++ b/src/helper/command.c @@ -142,10 +142,10 @@ command_t* register_command(command_context_t *context, command_t *parent, char int unregister_command(command_context_t *context, char *name) { - unique_length_dirty = 1; - command_t *c, *p = NULL, *c2; + unique_length_dirty = 1; + if ((!context) || (!name)) return ERROR_INVALID_ARGUMENTS; @@ -452,7 +452,11 @@ int command_run_file(command_context_t *context, FILE *file, enum command_mode m void command_print_help_line(command_context_t* context, struct command_s *command, int indent) { command_t *c; + #ifdef HAVE_C_VARRAYS char indent_text[indent + 2]; + #else + char indent_text[68]; + #endif char *help = "no help available"; char name_buf[64]; @@ -578,12 +582,13 @@ int handle_sleep_command(struct command_context_s *cmd_ctx, char *cmd, char **ar int handle_time_command(struct command_context_s *cmd_ctx, char *cmd, char **args, int argc) { - if (argc<1) - return ERROR_COMMAND_SYNTAX_ERROR; - duration_t duration; char *duration_text; int retval; + float t; + + if (argc<1) + return ERROR_COMMAND_SYNTAX_ERROR; duration_start_measure(&duration); @@ -591,7 +596,7 @@ int handle_time_command(struct command_context_s *cmd_ctx, char *cmd, char **arg duration_stop_measure(&duration, &duration_text); - float t=duration.duration.tv_sec; + t=duration.duration.tv_sec; t+=((float)duration.duration.tv_usec / 1000000.0); command_print(cmd_ctx, "%s took %fs", args[0], t); diff --git a/src/helper/log.c b/src/helper/log.c index d0f0e3ddb..34e73b6a2 100644 --- a/src/helper/log.c +++ b/src/helper/log.c @@ -29,7 +29,6 @@ #include #include #include -#include int debug_level = -1; @@ -61,6 +60,7 @@ static int count = 0; */ static void log_puts(enum log_levels level, const char *file, int line, const char *function, const char *string) { + char *f; if (level == LOG_LVL_OUTPUT) { /* do not prepend any headers, just print out what we were given and return */ @@ -69,7 +69,7 @@ static void log_puts(enum log_levels level, const char *file, int line, const ch return; } - char *f = strrchr(file, '/'); + f = strrchr(file, '/'); if (f != NULL) file = f + 1; @@ -112,12 +112,12 @@ static void log_puts(enum log_levels level, const char *file, int line, const ch void log_printf(enum log_levels level, const char *file, int line, const char *function, const char *format, ...) { char *string; + va_list ap; count++; if (level > debug_level) return; - va_list ap; va_start(ap, format); string = alloc_vprintf(format, ap); @@ -133,12 +133,12 @@ void log_printf(enum log_levels level, const char *file, int line, const char *f void log_printf_lf(enum log_levels level, const char *file, int line, const char *function, const char *format, ...) { char *string; + va_list ap; count++; if (level > debug_level) return; - va_list ap; va_start(ap, format); string = alloc_vprintf(format, ap); @@ -276,6 +276,8 @@ char *alloc_vprintf(const char *fmt, va_list ap) for (;;) { char *t = string; + va_list ap_copy; + int ret; string = realloc(string, size); if (string == NULL) { @@ -284,10 +286,8 @@ char *alloc_vprintf(const char *fmt, va_list ap) return NULL; } - va_list ap_copy; va_copy(ap_copy, ap); - int ret; ret = vsnprintf(string, size, fmt, ap_copy); /* NB! The result of the vsnprintf() might be an *EMPTY* string! */ if ((ret >= 0) && ((ret + 1) < size)) diff --git a/src/helper/replacements.c b/src/helper/replacements.c index 7a6729b81..bebca28e2 100644 --- a/src/helper/replacements.c +++ b/src/helper/replacements.c @@ -25,7 +25,9 @@ #include #include +#ifdef HAVE_STRINGS_H #include +#endif /* * clear_malloc * diff --git a/src/helper/replacements.h b/src/helper/replacements.h index 4df760124..71e4c66ca 100644 --- a/src/helper/replacements.h +++ b/src/helper/replacements.h @@ -187,7 +187,7 @@ static __inline int close_socket(int sock) static __inline void socket_nonblock(int fd) { #ifdef _WIN32 - long nonblock = 1; + unsigned long nonblock = 1; ioctlsocket(fd, FIONBIO, &nonblock ); #else int oldopts = fcntl(fd, F_GETFL, 0); diff --git a/src/helper/time_support.c b/src/helper/time_support.c index 267746145..e97993be6 100644 --- a/src/helper/time_support.c +++ b/src/helper/time_support.c @@ -26,8 +26,6 @@ #include "log.h" #include -#include -#include int timeval_subtract(struct timeval *result, struct timeval *x, struct timeval *y); int timeval_add(struct timeval *result, struct timeval *x, struct timeval *y); diff --git a/src/helper/time_support.h b/src/helper/time_support.h index 05dc91190..311c88d32 100644 --- a/src/helper/time_support.h +++ b/src/helper/time_support.h @@ -20,8 +20,16 @@ #ifndef TIME_SUPPORT_H #define TIME_SUPPORT_H -#include -#include +#ifdef TIME_WITH_SYS_TIME +# include +# include +#else +# ifdef HAVE_SYS_TIME_H +# include +# else +# include +# endif +#endif extern int timeval_subtract(struct timeval *result, struct timeval *x, struct timeval *y); extern int timeval_add(struct timeval *result, struct timeval *x, struct timeval *y); diff --git a/src/jtag/amt_jtagaccel.c b/src/jtag/amt_jtagaccel.c index 1a34073a4..b94b6f760 100644 --- a/src/jtag/amt_jtagaccel.c +++ b/src/jtag/amt_jtagaccel.c @@ -34,9 +34,6 @@ #include #include -#include -#include - #if PARPORT_USE_PPDEV == 1 #include #include diff --git a/src/jtag/bitbang.c b/src/jtag/bitbang.c index f79d2af72..79f77b562 100644 --- a/src/jtag/bitbang.c +++ b/src/jtag/bitbang.c @@ -34,9 +34,6 @@ #include #include -#include -#include - bitbang_interface_t *bitbang_interface; int bitbang_execute_queue(void); diff --git a/src/jtag/bitq.c b/src/jtag/bitq.c index e2a243fbf..93bb30638 100644 --- a/src/jtag/bitq.c +++ b/src/jtag/bitq.c @@ -34,9 +34,6 @@ #include #include -#include -#include - bitq_interface_t *bitq_interface; /* low level bit queue interface */ diff --git a/src/jtag/ft2232.c b/src/jtag/ft2232.c index 20824bbbd..2740c3be1 100644 --- a/src/jtag/ft2232.c +++ b/src/jtag/ft2232.c @@ -46,9 +46,6 @@ #include #endif -#include -#include - /* enable this to debug io latency */ #if 0 @@ -455,11 +452,11 @@ void ft2232_add_pathmove(pathmove_command_t *cmd) state_count = 0; while (num_states) { - tms_byte = 0x0; int bit_count = 0; int num_states_batch = num_states > 7 ? 7 : num_states; + tms_byte = 0x0; /* command "Clock Data to TMS/CS Pin (no Read)" */ BUFFER_ADD = 0x4b; /* number of states remaining */ diff --git a/src/jtag/gw16012.c b/src/jtag/gw16012.c index 8caaba63f..8c7dc81b9 100644 --- a/src/jtag/gw16012.c +++ b/src/jtag/gw16012.c @@ -50,9 +50,6 @@ #include #include -#include -#include - #if PARPORT_USE_PPDEV == 1 #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__) #include diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c index 291c40107..b177c8e24 100644 --- a/src/jtag/jtag.c +++ b/src/jtag/jtag.c @@ -361,6 +361,7 @@ void* cmd_queue_alloc(size_t size) { cmd_queue_page_t **p_page = &cmd_queue_pages; int offset; + u8 *t; if (*p_page) { @@ -381,7 +382,7 @@ void* cmd_queue_alloc(size_t size) offset = (*p_page)->used; (*p_page)->used += size; - u8 *t=(u8 *)((*p_page)->address); + t=(u8 *)((*p_page)->address); return t + offset; } @@ -425,9 +426,11 @@ static void jtag_prelude(enum tap_state state) void jtag_add_ir_scan(int num_fields, scan_field_t *fields, enum tap_state state) { + int retval; + jtag_prelude(state); - int retval=interface_jtag_add_ir_scan(num_fields, fields, cmd_queue_end_state); + retval=interface_jtag_add_ir_scan(num_fields, fields, cmd_queue_end_state); if (retval!=ERROR_OK) jtag_error=retval; } @@ -511,9 +514,11 @@ int MINIDRIVER(interface_jtag_add_ir_scan)(int num_fields, scan_field_t *fields, void jtag_add_plain_ir_scan(int num_fields, scan_field_t *fields, enum tap_state state) { + int retval; + jtag_prelude(state); - int retval=interface_jtag_add_plain_ir_scan(num_fields, fields, cmd_queue_end_state); + retval=interface_jtag_add_plain_ir_scan(num_fields, fields, cmd_queue_end_state); if (retval!=ERROR_OK) jtag_error=retval; } @@ -557,9 +562,11 @@ int MINIDRIVER(interface_jtag_add_plain_ir_scan)(int num_fields, scan_field_t *f void jtag_add_dr_scan(int num_fields, scan_field_t *fields, enum tap_state state) { + int retval; + jtag_prelude(state); - int retval=interface_jtag_add_dr_scan(num_fields, fields, cmd_queue_end_state); + retval=interface_jtag_add_dr_scan(num_fields, fields, cmd_queue_end_state); if (retval!=ERROR_OK) jtag_error=retval; } @@ -742,9 +749,11 @@ void MINIDRIVER(interface_jtag_add_dr_out)(int device_num, void jtag_add_plain_dr_scan(int num_fields, scan_field_t *fields, enum tap_state state) { + int retval; + jtag_prelude(state); - int retval=interface_jtag_add_plain_dr_scan(num_fields, fields, cmd_queue_end_state); + retval=interface_jtag_add_plain_dr_scan(num_fields, fields, cmd_queue_end_state); if (retval!=ERROR_OK) jtag_error=retval; } @@ -815,6 +824,10 @@ int MINIDRIVER(interface_jtag_add_tlr)() void jtag_add_pathmove(int num_states, enum tap_state *path) { + enum tap_state cur_state=cmd_queue_cur_state; + int i; + int retval; + /* the last state has to be a stable state */ if (tap_move_map[path[num_states - 1]] == -1) { @@ -822,8 +835,6 @@ void jtag_add_pathmove(int num_states, enum tap_state *path) exit(-1); } - enum tap_state cur_state=cmd_queue_cur_state; - int i; for (i=0; i #include -#include -#include - /* PRESTO access library includes */ #if BUILD_PRESTO_FTD2XX == 1 #include