annotate setup.py @ 4913:cac7e750422f stable

debian: also build with python3 We build with Python 3 along with Python 2. The binary package will contain the extension for both python version. This is to ease transition until the mercurial package in Debian uses Python 3. The documentation is still built with Python 2 because it needs Mercurial (which is currently Python 2).
author Denis Laxalde <denis.laxalde@logilab.fr>
date Fri, 11 Oct 2019 16:53:52 +0200
parents 155e986045eb
children 00bcca246403
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1242
cf846d47bb7e setup: allow including inhibit in the build
Durham Goode <durham@fb.com>
parents: 1149
diff changeset
1 import os
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
2 from distutils.core import setup
1149
a206ee74f129 evolve: add various version info to save time on troubleshooting
anatoly techtonik <techtonik@gmail.com>
parents: 1138
diff changeset
3 from os.path import dirname, join
a206ee74f129 evolve: add various version info to save time on troubleshooting
anatoly techtonik <techtonik@gmail.com>
parents: 1138
diff changeset
4
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
5 META_PATH = 'hgext3rd/evolve/metadata.py'
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
6
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
7 def get_metadata():
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
8 meta = {}
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
9 fullpath = join(dirname(__file__), META_PATH)
4792
9f2e480ad786 py3: make setup.py py3 compatible
Ludovic Chabant <ludovic@chabant.com>
parents: 3424
diff changeset
10 with open(fullpath, 'r') as fp:
9f2e480ad786 py3: make setup.py py3 compatible
Ludovic Chabant <ludovic@chabant.com>
parents: 3424
diff changeset
11 exec(fp.read(), meta)
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
12 return meta
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
13
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
14 def get_version():
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1808 2016
diff changeset
15 '''Read version info from a file without importing it'''
4900
155e986045eb py3: fix setup.py --version
Denis Laxalde <denis.laxalde@logilab.fr>
parents: 4878
diff changeset
16 return get_metadata()['__version__'].decode()
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
17
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
18 def min_hg_version():
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
19 '''Read version info from a file without importing it'''
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
20 return get_metadata()['minimumhgversion']
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1808 2016
diff changeset
21
1808
202ac6c94b7f hgext3rd: move 'simple4server' as 'evolve.serveronly'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1807
diff changeset
22 py_modules = [
3206
3ccde4699cf0 topic: introduce a minimal extensions to enable topic on the server
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 2069
diff changeset
23 'hgext3rd.serverminitopic',
1808
202ac6c94b7f hgext3rd: move 'simple4server' as 'evolve.serveronly'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1807
diff changeset
24 ]
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1642
diff changeset
25 py_packages = [
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1642
diff changeset
26 'hgext3rd',
2052
05170e635e26 setup.py: include all evolve submodule
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2049
diff changeset
27 'hgext3rd.evolve',
3424
efac9aad0963 packaging: properly install the evolve.thirdparty module
Pierre-Yves David <pierre-yves.david@octobus.net>
parents: 3206
diff changeset
28 'hgext3rd.evolve.thirdparty',
2020
143c8e4dc22d topic: merge the topic extension in the evolve repository
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1808 2016
diff changeset
29 'hgext3rd.topic',
1242
cf846d47bb7e setup: allow including inhibit in the build
Durham Goode <durham@fb.com>
parents: 1149
diff changeset
30 ]
4876
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
31 py_packagedir = {
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
32 'hgext3rd': join(dirname(__file__), 'hgext3rd')
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
33 }
1242
cf846d47bb7e setup: allow including inhibit in the build
Durham Goode <durham@fb.com>
parents: 1149
diff changeset
34
4817
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
35 py_versions = '>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <4'
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
36
1452
1bcbd14cf159 merge back with 3.3 compat branch
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1451
diff changeset
37 if os.environ.get('INCLUDE_INHIBIT'):
1807
a53efee7d8b0 hgext3rd: move 'directaccess' and 'inhibit' in 'evolve.hack'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1806
diff changeset
38 py_modules.append('hgext3rd.evolve.hack.inhibit')
a53efee7d8b0 hgext3rd: move 'directaccess' and 'inhibit' in 'evolve.hack'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1806
diff changeset
39 py_modules.append('hgext3rd.evolve.hack.directaccess')
1452
1bcbd14cf159 merge back with 3.3 compat branch
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 1451
diff changeset
40
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
41 setup(
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
42 name='hg-evolve',
2049
b81d3775006b evolve: move extension metadata in their own module
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2036
diff changeset
43 version=get_version(),
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
44 author='Pierre-Yves David',
2069
7d15775d8585 setup: add author_email
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 2067
diff changeset
45 author_email='pierre-yves.david@ens-lyon.org',
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
46 maintainer='Pierre-Yves David',
916
48e68d3b0144 fix maintainer email
Pierre-Yves David <pierre-yves.david@fb.com>
parents: 859
diff changeset
47 maintainer_email='pierre-yves.david@ens-lyon.org',
1642
fb5e479080d8 project: change evolution domain to mercurial-scm
timeless@gmail.com
parents: 1617
diff changeset
48 url='https://www.mercurial-scm.org/doc/evolution/',
496
d3d9df795b4d [pkg] Add a setup.py
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents:
diff changeset
49 description='Flexible evolution of Mercurial history.',
4876
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
50 long_description=open(join(dirname(__file__), 'README')).read(),
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
51 keywords='hg mercurial',
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
52 license='GPLv2+',
1806
9f42f819267b evolve: move the extensions to 'hgext3rd'
Pierre-Yves David <pierre-yves.david@ens-lyon.org>
parents: 1642
diff changeset
53 py_modules=py_modules,
4817
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
54 packages=py_packages,
4876
1a47cc2728ff setup: make runnable from other dirs
Ian Moody <moz-ian@perix.co.uk>
parents: 4817
diff changeset
55 package_dir=py_packagedir,
4817
a9b4c4849338 python3: add supported python versions to setup.py
Raphaël Gomès <rgomes@octobus.net>
parents: 4792
diff changeset
56 python_requires=py_versions
1839
1bc5e62fc0c7 Initial dumb version of topics.
Augie Fackler <augie@google.com>
parents:
diff changeset
57 )