annotate setup.py @ 4033:bca7c59ac400

Enhance documentation generation.
author Stefan Seefeld <stefan@seefeld.name>
date Thu, 12 Feb 2009 05:54:26 +0000
parents 5bf05d2b3cf8
children e233d7a66343
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.
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
18 #
4012
5bf05d2b3cf8 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 4007
diff changeset
19 # $Id: setup.py,v 1.105 2008-09-01 01:58:32 richard Exp $
85
fe0b33370244 Made setup.py executable, added id and log.
Richard Jones <richard@users.sourceforge.net>
parents: 78
diff changeset
20
4033
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
21
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
22 from roundup.dist.command.build_doc import build_doc
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
23 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
24 from distutils.util import get_platform
3242
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
25 from distutils.file_util import write_file
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
26 from distutils.command.bdist_rpm import bdist_rpm
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
27 from distutils.command.build import build
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
28 from distutils.command.build_scripts import build_scripts
2776
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
29 from distutils.command.build_py import build_py
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
30
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
31 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
32 from glob import glob
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
33
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
34 # 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
35 from distutils.dist import DistributionMetadata
85cb3f524bba make distutils less whiney
Richard Jones <richard@users.sourceforge.net>
parents: 1662
diff changeset
36 if not hasattr(DistributionMetadata, 'classifiers'):
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
37 DistributionMetadata.classifiers = None
1461
c0673f1739c3 oops, handle older pythons w.r.t. download_url
Richard Jones <richard@users.sourceforge.net>
parents: 1458
diff changeset
38 DistributionMetadata.download_url = None
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
39
3220
91067c7d3f0a since we have a reliable msgfmt utility yet...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3214
diff changeset
40 from roundup import msgfmt
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
41
4033
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
42 def include(d, e):
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
43 """Generate a pair of (directory, file-list) for installation.
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
44
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
45 'd' -- A directory
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
46
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
47 'e' -- A glob pattern"""
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
48
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
49 return (d, [f for f in glob('%s/%s'%(d, e)) if os.path.isfile(f)])
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
50
593
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 ### Build script files
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
53 #############################################################################
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 class build_scripts_create(build_scripts):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
56 """ 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
57 from scratch, depending on the target platform.
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
58
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
59 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
60 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
61 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
62
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
63 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
64 run() function in the module
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 <packagename>.scripts.<mangled_scriptname>
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
67
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
68 The mangling of script names replaces '-' and '/' characters
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
69 with '-' and '.', so that they are valid module paths.
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
70
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
71 If the target platform is win32, create .bat files instead of
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
72 *nix shell scripts. Target platform is set to "win32" if main
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
73 command is 'bdist_wininst' or if the command is 'bdist' and
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
74 it has the list of formats (from command line or config file)
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
75 and the first item on that list is wininst. Otherwise
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
76 target platform is set to current (build) platform.
593
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 package_name = None
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
79
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
80 def initialize_options(self):
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
81 build_scripts.initialize_options(self)
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
82 self.script_preamble = None
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
83 self.target_platform = None
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
84 self.python_executable = None
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
85
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
86 def finalize_options(self):
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
87 build_scripts.finalize_options(self)
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
88 cmdopt=self.distribution.command_options
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
89
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
90 # find the target platform
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
91 if self.target_platform:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
92 # TODO? allow explicit setting from command line
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
93 target = self.target_platform
2448
487d9256f32e 2.1-compatibility
Richard Jones <richard@users.sourceforge.net>
parents: 2365
diff changeset
94 if cmdopt.has_key("bdist_wininst"):
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
95 target = "win32"
2448
487d9256f32e 2.1-compatibility
Richard Jones <richard@users.sourceforge.net>
parents: 2365
diff changeset
96 elif cmdopt.get("bdist", {}).has_key("formats"):
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
97 formats = cmdopt["bdist"]["formats"][1].split(",")
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
98 if formats[0] == "wininst":
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
99 target = "win32"
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
100 else:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
101 target = sys.platform
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
102 if len(formats) > 1:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
103 self.warn(
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
104 "Scripts are built for %s only (requested formats: %s)"
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
105 % (target, ",".join(formats)))
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
106 else:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
107 # default to current platform
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
108 target = sys.platform
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
109 self.target_platfom = target
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
110
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
111 # for native builds, use current python executable path;
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
112 # for cross-platform builds, use default executable name
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
113 if self.python_executable:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
114 # TODO? allow command-line option
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
115 pass
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
116 if target == sys.platform:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
117 self.python_executable = os.path.normpath(sys.executable)
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
118 else:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
119 self.python_executable = "python"
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
120
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
121 # for windows builds, add ".bat" extension
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
122 if target == "win32":
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
123 # *nix-like scripts may be useful also on win32 (cygwin)
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
124 # to build both script versions, use:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
125 #self.scripts = list(self.scripts) + [script + ".bat"
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
126 # for script in self.scripts]
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
127 self.scripts = [script + ".bat" for script in self.scripts]
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
128
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
129 # tweak python path for installations outside main python library
2448
487d9256f32e 2.1-compatibility
Richard Jones <richard@users.sourceforge.net>
parents: 2365
diff changeset
130 if cmdopt.get("install", {}).has_key("prefix"):
2894
67bf41bf8165 applied patch [SF#045645]
Richard Jones <richard@users.sourceforge.net>
parents: 2846
diff changeset
131 prefix = os.path.expanduser(cmdopt['install']['prefix'][1])
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
132 version = '%d.%d'%sys.version_info[:2]
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
133 self.script_preamble = '''
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
134 import sys
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
135 sys.path.insert(1, "%s/lib/python%s/site-packages")
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
136 '''%(prefix, version)
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
137 else:
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
138 self.script_preamble = ''
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
139
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
140 def copy_scripts(self):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
141 """ Create each script listed in 'self.scripts'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
142 """
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
143 if not self.package_name:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
144 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
145 " provide a package name")
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
146
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
147 to_module = string.maketrans('-/', '_.')
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
148
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
149 self.mkpath(self.build_dir)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
150 for script in self.scripts:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
151 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
152
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
153 #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
154 # 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
155 # continue
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
156
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
157 if self.dry_run:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
158 self.announce("would create %s" % outfile)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
159 continue
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
160
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
161 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
162 module = string.translate(module, to_module)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
163 script_vars = {
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
164 'python': self.python_executable,
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
165 'package': self.package_name,
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
166 'module': module,
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
167 'prefix': self.script_preamble,
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
168 }
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
169
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
170 self.announce("creating %s" % outfile)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
171 file = open(outfile, 'w')
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
172
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
173 try:
2365
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
174 # could just check self.target_platform,
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
175 # but looking at the script extension
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
176 # makes it possible to build both *nix-like
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
177 # and windows-like scripts on win32.
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
178 # may be useful for cygwin.
3a80831ecebe If the target platform is win32, create .bat files...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2332
diff changeset
179 if os.path.splitext(outfile)[1] == ".bat":
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
180 file.write('@echo off\n'
2901
3e53f30799e3 remove -O from script hard-coding so people can debug if they want to
Richard Jones <richard@users.sourceforge.net>
parents: 2894
diff changeset
181 'if NOT "%%_4ver%%" == "" "%(python)s" -c "from %(package)s.scripts.%(module)s import run; run()" %%$\n'
3e53f30799e3 remove -O from script hard-coding so people can debug if they want to
Richard Jones <richard@users.sourceforge.net>
parents: 2894
diff changeset
182 'if "%%_4ver%%" == "" "%(python)s" -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
183 % script_vars)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
184 else:
2901
3e53f30799e3 remove -O from script hard-coding so people can debug if they want to
Richard Jones <richard@users.sourceforge.net>
parents: 2894
diff changeset
185 file.write('#! %(python)s\n%(prefix)s'
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
186 '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
187 'run()\n'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
188 % script_vars)
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
189 finally:
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
190 file.close()
669
fbe3c24c499d chmod +x for scripts
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 593
diff changeset
191 os.chmod(outfile, 0755)
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
192
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
193
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
194 class build_scripts_roundup(build_scripts_create):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
195 package_name = 'roundup'
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
196
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
197
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
198 def scriptname(path):
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
199 """ 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
200 module files.
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
201 """
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
202 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
203 script = string.replace(script, '_', '-')
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
204 return script
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
205
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
206 ### Build Roundup
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
207
3220
91067c7d3f0a since we have a reliable msgfmt utility yet...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3214
diff changeset
208 def list_message_files(suffix=".po"):
2303
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
209 """Return list of all found message files and their intallation paths"""
2332
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
210 _files = glob("locale/*" + suffix)
2303
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
211 _list = []
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
212 for _file in _files:
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
213 # basename (without extension) is a locale name
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
214 _locale = os.path.splitext(os.path.basename(_file))[0]
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
215 _list.append((_file, os.path.join(
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
216 "share", "locale", _locale, "LC_MESSAGES", "roundup.mo")))
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
217 return _list
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
218
2213
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
219 def check_manifest():
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
220 """Check that the files listed in the MANIFEST are present when the
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
221 source is unpacked.
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
222 """
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
223 try:
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
224 f = open('MANIFEST')
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
225 except:
3186
30f08255e4c0 "nicer" messages
Richard Jones <richard@users.sourceforge.net>
parents: 3031
diff changeset
226 print '\n*** SOURCE WARNING: The MANIFEST file is missing!'
2992
6fe75dcb0b34 some unit test fixes
Richard Jones <richard@users.sourceforge.net>
parents: 2975
diff changeset
227 return
2213
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
228 try:
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
229 manifest = [l.strip() for l in f.readlines()]
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
230 finally:
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
231 f.close()
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
232 err = [line for line in manifest if not os.path.exists(line)]
3819
4299abf32e16 pre-release
Richard Jones <richard@users.sourceforge.net>
parents: 3795
diff changeset
233 err.sort()
4299abf32e16 pre-release
Richard Jones <richard@users.sourceforge.net>
parents: 3795
diff changeset
234 # ignore auto-generated files
4299abf32e16 pre-release
Richard Jones <richard@users.sourceforge.net>
parents: 3795
diff changeset
235 if err == ['roundup-admin', 'roundup-demo', 'roundup-gettext',
4299abf32e16 pre-release
Richard Jones <richard@users.sourceforge.net>
parents: 3795
diff changeset
236 'roundup-mailgw', 'roundup-server']:
4299abf32e16 pre-release
Richard Jones <richard@users.sourceforge.net>
parents: 3795
diff changeset
237 err = []
2213
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
238 if err:
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
239 n = len(manifest)
3186
30f08255e4c0 "nicer" messages
Richard Jones <richard@users.sourceforge.net>
parents: 3031
diff changeset
240 print '\n*** SOURCE WARNING: There are files missing (%d/%d found)!'%(
2213
3c38d9be63a6 check MANIFEST against the files actually unpacked
Richard Jones <richard@users.sourceforge.net>
parents: 2105
diff changeset
241 n-len(err), n)
2237
f624fc20f8fe added capturing of stats
Richard Jones <richard@users.sourceforge.net>
parents: 2220
diff changeset
242 print 'Missing:', '\nMissing: '.join(err)
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
243
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
244
2776
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
245 class build_py_roundup(build_py):
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
246
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
247 def find_modules(self):
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
248 # Files listed in py_modules are in the toplevel directory
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
249 # of the source distribution.
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
250 modules = []
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
251 for module in self.py_modules:
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
252 path = string.split(module, '.')
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
253 package = string.join(path[0:-1], '.')
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
254 module_base = path[-1]
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
255 module_file = module_base + '.py'
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
256 if self.check_module(module, module_file):
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
257 modules.append((package, module_base, module_file))
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
258 return modules
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
259
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
260
2214
39ffc2a7d901 check MANIFEST at build time
Richard Jones <richard@users.sourceforge.net>
parents: 2213
diff changeset
261 class build_roundup(build):
2316
f8a4c51e5847 distutils.log is not available on Python 2.2 and below...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2303
diff changeset
262
2332
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
263 def build_message_files(self):
3220
91067c7d3f0a since we have a reliable msgfmt utility yet...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3214
diff changeset
264 """For each locale/*.po, build .mo file in target locale directory"""
2332
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
265 for (_src, _dst) in list_message_files():
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
266 _build_dst = os.path.join("build", _dst)
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
267 self.mkpath(os.path.dirname(_build_dst))
3220
91067c7d3f0a since we have a reliable msgfmt utility yet...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3214
diff changeset
268 self.announce("Compiling %s -> %s" % (_src, _build_dst))
91067c7d3f0a since we have a reliable msgfmt utility yet...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3214
diff changeset
269 msgfmt.make(_src, _build_dst)
2316
f8a4c51e5847 distutils.log is not available on Python 2.2 and below...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2303
diff changeset
270
2214
39ffc2a7d901 check MANIFEST at build time
Richard Jones <richard@users.sourceforge.net>
parents: 2213
diff changeset
271 def run(self):
39ffc2a7d901 check MANIFEST at build time
Richard Jones <richard@users.sourceforge.net>
parents: 2213
diff changeset
272 check_manifest()
2332
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
273 self.build_message_files()
2214
39ffc2a7d901 check MANIFEST at build time
Richard Jones <richard@users.sourceforge.net>
parents: 2213
diff changeset
274 build.run(self)
39ffc2a7d901 check MANIFEST at build time
Richard Jones <richard@users.sourceforge.net>
parents: 2213
diff changeset
275
3242
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
276 class bdist_rpm_roundup(bdist_rpm):
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
277
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
278 def finalize_options(self):
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
279 bdist_rpm.finalize_options(self)
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
280 if self.install_script:
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
281 # install script is overridden. skip default
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
282 return
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
283 # install script option must be file name.
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
284 # create the file in rpm build directory.
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
285 install_script = os.path.join(self.rpm_base, "install.sh")
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
286 self.mkpath(self.rpm_base)
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
287 self.execute(write_file, (install_script, [
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
288 ("%s setup.py install --root=$RPM_BUILD_ROOT "
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
289 "--record=ROUNDUP_FILES") % self.python,
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
290 # allow any additional extension for man pages
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
291 # (rpm may compress them to .gz or .bz2)
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
292 # man page here is any file
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
293 # with single-character extension
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
294 # in man directory
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
295 "sed -e 's,\(/man/.*\..\)$,\\1*,' "
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
296 "<ROUNDUP_FILES >INSTALLED_FILES",
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
297 ]), "writing '%s'" % install_script)
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
298 self.install_script = install_script
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
299
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
300 #############################################################################
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
301 ### Main setup stuff
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
302 #############################################################################
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
303
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1461
diff changeset
304 def main():
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
305 # build list of scripts from their implementation modules
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
306 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
307
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
308 # template munching
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
309 packagelist = [
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
310 'roundup',
1059
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
311 'roundup.cgi',
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
312 'roundup.cgi.PageTemplates',
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
313 'roundup.cgi.TAL',
3f20880c2a7e additional packages
Richard Jones <richard@users.sourceforge.net>
parents: 937
diff changeset
314 'roundup.cgi.ZTUtils',
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
315 'roundup.backends',
2776
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
316 'roundup.scripts',
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
317 ]
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
318 installdatafiles = [
3749
8d474f7ae1c0 setup.py had broken reference to roundup.cgi [SF#1593573]
Richard Jones <richard@users.sourceforge.net>
parents: 3748
diff changeset
319 ('share/roundup/cgi-bin', ['frontends/roundup.cgi']),
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
320 ]
2776
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
321 py_modules = ['roundup.demo',]
437
a1e778940f92 Install html template files to share/roundup/templates
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 402
diff changeset
322
1419
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
323 # 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
324 if os.name == 'posix':
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
325 installdatafiles.append(('man/man1', ['doc/roundup-admin.1',
2846
fdad30b046e2 install roundup-demo man page
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2776
diff changeset
326 'doc/roundup-mailgw.1', 'doc/roundup-server.1',
fdad30b046e2 install roundup-demo man page
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2776
diff changeset
327 'doc/roundup-demo.1']))
1419
c717b8d63a7e included UN*X manual pages from Bastian Kleineidam
Richard Jones <richard@users.sourceforge.net>
parents: 1320
diff changeset
328
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
329 # add the templates to the data files lists
1918
Richard Jones <richard@users.sourceforge.net>
parents: 1873
diff changeset
330 from roundup.init import listTemplates
1594
eee8b5eecb33 oops, use correct templates source dir
Richard Jones <richard@users.sourceforge.net>
parents: 1591
diff changeset
331 templates = [t['path'] for t in listTemplates('templates').values()]
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
332 for tdir in templates:
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
333 # scan for data files
2684
94229a0832bd install extensions directories in tracker templates.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2448
diff changeset
334 for idir in '. detectors extensions html'.split():
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
335 idir = os.path.join(tdir, idir)
2776
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
336 if not os.path.isdir(idir):
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
337 continue
1591
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
338 tfiles = []
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
339 for f in os.listdir(idir):
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
340 if f.startswith('.'):
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
341 continue
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
342 ifile = os.path.join(idir, f)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
343 if os.path.isfile(ifile):
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
344 tfiles.append(ifile)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
345 installdatafiles.append(
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
346 (os.path.join('share', 'roundup', idir), tfiles)
21312a7564fd moving templates around
Richard Jones <richard@users.sourceforge.net>
parents: 1587
diff changeset
347 )
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
348
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
349 # add message files
2332
804c5c735bf1 don't compile message catalogs...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2316
diff changeset
350 for (_dist_file, _mo_file) in list_message_files():
2303
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
351 installdatafiles.append((os.path.dirname(_mo_file),
bf3d44f6b91e reorganized locale sources:
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2300
diff changeset
352 [os.path.join("build", _mo_file)]))
2300
e98bb674cb7d binary distribution includes compiled message catalogs
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2253
diff changeset
353
4033
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
354 # add docs
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
355 installdatafiles.append(include(os.path.join('share', 'doc', 'roundup', 'html'), '*'))
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
356
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
357 # perform the setup action
773
6e6c63a57df9 [SF#569415] {version]]
Richard Jones <richard@users.sourceforge.net>
parents: 753
diff changeset
358 from roundup import __version__
3031
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
359 setup_args = {
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
360 'name': "roundup",
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
361 'version': __version__,
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
362 'description': "A simple-to-use and -install issue-tracking system"
1873
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1748
diff changeset
363 " with command-line, web and e-mail interfaces. Highly"
f63aa57386b0 Backend improvements.
Richard Jones <richard@users.sourceforge.net>
parents: 1748
diff changeset
364 " customisable.",
3220
91067c7d3f0a since we have a reliable msgfmt utility yet...
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3214
diff changeset
365 'long_description':
3748
fdc9eb78d708 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3745
diff changeset
366 '''In this release
fdc9eb78d708 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3745
diff changeset
367 ===============
3753
a6eff0dd2c9c pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3749
diff changeset
368
4012
5bf05d2b3cf8 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 4007
diff changeset
369 1.4.6 is a bugfix release:
4003
71d8025784d0 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3971
diff changeset
370
4012
5bf05d2b3cf8 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 4007
diff changeset
371 - Fix bug introduced in 1.4.5 in RDBMS full-text indexing
5bf05d2b3cf8 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 4007
diff changeset
372 - Make URL matching code less matchy
3753
a6eff0dd2c9c pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3749
diff changeset
373
2105
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
374 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
375 the "Software Upgrade" guidelines given in the maintenance documentation.
44f3c1dd636b pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1918
diff changeset
376
3745
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
377 Roundup requires python 2.3 or later for correct operation.
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
378
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
379 To give Roundup a try, just download (see below), unpack and run::
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
380
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
381 roundup-demo
3726
b11142bb2aa2 Password confirm field in user editing.
Richard Jones <richard@users.sourceforge.net>
parents: 3719
diff changeset
382
3748
fdc9eb78d708 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3745
diff changeset
383 Documentation is available at the website:
3745
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
384 http://roundup.sourceforge.net/
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
385 Mailing lists - the place to ask questions:
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
386 http://sourceforge.net/mail/?group_id=31577
3726
b11142bb2aa2 Password confirm field in user editing.
Richard Jones <richard@users.sourceforge.net>
parents: 3719
diff changeset
387
3745
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
388 About Roundup
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
389 =============
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
390
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
391 Roundup is a simple-to-use and -install issue-tracking system with
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
392 command-line, web and e-mail interfaces. It is based on the winning design
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
393 from Ka-Ping Yee in the Software Carpentry "Track" design competition.
3540
f3c6e8ac9023 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3536
diff changeset
394
3745
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
395 Note: Ping is not responsible for this project. The contact for this
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
396 project is richard@users.sourceforge.net.
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
397
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
398 Roundup manages a number of issues (with flexible properties such as
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
399 "description", "priority", and so on) and provides the ability to:
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
400
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
401 (a) submit new issues,
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
402 (b) find and edit existing issues, and
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
403 (c) discuss issues with other participants.
3719
a8835786ecf7 *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 3588
diff changeset
404
3745
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
405 The system will facilitate communication among the participants by managing
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
406 discussions and notifying interested parties when issues are edited. One of
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
407 the major design goals for Roundup that it be simple to get going. Roundup
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
408 is therefore usable "out of the box" with any python 2.3+ installation. It
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
409 doesn't even need to be "installed" to be operational, though a
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
410 disutils-based install script is provided.
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
411
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
412 It comes with two issue tracker templates (a classic bug/feature tracker and
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
413 a minimal skeleton) and five database back-ends (anydbm, sqlite, metakit,
20e9831fc58a pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 3726
diff changeset
414 mysql and postgresql).
1643
41dbd406a79c *** empty log message ***
Richard Jones <richard@users.sourceforge.net>
parents: 1640
diff changeset
415 ''',
3031
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
416 'author': "Richard Jones",
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
417 'author_email': "richard@users.sourceforge.net",
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
418 'url': 'http://roundup.sourceforge.net/',
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
419 'packages': packagelist,
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
420 'classifiers': [
3541
07072b1b796c fix typo
Richard Jones <richard@users.sourceforge.net>
parents: 3540
diff changeset
421 'Development Status :: 5 - Production/Stable',
1320
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
422 'Environment :: Console',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
423 'Environment :: Web Environment',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
424 'Intended Audience :: End Users/Desktop',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
425 'Intended Audience :: Developers',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
426 'Intended Audience :: System Administrators',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
427 '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
428 'Operating System :: MacOS :: MacOS X',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
429 'Operating System :: Microsoft :: Windows',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
430 'Operating System :: POSIX',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
431 'Programming Language :: Python',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
432 'Topic :: Communications :: Email',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
433 'Topic :: Office/Business',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
434 'Topic :: Software Development :: Bug Tracking',
3758a5af985f Lots of little fixes in this update:
Richard Jones <richard@users.sourceforge.net>
parents: 1287
diff changeset
435 ],
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
436
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
437 # Override certain command classes with our own ones
3031
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
438 'cmdclass': {
4033
bca7c59ac400 Enhance documentation generation.
Stefan Seefeld <stefan@seefeld.name>
parents: 4012
diff changeset
439 'build_doc': build_doc,
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
440 'build_scripts': build_scripts_roundup,
2776
10e96f3ee658 install demo.py as a module in roundup package.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2684
diff changeset
441 'build_py': build_py_roundup,
2214
39ffc2a7d901 check MANIFEST at build time
Richard Jones <richard@users.sourceforge.net>
parents: 2213
diff changeset
442 'build': build_roundup,
3242
9c368d4cdac5 fix bdist_rpm [SF#1164328]
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 3220
diff changeset
443 'bdist_rpm': bdist_rpm_roundup,
753
938edfdeac6e Sorry about this huge checkin!
Richard Jones <richard@users.sourceforge.net>
parents: 675
diff changeset
444 },
3031
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
445 'scripts': roundup_scripts,
593
2256f81293c1 Conversion to generated script stubs
Jürgen Hermann <jhermann@users.sourceforge.net>
parents: 580
diff changeset
446
3031
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
447 'data_files': installdatafiles
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
448 }
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
449 if sys.version_info[:2] > (2, 2):
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
450 setup_args['py_modules'] = py_modules
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
451
0a81ed2b397d fix setup.py to work with <Python2.3 [SF#1082801]
Richard Jones <richard@users.sourceforge.net>
parents: 2992
diff changeset
452 setup(**setup_args)
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
453
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1461
diff changeset
454 if __name__ == '__main__':
1640
d0b29215aa44 pre-release stuff
Richard Jones <richard@users.sourceforge.net>
parents: 1619
diff changeset
455 main()
1576
80519db85eac More tweaks to the licensing to make the Debian folks happy :)
Richard Jones <richard@users.sourceforge.net>
parents: 1461
diff changeset
456
2684
94229a0832bd install extensions directories in tracker templates.
Alexander Smishlajev <a1s@users.sourceforge.net>
parents: 2448
diff changeset
457 # vim: set filetype=python sts=4 sw=4 et si :

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