Added HostOS variable
git-svn-id: svn://svn.berlios.de/openocd/trunk@1400 b42882b7-edfa-0310-969c-e2dbd0fdcd60__archive__
parent
0f3c9f8f06
commit
7a731eb637
|
@ -3063,9 +3063,10 @@ To verify any flash programming the GDB command @option{compare-sections}
|
|||
can be used.
|
||||
|
||||
@node TCL scripting API
|
||||
@chapter TCL scripting API
|
||||
@chapter TCL scripts
|
||||
@cindex TCL scripting API
|
||||
API rules
|
||||
@cindex TCL scripts
|
||||
@section API Rules
|
||||
|
||||
The commands are stateless. E.g. the telnet command line has a concept
|
||||
of currently active target, the Tcl API proc's take this sort of state
|
||||
|
@ -3102,7 +3103,11 @@ Thus, to get the names of the associative array is easy:
|
|||
Lists returned must be relatively small. Otherwise a range
|
||||
should be passed in to the proc in question.
|
||||
|
||||
Low level commands are prefixed with "openocd_", e.g. openocd_flash_banks
|
||||
@section Internal Low Level Commands
|
||||
|
||||
By Low level, the intent is a human would not directly use these commands.
|
||||
|
||||
Low level commands are (should be) prefixed with "openocd_", e.g. openocd_flash_banks
|
||||
is the low level API upon which "flash banks" is implemented.
|
||||
|
||||
@itemize @bullet
|
||||
|
@ -3121,6 +3126,24 @@ OpenOCD commands can consist of two words, e.g. "flash banks". The
|
|||
startup.tcl "unknown" proc will translate this into a tcl proc
|
||||
called "flash_banks".
|
||||
|
||||
@section OpenOCD specific Global Variables
|
||||
|
||||
@subsection HostOS
|
||||
|
||||
Real TCL has ::tcl_platform(), and platform::identify, and many other
|
||||
variables. JimTCL, as implimented in OpenOCD creates $HostOS which
|
||||
holds one of the following values.
|
||||
|
||||
@itemize bullet
|
||||
@item @b{winxx} Built using Microsoft Visual Studio
|
||||
@item @b{linux} Linux is the underlying operating sytem
|
||||
@item @b{darwin} Darwin (mac-os) is the underlying operating sytem.
|
||||
@item @b{cygwin} Running under Cygwin
|
||||
@item @b{mingw32} Running under MingW32
|
||||
@item @b{other} Unknown, none of the above.
|
||||
@end itemize
|
||||
|
||||
Note: 'winxx' was choosen because today (March-2009) no distinction is made between Win32 and Win64.
|
||||
|
||||
@node Upgrading
|
||||
@chapter Deprecated/Removed Commands
|
||||
|
|
|
@ -672,6 +672,7 @@ command_context_t* command_init()
|
|||
{
|
||||
command_context_t* context = malloc(sizeof(command_context_t));
|
||||
extern const char startup_tcl[];
|
||||
const char *HostOs;
|
||||
|
||||
context->mode = COMMAND_EXEC;
|
||||
context->commands = NULL;
|
||||
|
@ -687,6 +688,28 @@ command_context_t* command_init()
|
|||
Jim_RegisterCoreCommands(interp);
|
||||
#endif
|
||||
|
||||
#if defined( _MSC_VER )
|
||||
/* WinXX - is generic, the forward
|
||||
* looking problem is this:
|
||||
*
|
||||
* "win32" or "win64"
|
||||
*
|
||||
* "winxx" is generic.
|
||||
*/
|
||||
HostOs = "winxx";
|
||||
#elif defined( __LINUX__)
|
||||
HostOs = "linux";
|
||||
#elif defined( __DARWIN__ )
|
||||
HostOs = "darwin";
|
||||
#elif defined( __CYGWIN__ )
|
||||
HostOs = "cygwin";
|
||||
#elif defined( __MINGW32__ )
|
||||
HostOs = "mingw32";
|
||||
#else
|
||||
HostOs = "other";
|
||||
#endif
|
||||
Jim_SetGlobalVariableStr( interp, "ocd_HOSTOS", Jim_NewStringObj( interp, HostOs , strlen(HostOs)) );
|
||||
|
||||
Jim_CreateCommand(interp, "ocd_find", jim_find, NULL, NULL);
|
||||
Jim_CreateCommand(interp, "echo", jim_echo, NULL, NULL);
|
||||
Jim_CreateCommand(interp, "capture", jim_capture, NULL, NULL);
|
||||
|
|
Loading…
Reference in New Issue