Commit 87213900 authored by tarek's avatar tarek

Now cli.exe and gui.exe are generated at build time - win_script_wrapper.txt...

Now cli.exe and gui.exe are generated at build time - win_script_wrapper.txt covers this case - refs #65

--HG--
branch : distribute
extra : rebase_source : 940bcb596a59153bc62056328b75cb670fa44273
parent f35ccfd8
...@@ -6,6 +6,9 @@ CHANGES ...@@ -6,6 +6,9 @@ CHANGES
0.6.5 0.6.5
----- -----
* Issue 65: cli.exe and gui.exe are not generated at build time,
depending on the platform in use.
* Issue 67: Fixed doc typo (PEP 381/382) * Issue 67: Fixed doc typo (PEP 381/382)
* Distribute no longer shadows setuptools if we require a 0.7-series * Distribute no longer shadows setuptools if we require a 0.7-series
......
...@@ -32,7 +32,7 @@ depends.txt = setuptools.command.egg_info:warn_depends_obsolete ...@@ -32,7 +32,7 @@ depends.txt = setuptools.command.egg_info:warn_depends_obsolete
[console_scripts] [console_scripts]
easy_install = setuptools.command.easy_install:main easy_install = setuptools.command.easy_install:main
easy_install-2.5 = setuptools.command.easy_install:main easy_install-2.6 = setuptools.command.easy_install:main
[setuptools.file_finders] [setuptools.file_finders]
svn_cvs = setuptools.command.sdist:_default_revctrl svn_cvs = setuptools.command.sdist:_default_revctrl
......
#!/usr/bin/env python #!/usr/bin/env python
"""Distutils setup file, used to install or test 'setuptools'""" """Distutils setup file, used to install or test 'setuptools'"""
import sys
import sys, os import os
import platform
src_root = None src_root = None
if sys.version_info >= (3,): if sys.version_info >= (3,):
...@@ -39,10 +40,36 @@ SETUP_COMMANDS = d['__all__'] ...@@ -39,10 +40,36 @@ SETUP_COMMANDS = d['__all__']
VERSION = "0.6.5" VERSION = "0.6.5"
from setuptools import setup, find_packages from setuptools import setup, find_packages
import os from setuptools.command.build_py import build_py as _build_py
import sys
scripts = [] scripts = []
# specific command that is used to generate windows .exe files
class build_py(_build_py):
def build_package_data(self):
"""Copy data files into build directory"""
lastdir = None
is_64 = platform.architecture()[0] == '64bit'
for package, src_dir, build_dir, filenames in self.data_files:
for filename in filenames:
target = os.path.join(build_dir, filename)
self.mkpath(os.path.dirname(target))
srcfile = os.path.join(src_dir, filename)
outf, copied = self.copy_file(srcfile, target)
# creating cli.exe and gui.exe
if filename in ('gui-32.exe', 'cli-32.exe') and not is_64:
exe_target = os.path.join(build_dir, filename.replace('-32.exe', '.exe'))
self.copy_file(srcfile, exe_target)
if filename in ('gui-64.exe', 'cli-64.exe') and is_64:
exe_target = os.path.join(build_dir, filename.replace('-64.exe', '.exe'))
self.copy_file(srcfile, exe_target)
srcfile = os.path.abspath(srcfile)
if copied and srcfile in self.distribution.convert_2to3_doctests:
self.__doctests_2to3.append(outf)
# if we are installing Distribute using "python setup.py install" # if we are installing Distribute using "python setup.py install"
# we need to get setuptools out of the way # we need to get setuptools out of the way
def _easy_install_marker(): def _easy_install_marker():
...@@ -149,6 +176,7 @@ dist = setup( ...@@ -149,6 +176,7 @@ dist = setup(
Topic :: System :: Systems Administration Topic :: System :: Systems Administration
Topic :: Utilities""".splitlines() if f.strip()], Topic :: Utilities""".splitlines() if f.strip()],
scripts = scripts, scripts = scripts,
cmdclass = {'build_py': build_py}
) )
if _being_installed(): if _being_installed():
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment