home *** CD-ROM | disk | FTP | other *** search
/ Maximum CD 2010 November / maximum-cd-2010-11.iso / DiscContents / calibre-0.7.13.msi / file_2777 (.txt) < prev    next >
Encoding:
Python Compiled Bytecode  |  2010-08-06  |  3.7 KB  |  128 lines

  1. # Source Generated with Decompyle++
  2. # File: in.pyc (Python 2.6)
  3.  
  4. from __future__ import with_statement
  5. __license__ = 'GPL v3'
  6. __copyright__ = '2009, Kovid Goyal <kovid@kovidgoyal.net>'
  7. __docformat__ = 'restructuredtext en'
  8. import sys
  9. import os
  10. import linecache
  11.  
  12. def abs__file__():
  13.     for m in sys.modules.values():
  14.         if hasattr(m, '__loader__'):
  15.             continue
  16.         
  17.         
  18.         try:
  19.             m.__file__ = os.path.abspath(m.__file__)
  20.         continue
  21.         except AttributeError:
  22.             continue
  23.             continue
  24.         
  25.  
  26.     
  27.  
  28.  
  29. def aliasmbcs():
  30.     import locale
  31.     import codecs
  32.     enc = locale.getdefaultlocale()[1]
  33.     if enc.startswith('cp'):
  34.         
  35.         try:
  36.             codecs.lookup(enc)
  37.         except LookupError:
  38.             import encodings
  39.             encodings._cache[enc] = encodings._unknown
  40.             encodings.aliases.aliases[enc] = 'mbcs'
  41.         except:
  42.             None<EXCEPTION MATCH>LookupError
  43.         
  44.  
  45.     None<EXCEPTION MATCH>LookupError
  46.  
  47.  
  48. def add_calibre_vars():
  49.     sys.resources_location = os.path.join(sys.app_dir, 'resources')
  50.     sys.extensions_location = os.path.join(sys.app_dir, 'plugins')
  51.     dv = os.environ.get('CALIBRE_DEVELOP_FROM', None)
  52.     if dv and os.path.exists(dv):
  53.         sys.path.insert(0, os.path.abspath(dv))
  54.     
  55.  
  56.  
  57. def makepath(*paths):
  58.     dir = os.path.abspath(os.path.join(*paths))
  59.     return (dir, os.path.normcase(dir))
  60.  
  61.  
  62. def addpackage(sitedir, name):
  63.     fullname = os.path.join(sitedir, name)
  64.     
  65.     try:
  66.         f = open(fullname, 'rU')
  67.     except IOError:
  68.         return None
  69.  
  70.     f.__enter__()
  71.     
  72.     try:
  73.         for line in f:
  74.             if line.startswith(('import ', 'import\t')):
  75.                 exec line
  76.                 continue
  77.             
  78.             line = line.rstrip()
  79.             (dir, dircase) = makepath(sitedir, line)
  80.             if os.path.exists(dir):
  81.                 sys.path.append(dir)
  82.                 continue
  83.     finally:
  84.         pass
  85.  
  86.  
  87.  
  88. def addsitedir(sitedir):
  89.     (sitedir, sitedircase) = makepath(sitedir)
  90.     
  91.     try:
  92.         names = os.listdir(sitedir)
  93.     except os.error:
  94.         return None
  95.  
  96.     dotpth = os.extsep + 'pth'
  97.     names = _[1]
  98.     for name in sorted(names):
  99.         addpackage(sitedir, name)
  100.     
  101.  
  102.  
  103. def run_entry_point():
  104.     bname = sys.calibre_basename
  105.     mod = sys.calibre_module
  106.     func = sys.calibre_function
  107.     sys.argv[0] = bname + '.exe'
  108.     pmod = __import__(mod, fromlist = [
  109.         1], level = 0)
  110.     return getattr(pmod, func)()
  111.  
  112.  
  113. def main():
  114.     sys.frozen = 'windows_exe'
  115.     sys.setdefaultencoding('utf-8')
  116.     aliasmbcs()
  117.     
  118.     def fake_getline(filename, lineno, module_globals = None):
  119.         return ''
  120.  
  121.     linecache.orig_getline = linecache.getline
  122.     linecache.getline = fake_getline
  123.     abs__file__()
  124.     addsitedir(os.path.join(sys.app_dir, 'Lib', 'site-packages'))
  125.     add_calibre_vars()
  126.     return run_entry_point()
  127.  
  128.