1
1
#! /usr/bin/env python
3
# This is an installation script for bzr. Run it with
4
# './setup.py install', or
5
# './setup.py --help' for more options
3
"""Installation script for bzr.
5
'./setup.py install', or
6
'./setup.py --help' for more options
10
# META INFORMATION FOR SETUP
12
META_INFO = {'name': 'bzr',
14
'author': 'Canonical Ltd',
15
'author_email': 'bazaar-ng@lists.ubuntu.com',
16
'url': 'http://www.bazaar-vcs.org/',
17
'description': 'Friendly distributed version control system',
18
'license': 'GNU GPL v2',
21
BZRLIB = {'packages': ['bzrlib',
24
'bzrlib.bundle.serializer',
29
'bzrlib.plugins.launchpad',
31
'bzrlib.store.revision',
32
'bzrlib.store.versioned',
34
'bzrlib.tests.blackbox',
35
'bzrlib.tests.branch_implementations',
36
'bzrlib.tests.bzrdir_implementations',
37
'bzrlib.tests.interrepository_implementations',
38
'bzrlib.tests.interversionedfile_implementations',
39
'bzrlib.tests.repository_implementations',
40
'bzrlib.tests.revisionstore_implementations',
41
'bzrlib.tests.workingtree_implementations',
43
'bzrlib.transport.http',
46
'bzrlib.util.configobj',
47
'bzrlib.util.effbot.org',
48
'bzrlib.util.elementtree',
7
54
# Reinvocation stolen from bzr, we need python2.4 by virtue of bzr_man
8
55
# including bzrlib.help
13
61
version_info = sys.version_info
76
124
import generate_docs
77
125
generate_docs.main(argv=["bzr", "man"])
79
128
########################
81
130
########################
85
author='Canonical Ltd',
86
author_email='bazaar-ng@lists.ubuntu.com',
87
url='http://bazaar-vcs.org/',
88
description='Friendly distributed version control system',
96
'bzrlib.plugins.launchpad',
98
'bzrlib.store.revision',
99
'bzrlib.store.versioned',
101
'bzrlib.tests.blackbox',
102
'bzrlib.tests.branch_implementations',
103
'bzrlib.tests.bzrdir_implementations',
104
'bzrlib.tests.interrepository_implementations',
105
'bzrlib.tests.interversionedfile_implementations',
106
'bzrlib.tests.repository_implementations',
107
'bzrlib.tests.revisionstore_implementations',
108
'bzrlib.tests.workingtree_implementations',
110
'bzrlib.transport.http',
113
'bzrlib.util.elementtree',
114
'bzrlib.util.effbot.org',
115
'bzrlib.util.configobj',
117
'bzrlib.bundle.serializer'
120
cmdclass={'install_scripts': my_install_scripts, 'build': bzr_build},
121
data_files=[('man/man1', ['bzr.1'])],
122
# todo: install the txt files from bzrlib.doc.api.
132
if not ('py2exe' in sys.argv):
134
ARGS = {'scripts': ['bzr'],
135
'data_files': [('man/man1', ['bzr.1'])],
136
# install the txt files from bzrlib.doc.api.
137
'package_data': {'bzrlib': ['doc/api/*.txt']},
140
# for python-based installer we don't need to use custom cmdclasses
141
if not ('bdist_wininst' in sys.argv):
142
ARGS['cmdclass'] = {'build': bzr_build,
143
'install_scripts': my_install_scripts,
146
# but need to add postinstall script
147
ARGS['scripts'].append('tools/win32/bzr-win32-bdist-postinstall.py')
149
ARGS.update(META_INFO)
160
# pick real bzr version
164
for i in bzrlib.version_info[:4]:
169
version_number.append(str(i))
170
version_str = '.'.join(version_number)
172
target = py2exe.build_exe.Target(script = "bzr",
174
icon_resources = [(0,'bzr.ico')],
175
name = META_INFO['name'],
176
version = version_str,
177
description = META_INFO['description'],
178
author = META_INFO['author'],
179
copyright = "(c) Canonical Ltd, 2005-2006",
180
company_name = "Canonical Ltd.",
181
comments = META_INFO['description'],
183
options_list = {"py2exe": {"packages": BZRLIB['packages'] +
185
"dist_dir": "win32_bzr.exe",
188
setup(options=options_list,
190
'tools/win32/bzr_postinstall.py',
191
'tools/bzr_test_dependencies.py',
193
zipfile='lib/library.zip')