[Patch] Fix console link error for hyper.exe
Mo DeJong
supermo@bayarea.net
Sat Feb 23 17:27:00 GMT 2002
Here is a patch that fixes the linker error when building SN under Windows.
There is a new API in Tk 8.3 that removes the need for this console hack,
so we can simply use that.
Note that I split out the ChangeLog entry for the nast rerun of automake
that is required. The patch does not include the generated Makefile.in files.
cheers
Mo
2002-02-23 Mo DeJong <supermo@bayarea.net>
* Makefile.in:
* bitmaps/Makefile.in:
* db/Makefile.in:
* demo/Makefile.in:
* doc/Makefile.in:
* doc/html/Makefile.in:
* etc/Makefile.in:
* etc/sn_toolchains/Makefile.in:
* gui/Makefile.in:
* hyper/Makefile.in:
* install/Makefile.in:
* misc/Makefile.in:
* misc/libutils/Makefile.in:
* packages/Makefile.in:
* parsers/Makefile.in:
* parsers/assembly/Makefile.in:
* parsers/chill/Makefile.in:
* parsers/cobol/Makefile.in:
* parsers/common/Makefile.in:
* parsers/cpp/Makefile.in:
* parsers/cpp/cpplib/Makefile.in:
* parsers/fortran/Makefile.in:
* parsers/gcj/Makefile.in:
* parsers/java/Makefile.in:
* parsers/libjcreuse/Makefile.in:
* parsers/m4/Makefile.in:
* parsers/python/Makefile.in:
* parsers/sendmail/Makefile.in:
* parsers/tcl/Makefile.in:
* parsers/toolbox/Makefile.in:
* sdk/Makefile.in:
* sdk/api/Makefile.in:
* sdk/api/c/Makefile.in:
* sdk/api/c/database/Makefile.in:
* sdk/api/c/database/examples/Makefile.in:
* sdk/api/tcl/Makefile.in:
* sdk/api/tcl/database/Makefile.in:
* sdk/api/tcl/database/examples/Makefile.in:
* sdk/api/tcl/misc/Makefile.in:
* sdk/parsers/Makefile.in:
* sdk/parsers/examples/Makefile.in:
* sdk/parsers/examples/assembly/Makefile.in:
* sdk/parsers/examples/elf/Makefile.in:
* snavigator/Makefile.in:
* snavigator/unix/Makefile.in:
* snavigator/win/Makefile.in: Regenerate with automake.
2002-02-23 Mo DeJong <supermo@bayarea.net>
* configure.in: Don't set HYPER_CONSOLE.
* hyper/Makefile.am: Don't use HYPER_CONSOLE
when linking hyper.exe.
* hyper/win/winMain.c (WinMain, Tcl_AppInit):
Use public Tk_CreateConsoleWindow instead of
internal TkConsoleCreate and TkConsoleInit
functions. This removes the need to link
to the HYPER_CONSOLE object from tk which
should make it easier to build with an
already installed version of Tk.
Index: configure.in
===================================================================
RCS file: /cvs/sourcenav/src/snavigator/configure.in,v
retrieving revision 1.2
diff -u -r1.2 configure.in
--- configure.in 2002/02/01 21:04:12 1.2
+++ configure.in 2002/02/23 23:03:09
@@ -359,14 +359,11 @@
if test x$ac_win_build = xyes ; then
HYPER_MAIN='winMain.$(OBJEXT)'
- HYPER_CONSOLE='$(top_builddir)/../tk/win/tkConsole.$(OBJEXT)'
else
HYPER_MAIN=
- HYPER_CONSOLE=
fi
AC_SUBST(HYPER_MAIN)
-AC_SUBST(HYPER_CONSOLE)
tmp="`cd $srcdir/gui; pwd`"
if test x$ac_win_build = xyes ; then
Index: hyper/Makefile.am
===================================================================
RCS file: /cvs/sourcenav/src/snavigator/hyper/Makefile.am,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 Makefile.am
--- Makefile.am 2001/09/25 22:51:10 1.1.1.1
+++ Makefile.am 2002/02/23 23:03:09
@@ -59,15 +59,15 @@
hyper_LDFLAGS = $(WIN32LDAPP)
if MSVC
-hyper_LDADD = @HYPER_CONSOLE@ @HYPER_MAIN@ $(LibUtilsDir)/libutils.a \
+hyper_LDADD = @HYPER_MAIN@ $(LibUtilsDir)/libutils.a \
$(DBUtilsLibDir)/libdbutils.a $(DB_LIBDIR)/libdb.a \
$(top_builddir)/../libgui/src/libgui.a \
$(WIN32LIBS) \
$(ITCL_BUILD_LIB_SPEC) $(ITK_BUILD_LIB_SPEC) \
$(TIX_BUILD_LIB_SPEC) \
-$(TK_BUILD_LIB_SPEC) $(TCL_BUILD_LIB_SPEC) $(TCL_BUILD_STUB_LIB_SPEC)
+$(TK_BUILD_LIB_SPEC) $(TCL_BUILD_LIB_SPEC)
else
-hyper_LDADD = @HYPER_CONSOLE@ @HYPER_MAIN@ -L$(LibUtilsDir) -lutils \
+hyper_LDADD = @HYPER_MAIN@ -L$(LibUtilsDir) -lutils \
-L$(DBUtilsLibDir) -ldbutils -L$(DB_LIBDIR) -ldb \
-L$(top_builddir)/../libgui/src -lgui \
$(WIN32LIBS) \
Index: hyper/win/winMain.c
===================================================================
RCS file: /cvs/sourcenav/src/snavigator/hyper/win/winMain.c,v
retrieving revision 1.1.1.1
diff -u -r1.1.1.1 winMain.c
--- winMain.c 2001/09/25 22:51:10 1.1.1.1
+++ winMain.c 2002/02/23 23:03:10
@@ -53,14 +53,6 @@
#include "mxfuncs.h"
/*
- * The following declarations refer to internal Tk routines. These
- * interfaces are available for use, but are not supported.
- */
-
-EXTERN void TkConsoleCreate _ANSI_ARGS_((void));
-EXTERN int TkConsoleInit _ANSI_ARGS_((Tcl_Interp *interp));
-
-/*
* Forward declarations for procedures defined later in this file:
*/
@@ -194,15 +186,13 @@
/*
* Create the console channels and install them as the standard
- * channels. All I/O will be discarded until TkConsoleInit is
+ * channels. All I/O will be discarded until Tcl_CreateConsoleWindow is
* called to attach the console to a text widget.
*/
useWinConsole = TkpWinConsoleTest();
if ( useWinConsole ) {
TkpWinConsoleCreate();
- } else {
- TkConsoleCreate();
}
/*
@@ -414,7 +404,7 @@
if ((strcmp(Tcl_GetVar(interp, "tcl_interactive", TCL_GLOBAL_ONLY), "1")
== 0) || ( ! useWinConsole )) {
- if (TkConsoleInit(interp) == TCL_ERROR) {
+ if (Tk_CreateConsoleWindow(interp) == TCL_ERROR) {
goto error;
}
#ifdef WIN32
More information about the Sourcenav
mailing list