setup.py
changeset 1284 59d07a6bd513
parent 1283 f5faab34f32e
child 1294 372971e1c40d
child 1308 2073e5a71008
equal deleted inserted replaced
1283:f5faab34f32e 1284:59d07a6bd513
    34             # Sets the 'includes' option with the list of needed modules
    34             # Sets the 'includes' option with the list of needed modules
    35             if not self.includes:
    35             if not self.includes:
    36                 self.includes = []
    36                 self.includes = []
    37             self.includes += mercurial.packagescan.getmodules(self.build_lib,'mercurial')
    37             self.includes += mercurial.packagescan.getmodules(self.build_lib,'mercurial')
    38             build_exe.finalize_options(self)
    38             build_exe.finalize_options(self)
    39 except ImportError: pass
    39 except ImportError:
       
    40     py2exe_for_demandload = None
    40 
    41 
    41 
    42 
    42 # specify version string, otherwise 'hg identify' will be used:
    43 # specify version string, otherwise 'hg identify' will be used:
    43 version = ''
    44 version = ''
    44 
    45 
    48                                    ('install_lib', 'install_dir'))
    49                                    ('install_lib', 'install_dir'))
    49         install_data.finalize_options(self)
    50         install_data.finalize_options(self)
    50 
    51 
    51 try:
    52 try:
    52     mercurial.version.remember_version(version)
    53     mercurial.version.remember_version(version)
       
    54     cmdclass = {'install_data': install_package_data}
       
    55     if py2exe_for_demandload is not None:
       
    56         cmdclass['py2exe'] = py2exe_for_demandload
    53     setup(name='mercurial',
    57     setup(name='mercurial',
    54           version=mercurial.version.get_version(),
    58           version=mercurial.version.get_version(),
    55           author='Matt Mackall',
    59           author='Matt Mackall',
    56           author_email='mpm@selenic.com',
    60           author_email='mpm@selenic.com',
    57           url='http://selenic.com/mercurial',
    61           url='http://selenic.com/mercurial',
    62                        Extension('mercurial.bdiff', ['mercurial/bdiff.c'])],
    66                        Extension('mercurial.bdiff', ['mercurial/bdiff.c'])],
    63           data_files=[('mercurial/templates',
    67           data_files=[('mercurial/templates',
    64                        ['templates/map'] +
    68                        ['templates/map'] +
    65                        glob.glob('templates/map-*') +
    69                        glob.glob('templates/map-*') +
    66                        glob.glob('templates/*.tmpl'))],
    70                        glob.glob('templates/*.tmpl'))],
    67           cmdclass = { 'install_data' : install_package_data,
    71           cmdclass=cmdclass,
    68                        'py2exe' : py2exe_for_demandload},
       
    69           scripts=['hg', 'hgmerge'],
    72           scripts=['hg', 'hgmerge'],
    70           console = ['hg'])
    73           console = ['hg'])
    71 finally:
    74 finally:
    72     mercurial.version.forget_version()
    75     mercurial.version.forget_version()