annotate setup.py @ 2119:cc4667ef3f12

Added the ability to toggle where error messages go. They either go to the user (default, for backwards compatibility), the dispatcher, or both. These are able to be toggled via settings in config.py. Please refer to upgrading.txt for more details. (And Richard, let me know if I've done anything wrong with this checkin. :))
author Eddie Parker <eparker@users.sourceforge.net>
date Thu, 25 Mar 2004 19:27:15 +0000
parents 44f3c1dd636b
children 3c38d9be63a6
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
85
fe0b33370244 Made setup.py executable, added id and log.
Richard Jones <richard@users.sourceforge.net>
parents: 78
diff changeset
1 #! /usr/bin/env python
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
2 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
3 # Copyright (c) 2001 Bizar Software Pty Ltd (http://www.bizarsoftware.com.au/)
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
4 # This module is free software, and you may redistribute it and/or modify
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
5 # under the same terms as Python, so long as this copyright message and
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
6 # disclaimer are retained in their original form.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
7 #
214
18134bffab37 stupid typo
Richard Jones <richard@users.sourceforge.net>
parents: 213
diff changeset
8 # IN NO EVENT SHALL BIZAR SOFTWARE PTY LTD BE LIABLE TO ANY PARTY FOR
213
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
9 # DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
10 # OUT OF THE USE OF THIS CODE, EVEN IF THE AUTHOR HAS BEEN ADVISED OF THE
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
11 # POSSIBILITY OF SUCH DAMAGE.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
12 #
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
13 # BIZAR SOFTWARE PTY LTD SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
14 # BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
15 # FOR A PARTICULAR PURPOSE. THE CODE PROVIDED HEREUNDER IS ON AN "AS IS"
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
16 # BASIS, AND THERE IS NO OBLIGATION WHATSOEVER TO PROVIDE MAINTENANCE,
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
17 # SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
d45384bc6420 Added the copyright/license notice to (nearly) all files...
Richard Jones <richard@users.sourceforge.net>
parents: 210
diff changeset
18 #
2105
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
19 # $Id: setup.py,v 1.59 2004-03-24 05:56:06 richard Exp $
85
fe0b33370244 Made setup.py executable, added id and log.
Richard Jones <richard@users.sourceforge.net>
parents: 78
diff changeset
20
78
edcca72de643 first cut at setup.py - installs the package, but not the bin/cgi-bin yet
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
21 from distutils.core import setup, Extension
edcca72de643 first cut at setup.py - installs the package, but not the bin/cgi-bin yet
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
22 from distutils.util import get_platform
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
23 from distutils.command.build_scripts import build_scripts
78
edcca72de643 first cut at setup.py - installs the package, but not the bin/cgi-bin yet
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
24
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
25 import sys, os, string
78
edcca72de643 first cut at setup.py - installs the package, but not the bin/cgi-bin yet
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
26 from glob import glob
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
27
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
28 # patch distutils if it can't cope with the "classifiers" keyword
1673
85cb3f524bba make distutils less whiney
Richard Jones <richard@users.sourceforge.net>
parents: 1662
diff changeset
29 from distutils.dist import DistributionMetadata
85cb3f524bba make distutils less whiney
Richard Jones <richard@users.sourceforge.net>
parents: 1662
diff changeset
30 if not hasattr(DistributionMetadata, 'classifiers'):
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
31 DistributionMetadata.classifiers = None
1461
c0673f1739c3 oops, handle older pythons w.r.t. download_url
Richard Jones <richard@users.sourceforge.net>
parents: 1458
diff changeset
32 DistributionMetadata.download_url = None
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
33
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
34
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
35 #############################################################################
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
36 ### Build script files
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
37 #############################################################################
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
38
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
39 class build_scripts_create(build_scripts):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
40 """ Overload the build_scripts command and create the scripts
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
41 from scratch, depending on the target platform.
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
42
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
43 You have to define the name of your package in an inherited
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
44 class (due to the delayed instantiation of command classes
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
45 in distutils, this cannot be passed to __init__).
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
46
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
47 The scripts are created in an uniform scheme: they start the
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
48 run() function in the module
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
49
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
50 <packagename>.scripts.<mangled_scriptname>
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
51
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
52 The mangling of script names replaces '-' and '/' characters
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
53 with '-' and '.', so that they are valid module paths.
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
54 """
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
55 package_name = None
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
56
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
57 def copy_scripts(self):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
58 """ Create each script listed in 'self.scripts'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
59 """
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
60 if not self.package_name:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
61 raise Exception("You have to inherit build_scripts_create and"
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
62 " provide a package name")
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
63
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
64 to_module = string.maketrans('-/', '_.')
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
65
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
66 self.mkpath(self.build_dir)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
67 for script in self.scripts:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
68 outfile = os.path.join(self.build_dir, os.path.basename(script))
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
69
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
70 #if not self.force and not newer(script, outfile):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
71 # self.announce("not copying %s (up-to-date)" % script)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
72 # continue
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
73
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
74 if self.dry_run:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
75 self.announce("would create %s" % outfile)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
76 continue
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
77
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
78 module = os.path.splitext(os.path.basename(script))[0]
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
79 module = string.translate(module, to_module)
1619
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
80 cmdopt=self.distribution.command_options
1662
0fc2c1fd3064 Don't fail for 'python setup.py build'.
Jean Jordaan <neaj@users.sourceforge.net>
parents: 1654
diff changeset
81 if (cmdopt.has_key('install') and
0fc2c1fd3064 Don't fail for 'python setup.py build'.
Jean Jordaan <neaj@users.sourceforge.net>
parents: 1654
diff changeset
82 cmdopt['install'].has_key('prefix')):
1619
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
83 prefix = cmdopt['install']['prefix'][1]
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
84 version = '%d.%d'%sys.version_info[:2]
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
85 prefix = '''
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
86 import sys
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
87 sys.path.insert(1, "%s/lib/python%s/site-packages")
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
88 '''%(prefix, version)
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
89 else:
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
90 prefix = ''
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
91 script_vars = {
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
92 'python': os.path.normpath(sys.executable),
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
93 'package': self.package_name,
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
94 'module': module,
1619
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
95 'prefix': prefix,
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
96 }
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
97
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
98 self.announce("creating %s" % outfile)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
99 file = open(outfile, 'w')
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
100
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
101 try:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
102 if sys.platform == "win32":
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
103 file.write('@echo off\n'
1287
5402a6f2a754 Added quotes around python interpreter in windows bat [SF#623963]
Richard Jones <richard@users.sourceforge.net>
parents: 1188
diff changeset
104 'if NOT "%%_4ver%%" == "" "%(python)s" -O -c "from %(package)s.scripts.%(module)s import run; run()" %%$\n'
5402a6f2a754 Added quotes around python interpreter in windows bat [SF#623963]
Richard Jones <richard@users.sourceforge.net>
parents: 1188
diff changeset
105 'if "%%_4ver%%" == "" "%(python)s" -O -c "from %(package)s.scripts.%(module)s import run; run()" %%*\n'
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
106 % script_vars)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
107 else:
1619
7034b61e9d9e I thought I already made this change...
Richard Jones <richard@users.sourceforge.net>
parents: 1594
diff changeset
108 file.write('#! %(python)s -O\n%(prefix)s'
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
109 'from %(package)s.scripts.%(module)s import run\n'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
110 'run()\n'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
111 % script_vars)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
112 finally:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
113 file.close()
669
fbe3c24c499d chmod +x for scripts
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 593
diff changeset
114 os.chmod(outfile, 0755)
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
115
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
116
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
117 class build_scripts_roundup(build_scripts_create):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
118 package_name = 'roundup'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
119
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
120
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
121 def scriptname(path):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
122 """ Helper for building a list of script names from a list of
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
123 module files.
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
124 """
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
125 script = os.path.splitext(os.path.basename(path))[0]
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
126 script = string.replace(script, '_', '-')
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
127 if sys.platform == "win32":
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
128 script = script + ".bat"
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
129 return script
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
130
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
131
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
132
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
133 #############################################################################
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
134 ### Main setup stuff
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
135 #############################################################################
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
136
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1461
diff changeset
137 def main():
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
138 # build list of scripts from their implementation modules
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
139 roundup_scripts = map(scriptname, glob('roundup/scripts/[!_]*.py'))
437
a1e778940f92 Install html template files to share/roundup/templates
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 402
diff changeset
140
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
141 # template munching
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
142 packagelist = [
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
143 'roundup',
1059
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
144 'roundup.cgi',
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
145 'roundup.cgi.PageTemplates',
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
146 'roundup.cgi.TAL',
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
147 'roundup.cgi.ZTUtils',
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
148 'roundup.backends',
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
149 'roundup.scripts'
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
150 ]
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
151 installdatafiles = [
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
152 ('share/roundup/cgi-bin', ['cgi-bin/roundup.cgi']),
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
153 ]
437
a1e778940f92 Install html template files to share/roundup/templates
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 402
diff changeset
154
1419
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
155 # install man pages on POSIX platforms
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
156 if os.name == 'posix':
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
157 installdatafiles.append(('man/man1', ['doc/roundup-admin.1',
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
158 'doc/roundup-mailgw.1', 'doc/roundup-server.1']))
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
159
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
160 # add the templates to the data files lists
1918
Richard Jones <richard@users.sourceforge.net>
parents: 1873
diff changeset
161 from roundup.init import listTemplates
1594
eee8b5eecb33 oops, use correct templates source dir
Richard Jones <richard@users.sourceforge.net>
parents: 1591
diff changeset
162 templates = [t['path'] for t in listTemplates('templates').values()]
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
163 for tdir in templates:
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
164 # scan for data files
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
165 for idir in '. detectors html'.split():
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
166 idir = os.path.join(tdir, idir)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
167 tfiles = []
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
168 for f in os.listdir(idir):
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
169 if f.startswith('.'):
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
170 continue
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
171 ifile = os.path.join(idir, f)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
172 if os.path.isfile(ifile):
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
173 tfiles.append(ifile)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
174 installdatafiles.append(
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
175 (os.path.join('share', 'roundup', idir), tfiles)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
176 )
78
edcca72de643 first cut at setup.py - installs the package, but not the bin/cgi-bin yet
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
177
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
178 # perform the setup action
773
6e6c63a57df9 [SF#569415] {version]]
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
179 from roundup import __version__
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
180 setup(
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
181 name = "roundup",
773
6e6c63a57df9 [SF#569415] {version]]
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
182 version = __version__,
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1748
diff changeset
183 description = "A simple-to-use and -install issue-tracking system"
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1748
diff changeset
184 " with command-line, web and e-mail interfaces. Highly"
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1748
diff changeset
185 " customisable.",
1643
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
186 long_description =
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
187 '''Roundup is a simple-to-use and -install issue-tracking system with
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
188 command-line, web and e-mail interfaces. It is based on the winning design
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
189 from Ka-Ping Yee in the Software Carpentry "Track" design competition.
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
190
2105
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
191 If you're upgrading from an older version of Roundup you *must* follow
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
192 the "Software Upgrade" guidelines given in the maintenance documentation.
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
193
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
194 No, really, this is a BETA and if you don't follow the upgrading steps,
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
195 particularly the bit about BACKING UP YOUR DATA, I'm NOT GOING TO BE HELD
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
196 RESPONSIBLE. This release is NOT FOR GENERAL USE.
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
197
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
198 I would *greatly* appreciate people giving this release a whirl with a
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
199 copy of their existing setup. It's only through real-world testing of
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
200 beta releases that we can ensure that older trackers will be OK.
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
201
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
202 This release introduces far too many features to list here. Some
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
203 highlights:
1643
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
204
2105
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
205 - added postgresql backend (originally from sf patch 761740, many changes
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
206 since)
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
207 - RDBMS backends implement their session and one-time-key stores and
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
208 full-text indexers; thus they are now performing their own locking
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
209 internally
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
210 - added new "actor" automatic property (indicates user who cause the last
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
211 "activity")
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
212 - all RDBMS backends have sensible data typed columns and indexes on
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
213 several columns
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
214 - we support confirming registration by replying to the email (sf bug
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
215 763668)
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
216 - all HTML templating methods now automatically check for permissions
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
217 (either view or edit as appropriate), greatly simplifying templates
1643
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
218 ''',
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
219 author = "Richard Jones",
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
220 author_email = "richard@users.sourceforge.net",
1654
284c26c1ef19 aargh, b2 was b0rken
Richard Jones <richard@users.sourceforge.net>
parents: 1643
diff changeset
221 url = 'http://roundup.sourceforge.net/',
1458
c1ecd373b5c9 minor stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1419
diff changeset
222 download_url = 'http://sourceforge.net/project/showfiles.php?group_id=31577',
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
223 packages = packagelist,
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
224 classifiers = [
2105
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
225 'Development Status :: 4 - Beta',
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
226 'Environment :: Console',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
227 'Environment :: Web Environment',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
228 'Intended Audience :: End Users/Desktop',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
229 'Intended Audience :: Developers',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
230 'Intended Audience :: System Administrators',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
231 'License :: OSI Approved :: Python Software Foundation License',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
232 'Operating System :: MacOS :: MacOS X',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
233 'Operating System :: Microsoft :: Windows',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
234 'Operating System :: POSIX',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
235 'Programming Language :: Python',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
236 'Topic :: Communications :: Email',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
237 'Topic :: Office/Business',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
238 'Topic :: Software Development :: Bug Tracking',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
239 ],
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
240
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
241 # Override certain command classes with our own ones
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
242 cmdclass = {
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
243 'build_scripts': build_scripts_roundup,
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
244 },
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
245 scripts = roundup_scripts,
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
246
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
247 data_files = installdatafiles
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
248 )
78
edcca72de643 first cut at setup.py - installs the package, but not the bin/cgi-bin yet
Anthony Baxter <anthonybaxter@users.sourceforge.net>
parents:
diff changeset
249
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1461
diff changeset
250 if __name__ == '__main__':
1640
d0b29215aa44 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1619
diff changeset
251 main()
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1461
diff changeset
252
127
0791d13baea7 Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents: 105
diff changeset
253 # vim: set filetype=python ts=4 sw=4 et si

Roundup Issue Tracker: http://roundup-tracker.org/