summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeil Jerram <neil@ossau.uklinux.net>2009-06-25 21:40:32 +0100
committerNeil Jerram <neil@ossau.uklinux.net>2009-06-25 21:40:32 +0100
commit8510e39278161d3cbf8ec4ba87b123fe28763ed4 (patch)
treea9e6d1f4139c23a413b6785f93d1c4ea2cec6481
parent0367cb9d56601b627b361191d0a6e7e3892f1de7 (diff)
downloadguile-8510e39278161d3cbf8ec4ba87b123fe28763ed4.tar.gz
Remove GDB_INTERFACE stuff from guile's main program
The main motivation for this is wanting a successful MinGW build, which is currently failing with: guile-guile.o: In function `inner_main': /home/neil/SW/Guile/ovnight/libguile/guile.c:55: undefined reference to `__imp__gdb_result' /home/neil/SW/Guile/ovnight/libguile/guile.c:55: undefined reference to `__imp__gdb_output' /home/neil/SW/Guile/ovnight/libguile/guile.c:55: undefined reference to `__imp__gdb_output_length' The detailed problem here is to do with how those variables are declared as exported from the libguile DLL and imported by the guile.c main program. But in fact we don't need to solve that problem because the GDB interface is an idea that never actually happened. So here we just remove the offending variable references from guile.c. For the record, Guile contains two kinds of GDB support, one of which is real (and works, last time I tried it), and the other mythical. The first kind is that libguile includes the utility functions gdb_print, gdb_eval, etc., and the variable gdb_output. These have no purpose except for developers to use from GDB when debugging something. For example, if you have a SCM x and want to know what it is, you can do: (gdb) call gdb_print(x) (gdb) p gdb_output The second kind is that those utility functions are somehow declared to GDB, and then GDB itself uses/calls them in some useful way. This was an interesting idea, but (AFAICT) never actually happened. I think it's worth leaving gdb_interface.h in the repository and the distribution, in case this idea is properly resurrected in the future. * libguile/guile.c (top level): Remove GDB_INTERFACE declaration. (inner_main): Remove GDB_INTERFACE_INIT call.
-rw-r--r--libguile/guile.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/libguile/guile.c b/libguile/guile.c
index c8341c24f..3e01b57d2 100644
--- a/libguile/guile.c
+++ b/libguile/guile.c
@@ -40,11 +40,6 @@
#include <winsock2.h>
#endif
-/* Debugger interface (don't change the order of the following lines) */
-#define GDB_TYPE SCM
-#include <libguile/gdb_interface.h>
-GDB_INTERFACE;
-
static void
inner_main (void *closure SCM_UNUSED, int argc, char **argv)
{
@@ -52,7 +47,6 @@ inner_main (void *closure SCM_UNUSED, int argc, char **argv)
/* This is necessary to startup the Winsock API under Win32. */
WSADATA WSAData;
WSAStartup (0x0202, &WSAData);
- GDB_INTERFACE_INIT;
#endif /* __MINGW32__ */
/* module initializations would go here */