From mboxrd@z Thu Jan 1 00:00:00 1970 From: Keith Seitz To: Insight Maling List Subject: [PATCH/hack] Running from build dir again Date: Wed, 19 Sep 2001 11:09:00 -0000 Message-id: X-SW-Source: 2001-q3/msg00264.html Hi, This gross hack allows insight to run from the build directory again. Recent Tcl/Tk churn has broken this convenience, and, well, as hacky and ugly as this is, it fixes it. Keith ChangeLog 2001-09-19 Keith Seitz * library/main.tcl: Append iwidgets library path, if needed. * generic/gdbtk.c (gdbtk_init): Add TCLLIBPATH to iwidgets package index. Define IWIDGETS_LIBRARY in interpreter so that we can add this path to the auto_path at the right time later. Patch Index: generic/gdbtk.c =================================================================== RCS file: /cvs/src/src/gdb/gdbtk/generic/gdbtk.c,v retrieving revision 1.21 diff -u -p -r1.21 gdbtk.c --- generic/gdbtk.c 2001/09/10 19:21:47 1.21 +++ generic/gdbtk.c 2001/09/19 17:56:40 @@ -434,7 +434,18 @@ gdbtk_init (argv0) \ if {![info exists env(GDBTK_LIBRARY)]} {\n\ set env(GDBTK_LIBRARY) [file join $srcDir gdb gdbtk library]\n\ - }\n"; + }\n\ +\ + # Append the directory with the itcl pkg index\n\ + if {[info exists env(TCLLIBPATH)]} {\n\ + append env(TCLLIBPATH) :[file joing $srcDir itcl]\n\ + } else {\n\ + set env(TCLLIBPATH) [file join $srcDir itcl]\n\ + }\n\ +\ + # We also need to append the iwidgets library path.\n\ + # Unfortunately, there is no IWIDGETS_LIBRARY.\n\ + set IWIDGETS_LIBRARY [file join $srcDir itcl iwidgets3.0.0 generic]\n"; Tcl_Obj *commandObj; Index: library/main.tcl =================================================================== RCS file: /cvs/src/src/gdb/gdbtk/library/main.tcl,v retrieving revision 1.4 diff -u -p -r1.4 main.tcl --- library/main.tcl 2001/09/10 19:21:47 1.4 +++ library/main.tcl 2001/09/19 17:56:56 @@ -58,6 +58,11 @@ namespace import itcl::* namespace import debug::* +# Setup iwidgets path, if needed +if {[info exists IWIDGETS_LIBRARY]} { + lappend auto_path $IWIDGETS_LIBRARY +} + if {[catch {package require Iwidgets 3.0} errMsg]} { set msg "Could not find the Iwidgets libraries.\n\nGot nameofexec: [info nameofexecutable]\nError(s) were: \n$errMsg"