[GRASS-dev] debugging nviz with TclTk 8.5 aqua
Glynn Clements
glynn at gclements.plus.com
Sun Jul 27 13:27:41 EDT 2008
William Kyngesburye wrote:
> >> - add a tcltk aqua option, much like what we do for opengl. And it
> >> would have to be dependent on opengl=aqua.
> >>
> >> It would have to detect the active framework by looking in /Library/
> >> Frameworks first, then /System/Library/Frameworks. Or possibly accept
> >> a user path (reuse --with-tcltk-libs, or have a separate --with-
> >> tcltk-
> >> framework), which would set TCLTKLIBPATH = -F/user/path.
> >>
> >> The framework path (detected or user), would be used to set the
> >> include paths:
> >>
> >> -I$path/Tcl.framework/Headers -I$path/Tk.framework/Headers -I$path/
> >> Tk.framework/PrivateHeaders
> >>
> >> And verify that the needed tkMacOSXInt.h is in one of those.
> >>
> >> TCLTKLIBS will always be:
> >>
> >> TCLTKLIBS = -framework Tcl -framework Tk
> >
> > I have added a --with-tcltk-framework= switch. If used, it sets
> > TCLTKLIBPATH, TCLTKLIBS and TCLINCDIR as suggested above, and
> > --with-tcltk-{libs,includes}= are ignored.
> >
> > I can't confirm whether it works, only that it doesn't break anything
> > when not used.
>
> I just tried it. Needs a bit of work.
>
> It should accept yes (enable). This would use the default framework
> path, much like --with-tcltk or other options that don't add -L/usr/
> lib. So, --with-tcltk-framework would set:
>
> TCLINCDIR = -I/{found location}/Tcl.framework/Headers
> TKINCDIR = -I/{found location}/Tk.framework/Headers -I/{found
> location}/Tk.framework/PrivateHeaders
> TCLTKLIBPATH =
> TCLTKLIBS = -framework Tcl -framework Tk
>
> Of course, some extra detection logic is needed to check for the
> frameworks in /Library/Frameworks, then /System/Library/Frameworks.
configure doesn't autodetect paths, it only confirms that any paths
specified by the user work. If a path needs to be passed onto the
compiler or linker, the user has to supply it.
I take it that -framework is limited to the linker? I.e. the compiler
still needs explicit -I flags?
> If a path is used, then the -F flag is added to TCLTKLIBPATH.
>
>
> When I used a path with the option, the framework flags didn't get
> inserted into platform.make. TCLTKLIBS is empty.
Oops; trying to use "make" sytnax instead of shell syntax:
> Also, the framework option should be rejected if opengl is not aqua.
It's still meaningful if OpenGL is disabled.
--
Glynn Clements <glynn at gclements.plus.com>
More information about the grass-dev
mailing list