diff options
author | Martin Grabmüller <mgrabmue@cs.tu-berlin.de> | 2001-06-26 17:53:09 +0000 |
---|---|---|
committer | Martin Grabmüller <mgrabmue@cs.tu-berlin.de> | 2001-06-26 17:53:09 +0000 |
commit | 82893676f43d32d217d264ad5bef50f0952b6460 (patch) | |
tree | 5aa0b8c88d64bd0e310749a2f049ed2b4d985401 /libguile/gdb_interface.h | |
parent | dd0e04edd65cdcb71517f1f079676cb04d3bafc4 (diff) | |
download | guile-82893676f43d32d217d264ad5bef50f0952b6460.tar.gz |
Make compilation under Windows easier.
Diffstat (limited to 'libguile/gdb_interface.h')
-rw-r--r-- | libguile/gdb_interface.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/libguile/gdb_interface.h b/libguile/gdb_interface.h index ec1bbe43d..fc44bc815 100644 --- a/libguile/gdb_interface.h +++ b/libguile/gdb_interface.h @@ -58,6 +58,7 @@ Mikael Djurfeldt, SANS/NADA KTH, 10044 STOCKHOLM, SWEDEN */ interface in your main program. This is necessary if the interface is defined in a library, such as Guile. */ +#ifndef __MINGW32__ #define GDB_INTERFACE \ void *gdb_interface[] = { \ &gdb_options, \ @@ -71,6 +72,27 @@ void *gdb_interface[] = { \ (void *) gdb_print, \ (void *) gdb_binding \ } +#else /* __MINGW32__ */ +/* Because the following functions are imported from a DLL (some kind of + shared library) these are NO static initializers. That is why you need to + define them and assign the functions and data items at run time. */ +#define GDB_INTERFACE \ +void *gdb_interface[] = \ + { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL }; +#define GDB_INTERFACE_INIT \ + do { \ + gdb_interface[0] = &gdb_options; \ + gdb_interface[1] = &gdb_language; \ + gdb_interface[2] = &gdb_result; \ + gdb_interface[3] = &gdb_output; \ + gdb_interface[4] = &gdb_output_length; \ + gdb_interface[5] = (void *) gdb_maybe_valid_type_p; \ + gdb_interface[6] = (void *) gdb_read; \ + gdb_interface[7] = (void *) gdb_eval; \ + gdb_interface[8] = (void *) gdb_print; \ + gdb_interface[9] = (void *) gdb_binding; \ + } while (0); +#endif /* __MINGW32__ */ /* GDB_OPTIONS is a set of flags informing gdb what features are present in the interface. Currently only one option is supported: */ |