setup.py
author Patrick Mezard <pmezard@gmail.com>
Mon, 15 Jun 2009 00:03:26 +0200
branchstable
changeset 577 0cdbdf79d5e9
parent 238 e4a389eca1b9
permissions -rw-r--r--
Add patch.eol to ignore EOLs when patching (issue1019) The intent is to fix many issues involving patching when win32ext is enabled. With win32ext, the working directory and repository files EOLs are not the same which means that patches made on a non-win32ext host do not apply cleanly because of EOLs discrepancies. A theorically correct approach would be transform either the patched file or the patch content with the encoding/decoding filters used by win32ext. This solution is tricky to implement and invasive, instead we prefer to address the win32ext case, by offering a way to ignore input EOLs when patching and rewriting them when saving the patched result. [ original upstream message ]
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
124
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     1
#!/usr/bin/env python
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     2
# $Id$
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     3
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     4
from distutils.core import setup
238
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
     5
import os, time
124
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     6
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     7
# specify version, Mercurial version otherwise
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     8
version = ''
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
     9
238
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    10
unknown_version = 'unknown'
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    11
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    12
def getversion():
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    13
    global version, unknown_version
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    14
    if not version and os.path.isdir('.hg'):
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    15
        p = os.popen('hg --quiet identify 2> %s' % os.devnull)
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    16
        ident = p.read()[:-1]
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    17
        if not p.close() and ident:
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    18
            if ident[-1] != '+':
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    19
                version = ident
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    20
            else:
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    21
                version = ident[:-1]
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    22
                version += time.strftime('+%Y%m%d')
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    23
    return version or unknown_version
124
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    24
99dc49c5bcfb Setup standalone module install, version tracking
Christian Ebert <blacktrash@gmx.net>
parents:
diff changeset
    25
setup(name='hgkw',
238
e4a389eca1b9 Move version code into setup.py
Christian Ebert <blacktrash@gmx.net>
parents: 219
diff changeset
    26
      version=getversion(),
219
405a9c1dc7bf setup: add url, reformat
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    27
      description='Mercurial keyword extension (standalone)',
405a9c1dc7bf setup: add url, reformat
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    28
      author='Christian Ebert',
405a9c1dc7bf setup: add url, reformat
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    29
      author_email='blacktrash@gmx.net',
405a9c1dc7bf setup: add url, reformat
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    30
      url='http://www.blacktrash.org/hg/hgkeyword/',
405a9c1dc7bf setup: add url, reformat
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    31
      license='GNU GPL',
405a9c1dc7bf setup: add url, reformat
Christian Ebert <blacktrash@gmx.net>
parents: 124
diff changeset
    32
      packages=['hgkw'])