Duane Ellis, added clock command.
[fw/openocd] / src / helper / options.c
index afff55ba4964a75e03c5fd943160e6a24b12a13c..35c74fa1c0e9ab0b6b73c5bb4b491916cebbb603 100644 (file)
@@ -2,6 +2,9 @@
  *   Copyright (C) 2004, 2005 by Dominic Rath                              *
  *   Dominic.Rath@gmx.de                                                   *
  *                                                                         *
+ *   Copyright (C) 2007,2008 Ã˜yvind Harboe                                      *
+ *   oyvind.harboe@zylin.com                                               *
+ *                                                                         *
  *   This program is free software; you can redistribute it and/or modify  *
  *   it under the terms of the GNU General Public License as published by  *
  *   the Free Software Foundation; either version 2 of the License, or     *
@@ -47,11 +50,41 @@ static struct option long_options[] =
 
 int configuration_output_handler(struct command_context_s *context, const char* line)
 {
-       LOG_INFO_N(line);
+       LOG_USER_N(line);
 
        return ERROR_OK;
 }
 
+int add_default_dirs(void)
+{
+#ifdef _WIN32
+       /* Add the parent of the directory where openocd.exe resides to the
+        * config script search path.
+        * Directory layout: 
+        * bin\openocd.exe
+        * lib\openocd
+        * event\at91eb40a_reset.cfg
+        * target\at91eb40a.cfg
+        */
+       {
+               char strExePath [MAX_PATH];
+               GetModuleFileName (NULL, strExePath, MAX_PATH);
+               /* Either this code will *always* work or it will SEGFAULT giving
+                * excellent information on the culprit. 
+                */
+               *strrchr(strExePath, '\\')=0;
+               strcat(strExePath, "\\..");
+               add_script_search_dir(strExePath);
+       }
+#else
+       /* Add dir for openocd supplied scripts last so that user can over
+          ride those scripts if desired. */
+       add_script_search_dir(PKGDATADIR);
+       add_script_search_dir(PKGLIBDIR);
+#endif
+       return ERROR_OK;
+}
+
 int parse_cmdline_args(struct command_context_s *cmd_ctx, int argc, char *argv[])
 {
        int c;
@@ -80,15 +113,7 @@ int parse_cmdline_args(struct command_context_s *cmd_ctx, int argc, char *argv[]
                                break;
                        case 'f':       /* --file | -f */
                        {
-                               char *t=strrchr(optarg, '.');
-                               if (strcmp(t, ".tcl")==0)
-                               {
-                                       /* Files ending in .tcl are executed as Tcl files */
-                                       snprintf(command_buffer, 128, "source [find {%s}]", optarg);
-                               } else
-                               {
-                                       snprintf(command_buffer, 128, "script %s", optarg);
-                               }
+                               snprintf(command_buffer, 128, "script {%s}", optarg);
                                add_config_command(command_buffer);
                                break;
                        }
@@ -138,31 +163,6 @@ int parse_cmdline_args(struct command_context_s *cmd_ctx, int argc, char *argv[]
                exit(-1);
        }       
 
-#ifdef _WIN32
-       /* Add the parent of the directory where openocd.exe resides to the
-        * config script search path.
-        * Directory layout: 
-        * bin\openocd.exe
-        * lib\openocd
-        * event\at91eb40a_reset.cfg
-        * target\at91eb40a.cfg
-        */
-       {
-               char strExePath [MAX_PATH];
-               GetModuleFileName (NULL, strExePath, MAX_PATH);
-               /* Either this code will *always* work or it will SEGFAULT giving
-                * excellent information on the culprit. 
-                */
-               *strrchr(strExePath, '\\')=0;
-               strcat(strExePath, "\\..");
-               add_script_search_dir(strExePath);
-       }
-#else
-       /* Add dir for openocd supplied scripts last so that user can over
-          ride those scripts if desired. */
-       add_script_search_dir(PKGDATADIR);
-       add_script_search_dir(PKGLIBDIR);
-#endif
 
        return ERROR_OK;
 }