home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2011 June / maximum-cd-2011-06.iso / DiscContents / LibO_3.3.1_Win_x86_install_multi.exe / libreoffice1.cab / FixTk.py < prev    next >
Encoding:
Text File  |  2011-02-15  |  1.6 KB  |  42 lines

  1. import sys, os
  2.  
  3. # Delay import _tkinter until we have set TCL_LIBRARY,
  4. # so that Tcl_FindExecutable has a chance to locate its
  5. # encoding directory.
  6.  
  7. # Unfortunately, we cannot know the TCL_LIBRARY directory
  8. # if we don't know the tcl version, which we cannot find out
  9. # without import Tcl. Fortunately, Tcl will itself look in
  10. # <TCL_LIBRARY>\..\tcl<TCL_VERSION>, so anything close to
  11. # the real Tcl library will do.
  12.  
  13. prefix = os.path.join(sys.prefix,"tcl")
  14. if not os.path.exists(prefix):
  15.     # devdir/../tcltk/lib
  16.     prefix = os.path.join(sys.prefix, os.path.pardir, "tcltk", "lib")
  17.     prefix = os.path.abspath(prefix)
  18. # if this does not exist, no further search is needed
  19. if os.path.exists(prefix):
  20.     if not os.environ.has_key("TCL_LIBRARY"):
  21.         for name in os.listdir(prefix):
  22.             if name.startswith("tcl"):
  23.                 tcldir = os.path.join(prefix,name)
  24.                 if os.path.isdir(tcldir):
  25.                     os.environ["TCL_LIBRARY"] = tcldir
  26.     # Compute TK_LIBRARY, knowing that it has the same version
  27.     # as Tcl
  28.     import _tkinter
  29.     ver = str(_tkinter.TCL_VERSION)
  30.     if not os.environ.has_key("TK_LIBRARY"):
  31.         v = os.path.join(prefix, 'tk'+ver)
  32.         if os.path.exists(os.path.join(v, "tclIndex")):
  33.             os.environ['TK_LIBRARY'] = v
  34.     # We don't know the Tix version, so we must search the entire
  35.     # directory
  36.     if not os.environ.has_key("TIX_LIBRARY"):
  37.         for name in os.listdir(prefix):
  38.             if name.startswith("tix"):
  39.                 tixdir = os.path.join(prefix,name)
  40.                 if os.path.isdir(tixdir):
  41.                     os.environ["TIX_LIBRARY"] = tixdir
  42.