author | Padraig O'Briain <padraig.obriain@sun.com> |
Thu, 25 Feb 2010 13:45:12 +0000 | |
changeset 1791 | b2a37ff09e8c |
parent 1750 | 1e1d2661ec8b |
child 1815 | 02d4bf8c0005 |
permissions | -rw-r--r-- |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
1 |
#!/usr/bin/python2.6 |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
2 |
# |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
3 |
# CDDL HEADER START |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
4 |
# |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
5 |
# The contents of this file are subject to the terms of the |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
6 |
# Common Development and Distribution License (the "License"). |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
7 |
# You may not use this file except in compliance with the License. |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
8 |
# |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
9 |
# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
10 |
# or http://www.opensolaris.org/os/licensing. |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
11 |
# See the License for the specific language governing permissions |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
12 |
# and limitations under the License. |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
13 |
# |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
14 |
# When distributing Covered Code, include this CDDL HEADER in each |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
15 |
# file and include the License file at usr/src/OPENSOLARIS.LICENSE. |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
16 |
# If applicable, add the following below this CDDL HEADER, with the |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
17 |
# fields enclosed by brackets "[]" replaced with your own identifying |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
18 |
# information: Portions Copyright [yyyy] [name of copyright owner] |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
19 |
# |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
20 |
# CDDL HEADER END |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
21 |
# |
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
22 |
# Copyright 2010 Sun Microsystems, Inc. All rights reserved. |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
23 |
# Use is subject to license terms. |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
24 |
# |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
25 |
|
883
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
26 |
import errno |
454
c27abbc11c8c
2811 clobber doesn't clobber all versions of dependencies
Shawn Walker <shawn.walker@sun.com>
parents:
452
diff
changeset
|
27 |
import fnmatch |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
28 |
import os |
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
29 |
import platform |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
30 |
import stat |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
31 |
import sys |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
32 |
import shutil |
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
33 |
import re |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
34 |
import subprocess |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
35 |
import tarfile |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
36 |
import tempfile |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
37 |
import urllib |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
38 |
import py_compile |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
39 |
import hashlib |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
40 |
|
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
41 |
from distutils.errors import DistutilsError |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
42 |
from distutils.core import setup, Extension |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
43 |
from distutils.cmd import Command |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
44 |
from distutils.command.install import install as _install |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
45 |
from distutils.command.build import build as _build |
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
46 |
from distutils.command.build_py import build_py as _build_py |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
47 |
from distutils.command.bdist import bdist as _bdist |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
48 |
from distutils.command.clean import clean as _clean |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
49 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
50 |
from distutils.sysconfig import get_python_inc |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
51 |
import distutils.file_util as file_util |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
52 |
import distutils.dir_util as dir_util |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
53 |
import distutils.util as util |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
54 |
|
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
55 |
osname = platform.uname()[0].lower() |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
56 |
ostype = arch = 'unknown' |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
57 |
if osname == 'sunos': |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
58 |
arch = platform.processor() |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
59 |
ostype = "posix" |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
60 |
elif osname == 'linux': |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
61 |
arch = "linux_" + platform.machine() |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
62 |
ostype = "posix" |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
63 |
elif osname == 'windows': |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
64 |
arch = osname |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
65 |
ostype = "windows" |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
66 |
elif osname == 'darwin': |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
67 |
arch = osname |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
68 |
ostype = "posix" |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
69 |
elif osname == 'aix': |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
70 |
arch = "aix" |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
71 |
ostype = "posix" |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
72 |
|
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
73 |
# 3rd party software required for the build |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
74 |
CP = 'CherryPy' |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
75 |
CPIDIR = 'cherrypy' |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
76 |
CPVER = '3.1.2' |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
77 |
CPARC = '%s-%s.tar.gz' % (CP, CPVER) |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
78 |
CPDIR = '%s-%s' % (CP, CPVER) |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
79 |
CPURL = 'http://download.cherrypy.org/cherrypy/%s/%s' % (CPVER, CPARC) |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
80 |
CPHASH = 'a94aedfd0e675858dbcc32dd250c23d285ee9b88' |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
81 |
|
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
82 |
PO = 'pyOpenSSL' |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
83 |
POIDIR = 'OpenSSL' |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
84 |
POVER = '0.7' |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
85 |
POARC = '%s-%s.tar.gz' % (PO, POVER) |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
86 |
PODIR = '%s-%s' % (PO, POVER) |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
87 |
POURL = 'http://downloads.sourceforge.net/pyopenssl/%s' % (POARC) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
88 |
POHASH = 'bd072fef8eb36241852d25a9161282a051f0a63e' |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
89 |
|
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
90 |
COV = 'coveragepy' |
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
91 |
COVIDIR = 'coverage' |
1514
7e4fefcc8d00
12803 support for coverage.py coverage analysis tool (fix packaging)
Danek Duvall <danek.duvall@sun.com>
parents:
1513
diff
changeset
|
92 |
COVVER = 'coverage-3.2b2' |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
93 |
COVARC = '%s-%s.tar.bz2' % (COV, COVVER) |
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
94 |
COVDIR = '%s' % COV |
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
95 |
COVURL = 'http://bitbucket.org/ned/%s/get/%s.tar.bz2' % (COV, COVVER) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
96 |
# No hash, since we always fetch the latest |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
97 |
COVHASH = None |
708
ef2162b85fab
4970 Add code coverage support
Brad Hall <bhall@eng.sun.com>
parents:
691
diff
changeset
|
98 |
|
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
99 |
LDTP = 'ldtp' |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
100 |
LDTPIDIR = 'ldtp' |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
101 |
LDTPVER = '1.7.1' |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
102 |
LDTPMINORVER = '1.7.x' |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
103 |
LDTPMAJORVER = '1.x' |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
104 |
LDTPARC = '%s-%s.tar.gz' % (LDTP, LDTPVER) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
105 |
LDTPDIR = '%s-%s' % (LDTP, LDTPVER) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
106 |
LDTPURL = 'http://download.freedesktop.org/ldtp/%s/%s/%s' % \ |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
107 |
(LDTPMAJORVER, LDTPMINORVER, LDTPARC) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
108 |
LDTPHASH = 'd31213d2b1449a0dadcace723b9ff7041169f7ce' |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
109 |
|
742
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
110 |
MAKO = 'Mako' |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
111 |
MAKOIDIR = 'mako' |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
112 |
MAKOVER = '0.2.2' |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
113 |
MAKOARC = '%s-%s.tar.gz' % (MAKO, MAKOVER) |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
114 |
MAKODIR = '%s-%s' % (MAKO, MAKOVER) |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
115 |
MAKOURL = 'http://www.makotemplates.org/downloads/%s' % (MAKOARC) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
116 |
MAKOHASH = '85c04ab3a6a26a1cab47067449712d15a8b29790' |
742
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
117 |
|
941
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
118 |
PLY = 'ply' |
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
119 |
PLYIDIR = 'ply' |
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
120 |
PLYVER = '3.1' |
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
121 |
PLYARC = '%s-%s.tar.gz' % (PLY, PLYVER) |
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
122 |
PLYDIR = '%s-%s' % (PLY, PLYVER) |
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
123 |
PLYURL = 'http://www.dabeaz.com/ply/%s' % (PLYARC) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
124 |
PLYHASH = '38efe9e03bc39d40ee73fa566eb9c1975f1a8003' |
941
e7bff46da54e
6175 search needs to be moved to version 1
Brock Pytlik <bpytlik@sun.com>
parents:
883
diff
changeset
|
125 |
|
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
126 |
PC = 'pycurl' |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
127 |
PCIDIR = 'curl' |
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
128 |
PCVER = '7.19.0' |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
129 |
PCARC = '%s-%s.tar.gz' % (PC, PCVER) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
130 |
PCDIR = '%s-%s' % (PC, PCVER) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
131 |
PCURL = 'http://pycurl.sourceforge.net/download/%s' % PCARC |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
132 |
PCHASH = '3fb59eca1461331bb9e9e8d6fe3b23eda961a416' |
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
133 |
PCENVIRON = {} |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
134 |
if osname in ("sunos", "linux", "darwin"): |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
135 |
PCENVIRON = {'CFLAGS': '-O3'} |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
136 |
|
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
137 |
pwd = os.path.normpath(sys.path[0]) |
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
138 |
|
534
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
139 |
# |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
140 |
# Unbuffer stdout and stderr. This helps to ensure that subprocess output |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
141 |
# is properly interleaved with output from this program. |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
142 |
# |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
143 |
sys.stdout = os.fdopen(sys.stdout.fileno(), "w", 0) |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
144 |
sys.stderr = os.fdopen(sys.stderr.fileno(), "w", 0) |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
145 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
146 |
dist_dir = os.path.normpath(os.path.join(pwd, os.pardir, "proto", "dist_" + arch)) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
147 |
build_dir = os.path.normpath(os.path.join(pwd, os.pardir, "proto", "build_" + arch)) |
954
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
148 |
if "ROOT" in os.environ and os.environ["ROOT"] != "": |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
149 |
root_dir = os.environ["ROOT"] |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
150 |
else: |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
151 |
root_dir = os.path.normpath(os.path.join(pwd, os.pardir, "proto", "root_" + arch)) |
534
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
152 |
pkgs_dir = os.path.normpath(os.path.join(pwd, os.pardir, "packages", arch)) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
153 |
extern_dir = os.path.normpath(os.path.join(pwd, "extern")) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
154 |
|
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
155 |
cacert_dir = os.path.normpath(os.path.join(pwd, "cacert")) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
156 |
cacert_install_dir = 'usr/share/pkg/cacert' |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
157 |
|
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
158 |
py_install_dir = 'usr/lib/python2.6/vendor-packages' |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
159 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
160 |
scripts_dir = 'usr/bin' |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
161 |
lib_dir = 'usr/lib' |
661
edf14bae4465
2717 pkg.depotd: need smf support for depot mode options
Brock Pytlik <bpytlik@sun.com>
parents:
613
diff
changeset
|
162 |
svc_method_dir = 'lib/svc/method' |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
163 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
164 |
man1_dir = 'usr/share/man/cat1' |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
165 |
man1m_dir = 'usr/share/man/cat1m' |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
166 |
man5_dir = 'usr/share/man/cat5' |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
167 |
resource_dir = 'usr/share/lib/pkg' |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
168 |
smf_dir = 'var/svc/manifest/application' |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
169 |
zones_dir = 'etc/zones' |
1483
2276b6786711
6793 p2v support for ipkg-branded zones
<gerald.jelinek@sun.com>
parents:
1452
diff
changeset
|
170 |
etcbrand_dir = 'etc/brand/ipkg' |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
171 |
brand_dir = 'usr/lib/brand/ipkg' |
1498
1800f38ca303
6133 need to add pkg commands in /etc/security/exec_attr with "Software Installation" profile
John Sonnenschein <John.Sonnenschein@Sun.COM>
parents:
1483
diff
changeset
|
172 |
execattrd_dir = 'etc/security/exec_attr.d' |
1800f38ca303
6133 need to add pkg commands in /etc/security/exec_attr with "Software Installation" profile
John Sonnenschein <John.Sonnenschein@Sun.COM>
parents:
1483
diff
changeset
|
173 |
authattrd_dir = 'etc/security/auth_attr.d' |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
174 |
|
1674
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
175 |
# A list of source, destination tuples of modules which should be hardlinked |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
176 |
# together if the os supports it and otherwise copied. |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
177 |
hardlink_modules = [ |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
178 |
("%s/pkg/flavor/depthlimitedmf24" % py_install_dir, |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
179 |
"%s/pkg/flavor/depthlimitedmf25" % py_install_dir) |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
180 |
] |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
181 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
182 |
scripts_sunos = { |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
183 |
scripts_dir: [ |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
184 |
['client.py', 'pkg'], |
1544
e0ce5081236a
12697 pkgdep throws an exception for $PLATFORM or $ISALIST in runpath
Brock Pytlik <bpytlik@sun.com>
parents:
1516
diff
changeset
|
185 |
['pkgdep.py', 'pkgdepend'], |
1557
d242d38c27d9
12899 Need a nice way of comparing manifests from the command line to aid publication
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1544
diff
changeset
|
186 |
['util/publish/pkgdiff.py', 'pkgdiff'], |
1506
9c8b3a3184be
12373 Need a programatic way of transforming manifests
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1505
diff
changeset
|
187 |
['util/publish/pkgmogrify.py', 'pkgmogrify'], |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
188 |
['publish.py', 'pkgsend'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
189 |
['pull.py', 'pkgrecv'], |
424
a767ef6bf887
2578 integrate packagemanager into ips gate
Danek Duvall <danek.duvall@sun.com>
parents:
422
diff
changeset
|
190 |
['packagemanager.py', 'packagemanager'], |
1024
e83271f2e133
7645 Man page required for Package Manager and Update Manager
Padraig O'Briain <padraig.obriain@sun.com>
parents:
954
diff
changeset
|
191 |
['updatemanager.py', 'pm-updatemanager'], |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
192 |
], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
193 |
lib_dir: [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
194 |
['depot.py', 'pkg.depotd'], |
578
da257532b3f2
3816 RFE UpdateManager notify users of repo updates
John Rice <john.rice@sun.com>
parents:
534
diff
changeset
|
195 |
['updatemanagernotifier.py', 'updatemanagernotifier'], |
1228
07ef6e279231
9852 UMN and PM check for updates should use plan_update_all
Padraig O'Briain <padraig.obriain@sun.com>
parents:
1208
diff
changeset
|
196 |
['checkforupdates.py', 'pm-checkforupdates'], |
1172
fc39dcc70f84
9574 Package Manager should use user's GNOME proxy settings
Padraig O'Briain <padraig.obriain@sun.com>
parents:
1101
diff
changeset
|
197 |
['launch.py', 'pm-launch'], |
1750
1e1d2661ec8b
14422 New Firefox instances is executed as root by packagemanager
Padraig O'Briain <padraig.obriain@sun.com>
parents:
1716
diff
changeset
|
198 |
['openlink.py', 'pm-openlink'], |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
199 |
], |
661
edf14bae4465
2717 pkg.depotd: need smf support for depot mode options
Brock Pytlik <bpytlik@sun.com>
parents:
613
diff
changeset
|
200 |
svc_method_dir: [ |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
201 |
['svc/svc-pkg-depot', 'svc-pkg-depot'], |
661
edf14bae4465
2717 pkg.depotd: need smf support for depot mode options
Brock Pytlik <bpytlik@sun.com>
parents:
613
diff
changeset
|
202 |
], |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
203 |
} |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
204 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
205 |
scripts_windows = { |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
206 |
scripts_dir: [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
207 |
['client.py', 'client.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
208 |
['publish.py', 'publish.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
209 |
['pull.py', 'pull.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
210 |
['scripts/pkg.bat', 'pkg.bat'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
211 |
['scripts/pkgsend.bat', 'pkgsend.bat'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
212 |
['scripts/pkgrecv.bat', 'pkgrecv.bat'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
213 |
], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
214 |
lib_dir: [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
215 |
['depot.py', 'depot.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
216 |
['scripts/pkg.depotd.bat', 'pkg.depotd.bat'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
217 |
], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
218 |
} |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
219 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
220 |
scripts_other_unix = { |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
221 |
scripts_dir: [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
222 |
['client.py', 'client.py'], |
1231
f7b99e8118d2
9290 need a way to find the file dependencies of a package
Brock Pytlik <bpytlik@sun.com>
parents:
1228
diff
changeset
|
223 |
['pkgdep.py', 'pkgdep'], |
1557
d242d38c27d9
12899 Need a nice way of comparing manifests from the command line to aid publication
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1544
diff
changeset
|
224 |
['util/publish/pkgdiff.py', 'pkgdiff'], |
d242d38c27d9
12899 Need a nice way of comparing manifests from the command line to aid publication
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1544
diff
changeset
|
225 |
['util/publish/pkgmogrify.py', 'pkgmogrify'], |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
226 |
['pull.py', 'pull.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
227 |
['publish.py', 'publish.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
228 |
['scripts/pkg.sh', 'pkg'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
229 |
['scripts/pkgsend.sh', 'pkgsend'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
230 |
['scripts/pkgrecv.sh', 'pkgrecv'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
231 |
], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
232 |
lib_dir: [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
233 |
['depot.py', 'depot.py'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
234 |
['scripts/pkg.depotd.sh', 'pkg.depotd'], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
235 |
], |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
236 |
} |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
237 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
238 |
# indexed by 'osname' |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
239 |
scripts = { |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
240 |
"sunos": scripts_sunos, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
241 |
"linux": scripts_other_unix, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
242 |
"windows": scripts_windows, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
243 |
"darwin": scripts_other_unix, |
1302
65995c02a467
10042 Port pkg(5) to AIX
Tom Mueller <Tom.Mueller@sun.com>
parents:
1265
diff
changeset
|
244 |
"aix" : scripts_other_unix, |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
245 |
"unknown": scripts_sunos, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
246 |
} |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
247 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
248 |
man1_files = [ |
1024
e83271f2e133
7645 Man page required for Package Manager and Update Manager
Padraig O'Briain <padraig.obriain@sun.com>
parents:
954
diff
changeset
|
249 |
'man/packagemanager.1', |
413
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
250 |
'man/pkg.1', |
1544
e0ce5081236a
12697 pkgdep throws an exception for $PLATFORM or $ISALIST in runpath
Brock Pytlik <bpytlik@sun.com>
parents:
1516
diff
changeset
|
251 |
'man/pkgdepend.1', |
1557
d242d38c27d9
12899 Need a nice way of comparing manifests from the command line to aid publication
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1544
diff
changeset
|
252 |
'man/pkgdiff.1', |
1506
9c8b3a3184be
12373 Need a programatic way of transforming manifests
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1505
diff
changeset
|
253 |
'man/pkgmogrify.1', |
413
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
254 |
'man/pkgsend.1', |
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
255 |
'man/pkgrecv.1', |
1024
e83271f2e133
7645 Man page required for Package Manager and Update Manager
Padraig O'Briain <padraig.obriain@sun.com>
parents:
954
diff
changeset
|
256 |
'man/pm-updatemanager.1', |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
257 |
] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
258 |
man1m_files = [ |
413
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
259 |
'man/pkg.depotd.1m' |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
260 |
] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
261 |
man5_files = [ |
413
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
262 |
'man/pkg.5' |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
263 |
] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
264 |
packages = [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
265 |
'pkg', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
266 |
'pkg.actions', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
267 |
'pkg.bundle', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
268 |
'pkg.client', |
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
269 |
'pkg.client.transport', |
1452
bd6ffa78fed9
7960 client and depot need different organization of files
Brock Pytlik <bpytlik@sun.com>
parents:
1401
diff
changeset
|
270 |
'pkg.file_layout', |
1231
f7b99e8118d2
9290 need a way to find the file dependencies of a package
Brock Pytlik <bpytlik@sun.com>
parents:
1228
diff
changeset
|
271 |
'pkg.flavor', |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
272 |
'pkg.portable', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
273 |
'pkg.publish', |
424
a767ef6bf887
2578 integrate packagemanager into ips gate
Danek Duvall <danek.duvall@sun.com>
parents:
422
diff
changeset
|
274 |
'pkg.server' |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
275 |
] |
742
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
276 |
|
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
277 |
web_files = [] |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
278 |
for entry in os.walk("web"): |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
279 |
web_dir, dirs, files = entry |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
280 |
if not files: |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
281 |
continue |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
282 |
web_files.append((os.path.join(resource_dir, web_dir), [ |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
283 |
os.path.join(web_dir, f) for f in files |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
284 |
if f != "Makefile" |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
285 |
])) |
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
286 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
287 |
zones_files = [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
288 |
'brand/SUNWipkg.xml', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
289 |
] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
290 |
brand_files = [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
291 |
'brand/pkgcreatezone', |
954
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
292 |
'brand/attach', |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
293 |
'brand/clone', |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
294 |
'brand/detach', |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
295 |
'brand/prestate', |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
296 |
'brand/poststate', |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
297 |
'brand/uninstall', |
8614b0c63fb3
4771 zone operations fail with package inventory errors when authority changes
Dan Price <dp@eng.sun.com>
parents:
941
diff
changeset
|
298 |
'brand/common.ksh', |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
299 |
] |
1483
2276b6786711
6793 p2v support for ipkg-branded zones
<gerald.jelinek@sun.com>
parents:
1452
diff
changeset
|
300 |
etcbrand_files = [ |
2276b6786711
6793 p2v support for ipkg-branded zones
<gerald.jelinek@sun.com>
parents:
1452
diff
changeset
|
301 |
'brand/pkgrm.conf', |
2276b6786711
6793 p2v support for ipkg-branded zones
<gerald.jelinek@sun.com>
parents:
1452
diff
changeset
|
302 |
'brand/smf_disable.conf', |
2276b6786711
6793 p2v support for ipkg-branded zones
<gerald.jelinek@sun.com>
parents:
1452
diff
changeset
|
303 |
] |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
304 |
smf_files = [ |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
305 |
'svc/pkg-server.xml', |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
306 |
'svc/pkg-update.xml', |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
307 |
] |
1498
1800f38ca303
6133 need to add pkg commands in /etc/security/exec_attr with "Software Installation" profile
John Sonnenschein <John.Sonnenschein@Sun.COM>
parents:
1483
diff
changeset
|
308 |
execattrd_files = ['util/misc/exec_attr.d/SUNWipkg'] |
1800f38ca303
6133 need to add pkg commands in /etc/security/exec_attr with "Software Installation" profile
John Sonnenschein <John.Sonnenschein@Sun.COM>
parents:
1483
diff
changeset
|
309 |
authattrd_files = ['util/misc/auth_attr.d/SUNWipkg'] |
691
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
310 |
pspawn_srcs = [ |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
311 |
'modules/pspawn.c' |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
312 |
] |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
313 |
elf_srcs = [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
314 |
'modules/elf.c', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
315 |
'modules/elfextract.c', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
316 |
'modules/liblist.c', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
317 |
] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
318 |
arch_srcs = [ |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
319 |
'modules/arch.c' |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
320 |
] |
591
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
321 |
_actions_srcs = [ |
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
322 |
'modules/actions/_actions.c' |
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
323 |
] |
1505
cc598d70bbbe
4425 pkg install should deal w/ complex dependency changes in one install
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1498
diff
changeset
|
324 |
solver_srcs = [ |
cc598d70bbbe
4425 pkg install should deal w/ complex dependency changes in one install
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1498
diff
changeset
|
325 |
'modules/solver/solver.c', |
cc598d70bbbe
4425 pkg install should deal w/ complex dependency changes in one install
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1498
diff
changeset
|
326 |
'modules/solver/py_solver.c' |
cc598d70bbbe
4425 pkg install should deal w/ complex dependency changes in one install
Bart Smaalders <Bart.Smaalders@Sun.COM>
parents:
1498
diff
changeset
|
327 |
] |
1632
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
328 |
solver_link_args = ["-lm", "-lc"] |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
329 |
if osname == 'sunos': |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
330 |
solver_link_args = ["-ztext"] + solver_link_args |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
331 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
332 |
include_dirs = [ 'modules' ] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
333 |
lint_flags = [ '-u', '-axms', '-erroff=E_NAME_DEF_NOT_USED2' ] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
334 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
335 |
# Runs lint on the extension module source code |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
336 |
class lint_func(Command): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
337 |
description = "Runs various lint tools over IPS extension source code" |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
338 |
user_options = [] |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
339 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
340 |
def initialize_options(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
341 |
pass |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
342 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
343 |
def finalize_options(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
344 |
pass |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
345 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
346 |
# Make string shell-friendly |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
347 |
@staticmethod |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
348 |
def escape(astring): |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
349 |
return astring.replace(' ', '\\ ') |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
350 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
351 |
def run(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
352 |
# assumes lint is on the $PATH |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
353 |
if osname == 'sunos' or osname == "linux": |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
354 |
archcmd = ['lint'] + lint_flags + ['-D_FILE_OFFSET_BITS=64'] + \ |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
355 |
["%s%s" % ("-I", k) for k in include_dirs] + \ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
356 |
['-I' + self.escape(get_python_inc())] + \ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
357 |
arch_srcs |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
358 |
elfcmd = ['lint'] + lint_flags + \ |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
359 |
["%s%s" % ("-I", k) for k in include_dirs] + \ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
360 |
['-I' + self.escape(get_python_inc())] + \ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
361 |
["%s%s" % ("-l", k) for k in elf_libraries] + \ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
362 |
elf_srcs |
591
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
363 |
_actionscmd = ['lint'] + lint_flags + \ |
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
364 |
["%s%s" % ("-I", k) for k in include_dirs] + \ |
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
365 |
['-I' + self.escape(get_python_inc())] + \ |
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
366 |
_actions_srcs |
691
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
367 |
pspawncmd = ['lint'] + lint_flags + ['-D_FILE_OFFSET_BITS=64'] + \ |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
368 |
["%s%s" % ("-I", k) for k in include_dirs] + \ |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
369 |
['-I' + self.escape(get_python_inc())] + \ |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
370 |
pspawn_srcs |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
371 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
372 |
print(" ".join(archcmd)) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
373 |
os.system(" ".join(archcmd)) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
374 |
print(" ".join(elfcmd)) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
375 |
os.system(" ".join(elfcmd)) |
591
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
376 |
print(" ".join(_actionscmd)) |
dbe9236b0884
2686 action key/value pairs separated by tabs cause parsing problems
Danek Duvall <danek.duvall@sun.com>
parents:
578
diff
changeset
|
377 |
os.system(" ".join(_actionscmd)) |
691
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
378 |
print(" ".join(pspawncmd)) |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
379 |
os.system(" ".join(pspawncmd)) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
380 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
381 |
proto = os.path.join(root_dir, py_install_dir) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
382 |
sys.path.insert(0, proto) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
383 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
384 |
# Insert tests directory onto sys.path so any custom checkers |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
385 |
# can be found. |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
386 |
sys.path.insert(0, os.path.join(pwd, 'tests')) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
387 |
print(sys.path) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
388 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
389 |
# assumes pylint is accessible on the sys.path |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
390 |
from pylint import lint |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
391 |
scriptlist = [ 'setup.py' ] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
392 |
for d, m in scripts_sunos.items(): |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
393 |
for a in m: |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
394 |
# specify the filenames of the scripts, in addition |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
395 |
# to the package names themselves |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
396 |
scriptlist.append(os.path.join(root_dir, d, a[1])) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
397 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
398 |
# For some reason, the load-plugins option, when used in the |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
399 |
# rcfile, does not work, so we put it here instead, to load |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
400 |
# our custom checkers. |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
401 |
lint.Run(['--load-plugins=multiplatform', '--rcfile', |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
402 |
os.path.join(pwd, 'tests', 'pylintrc')] + |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
403 |
scriptlist + packages) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
404 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
405 |
class install_func(_install): |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
406 |
def initialize_options(self): |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
407 |
_install.initialize_options(self) |
506
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
408 |
|
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
409 |
# PRIVATE_BUILD set in the environment tells us to put the build |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
410 |
# directory into the .pyc files, rather than the final |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
411 |
# installation directory. |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
412 |
private_build = os.getenv("PRIVATE_BUILD", None) |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
413 |
|
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
414 |
if private_build is None: |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
415 |
self.install_lib = py_install_dir |
834
f8b3396500b3
4883 import failure for non-sunos platforms due to missing pspawn
Tom Mueller <Tom.Mueller@sun.com>
parents:
801
diff
changeset
|
416 |
self.install_data = os.path.sep |
506
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
417 |
self.root = root_dir |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
418 |
else: |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
419 |
self.install_lib = os.path.join(root_dir, py_install_dir) |
513
4ddcb572f5d9
3330 smf manifest file in wrong location
Danek Duvall <danek.duvall@sun.com>
parents:
506
diff
changeset
|
420 |
self.install_data = root_dir |
506
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
421 |
|
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
422 |
# This is used when installing scripts, below, but it isn't a |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
423 |
# standard distutils variable. |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
424 |
self.root_dir = root_dir |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
425 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
426 |
def run(self): |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
427 |
""" |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
428 |
At the end of the install function, we need to rename some files |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
429 |
because distutils provides no way to rename files as they are |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
430 |
placed in their install locations. |
883
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
431 |
Also, make sure that cherrypy and other external dependencies |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
432 |
are installed. |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
433 |
""" |
413
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
434 |
for f in man1_files + man1m_files + man5_files: |
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
435 |
file_util.copy_file(f + ".txt", f, update=1) |
3170bad6ceb7
2406 man pages are re-installed every time
Danek Duvall <danek.duvall@sun.com>
parents:
409
diff
changeset
|
436 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
437 |
_install.run(self) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
438 |
|
1674
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
439 |
for o_src, o_dest in hardlink_modules: |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
440 |
for e in [".py", ".pyc"]: |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
441 |
src = util.change_root(self.root_dir, o_src + e) |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
442 |
dest = util.change_root( |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
443 |
self.root_dir, o_dest + e) |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
444 |
if ostype == "posix": |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
445 |
if os.path.exists(dest) and \ |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
446 |
os.stat(src)[stat.ST_INO] != \ |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
447 |
os.stat(dest)[stat.ST_INO]: |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
448 |
os.remove(dest) |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
449 |
file_util.copy_file(src, dest, |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
450 |
link="hard", update=1) |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
451 |
else: |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
452 |
file_util.copy_file(src, dest, update=1) |
faf484754465
13059 pkgdep generate should analyze python modules using the version of python they use
Brock Pytlik <bpytlik@sun.com>
parents:
1660
diff
changeset
|
453 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
454 |
for d, files in scripts[osname].iteritems(): |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
455 |
for (srcname, dstname) in files: |
506
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
456 |
dst_dir = util.change_root(self.root_dir, d) |
acc9011bd8d4
2754 incorrect paths and source snippets in development stack traces
Danek Duvall <danek.duvall@sun.com>
parents:
498
diff
changeset
|
457 |
dst_path = util.change_root(self.root_dir, |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
458 |
os.path.join(d, dstname)) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
459 |
dir_util.mkpath(dst_dir, verbose = True) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
460 |
file_util.copy_file(srcname, dst_path, update = True) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
461 |
# make scripts executable |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
462 |
os.chmod(dst_path, |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
463 |
os.stat(dst_path).st_mode |
834
f8b3396500b3
4883 import failure for non-sunos platforms due to missing pspawn
Tom Mueller <Tom.Mueller@sun.com>
parents:
801
diff
changeset
|
464 |
| stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
465 |
|
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
466 |
# Take cacerts in cacert_dir and install them in |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
467 |
# proto-area-relative cacert_install_dir |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
468 |
install_cacerts() |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
469 |
|
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
470 |
prep_sw(CP, CPARC, CPDIR, CPURL, CPHASH) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
471 |
install_sw(CP, CPDIR, CPIDIR) |
1401
9dd0120dc51b
11785 ldtp build fails on Solaris 10
Tom Mueller <Tom.Mueller@sun.com>
parents:
1394
diff
changeset
|
472 |
if osname == "sunos" and platform.uname()[2] == "5.11": |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
473 |
prep_sw(LDTP, LDTPARC, LDTPDIR, LDTPURL, |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
474 |
LDTPHASH) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
475 |
saveenv = os.environ.copy() |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
476 |
os.environ["LDFLAGS"] = os.environ.get("LDFLAGS", "") + \ |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
477 |
" -lsocket -lnsl" |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
478 |
install_ldtp(LDTP, LDTPDIR, LDTPIDIR) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
479 |
os.environ = saveenv |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
480 |
|
836
1800b2c96160
5599 Installing SUNWxvnc to a zone is not enough
David.Comay@Sun.COM
parents:
834
diff
changeset
|
481 |
if "BUILD_PYOPENSSL" in os.environ and \ |
1800b2c96160
5599 Installing SUNWxvnc to a zone is not enough
David.Comay@Sun.COM
parents:
834
diff
changeset
|
482 |
os.environ["BUILD_PYOPENSSL"] != "": |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
483 |
# |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
484 |
# Include /usr/sfw/lib in the build environment |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
485 |
# to ensure that this builds and runs on older |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
486 |
# nevada builds, before openssl moved out of /usr/sfw. |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
487 |
# |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
488 |
saveenv = os.environ.copy() |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
489 |
if osname == "sunos": |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
490 |
os.environ["CFLAGS"] = "-I/usr/sfw/include " + \ |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
491 |
os.environ.get("CFLAGS", "") |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
492 |
os.environ["LDFLAGS"] = \ |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
493 |
"-L/usr/sfw/lib -R/usr/sfw/lib " + \ |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
494 |
os.environ.get("LDFLAGS", "") |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
495 |
prep_sw(PO, POARC, PODIR, POURL, POHASH) |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
496 |
install_sw(PO, PODIR, POIDIR) |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
497 |
os.environ = saveenv |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
498 |
prep_sw(MAKO, MAKOARC, MAKODIR, MAKOURL, MAKOHASH) |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
499 |
install_sw(MAKO, MAKODIR, MAKOIDIR) |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
500 |
prep_sw(PLY, PLYARC, PLYDIR, PLYURL, PLYHASH) |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
501 |
install_sw(PLY, PLYDIR, PLYIDIR) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
502 |
prep_sw(PC, PCARC, PCDIR, PCURL, PCHASH) |
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
503 |
install_sw(PC, PCDIR, PCIDIR, extra_env=PCENVIRON) |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
504 |
prep_sw(COV, COVARC, COVDIR, COVURL, COVHASH) |
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
505 |
install_sw(COV, COVDIR, COVIDIR) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
506 |
|
883
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
507 |
# Remove some bits that we're not going to package, but be sure |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
508 |
# not to complain if we try to remove them twice. |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
509 |
def onerror(func, path, exc_info): |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
510 |
if exc_info[1].errno != errno.ENOENT: |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
511 |
raise |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
512 |
|
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
513 |
for dir in ("cherrypy/scaffold", "cherrypy/test", |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
514 |
"cherrypy/tutorial"): |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
515 |
shutil.rmtree(os.path.join(root_dir, py_install_dir, dir), |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
516 |
onerror=onerror) |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
517 |
try: |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
518 |
os.remove(os.path.join(root_dir, "usr/bin/mako-render")) |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
519 |
except EnvironmentError, e: |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
520 |
if e.errno != errno.ENOENT: |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
521 |
raise |
77885b2adc42
5539 SUNWpython-mako should deliver egg info
Danek Duvall <danek.duvall@sun.com>
parents:
849
diff
changeset
|
522 |
|
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
523 |
def hash_sw(swname, swarc, swhash): |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
524 |
if swhash == None: |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
525 |
return True |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
526 |
|
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
527 |
print "checksumming %s" % swname |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
528 |
hash = hashlib.sha1() |
1265
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
529 |
f = open(swarc, "rb") |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
530 |
while True: |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
531 |
data = f.read(65536) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
532 |
if data == "": |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
533 |
break |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
534 |
hash.update(data) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
535 |
f.close() |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
536 |
|
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
537 |
if hash.hexdigest() == swhash: |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
538 |
return True |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
539 |
else: |
1208
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
540 |
print >> sys.stderr, "bad checksum! %s != %s" % \ |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
541 |
(swhash, hash.hexdigest()) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
542 |
return False |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
543 |
|
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
544 |
def install_cacerts(): |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
545 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
546 |
findir = os.path.join(root_dir, cacert_install_dir) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
547 |
dir_util.mkpath(findir, verbose = True) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
548 |
for f in os.listdir(cacert_dir): |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
549 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
550 |
# Copy certificate |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
551 |
srcname = os.path.normpath(os.path.join(cacert_dir, f)) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
552 |
dn, copied = file_util.copy_file(srcname, findir, update = True) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
553 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
554 |
if not copied: |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
555 |
continue |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
556 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
557 |
# Call openssl to create hash symlink |
1265
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
558 |
cmd = ["openssl", "x509", "-noout", "-hash", "-in", |
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
559 |
srcname] |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
560 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
561 |
p = subprocess.Popen(cmd, stdout=subprocess.PIPE) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
562 |
hashval = p.stdout.read() |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
563 |
p.wait() |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
564 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
565 |
hashval = hashval.strip() |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
566 |
hashval += ".0" |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
567 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
568 |
hashpath = os.path.join(findir, hashval) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
569 |
if os.path.exists(hashpath): |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
570 |
os.unlink(hashpath) |
1265
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
571 |
if hasattr(os, "symlink"): |
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
572 |
os.symlink(f, hashpath) |
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
573 |
else: |
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
574 |
file_util.copy_file(srcname, hashpath) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
575 |
|
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
576 |
def prep_sw(swname, swarc, swdir, swurl, swhash): |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
577 |
swarc = os.path.join(extern_dir, swarc) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
578 |
swdir = os.path.join(extern_dir, swdir) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
579 |
if not os.path.exists(extern_dir): |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
580 |
os.mkdir(extern_dir) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
581 |
|
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
582 |
if not os.path.exists(swarc): |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
583 |
print "downloading %s" % swname |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
584 |
try: |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
585 |
fname, hdr = urllib.urlretrieve(swurl, swarc) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
586 |
except IOError: |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
587 |
pass |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
588 |
if not os.path.exists(swarc) or \ |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
589 |
(hdr.gettype() != "application/x-gzip" and |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
590 |
hdr.gettype() != "application/x-tar"): |
1208
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
591 |
print >> sys.stderr, "Unable to retrieve %s.\n" \ |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
592 |
"Please retrieve the file " \ |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
593 |
"and place it at: %s\n" % (swurl, swarc) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
594 |
# remove a partial download or error message from proxy |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
595 |
remove_sw(swname) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
596 |
sys.exit(1) |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
597 |
if not os.path.exists(swdir): |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
598 |
if not hash_sw(swname, swarc, swhash): |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
599 |
sys.exit(1) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
600 |
|
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
601 |
print "unpacking %s" % swname |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
602 |
tar = tarfile.open(swarc) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
603 |
# extractall doesn't exist until python 2.5 |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
604 |
for m in tar.getmembers(): |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
605 |
tar.extract(m, extern_dir) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
606 |
tar.close() |
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
607 |
|
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
608 |
# If there are patches, apply them now. |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
609 |
patchdir = os.path.join("patch", swname) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
610 |
already_patched = os.path.join(swdir, ".patched") |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
611 |
if os.path.exists(patchdir) and not os.path.exists(already_patched): |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
612 |
patches = os.listdir(patchdir) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
613 |
for p in patches: |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
614 |
patchpath = os.path.join(os.path.pardir, |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
615 |
os.path.pardir, patchdir, p) |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
616 |
print "Applying %s to %s" % (p, swname) |
1265
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
617 |
args = ["patch", "-d", swdir, "-i", patchpath, "-p0"] |
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
618 |
if osname == "windows": |
c700981b0af2
8656 build download hash check fails in Windows due to text mode open
Tom Mueller <Tom.Mueller@sun.com>
parents:
1231
diff
changeset
|
619 |
args.append("--binary") |
1208
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
620 |
ret = subprocess.Popen(args).wait() |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
621 |
if ret != 0: |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
622 |
print >> sys.stderr, \ |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
623 |
"patch failed and returned %d." % ret |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
624 |
print >> sys.stderr, \ |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
625 |
"Command was: %s" % " ".join(args) |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
626 |
sys.exit(1) |
1191
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
627 |
file(already_patched, "w").close() |
a48bee2a4b2e
305 http_proxy value needs more checking for valid url syntax
johansen <johansen@sun.com>
parents:
1172
diff
changeset
|
628 |
|
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
629 |
def install_ldtp(swname, swdir, swidir): |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
630 |
swdir = os.path.join(extern_dir, swdir) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
631 |
swinst_file = os.path.join(root_dir, py_install_dir, swidir + ".py") |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
632 |
if not os.path.exists(swinst_file): |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
633 |
print "installing %s" % swname |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
634 |
args_config = ['./configure', |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
635 |
'--prefix=/usr', |
1394
38c552cdcfbf
11763 make install noise / packages failure for ldtp if PYTHONPATH set
Shawn Walker <srw@sun.com>
parents:
1391
diff
changeset
|
636 |
'--bindir=/usr/bin', |
38c552cdcfbf
11763 make install noise / packages failure for ldtp if PYTHONPATH set
Shawn Walker <srw@sun.com>
parents:
1391
diff
changeset
|
637 |
'PYTHONPATH=""', |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
638 |
] |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
639 |
args_make_install = ['make', 'install', |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
640 |
'DESTDIR=%s' % root_dir |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
641 |
] |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
642 |
run_cmd(args_config, swdir) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
643 |
run_cmd(args_make_install, swdir) |
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
644 |
|
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
645 |
def install_sw(swname, swdir, swidir, extra_env=None): |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
646 |
swdir = os.path.join(extern_dir, swdir) |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
647 |
swinst_dir = os.path.join(root_dir, py_install_dir, swidir) |
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
648 |
inst_env = os.environ.copy() |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
649 |
if extra_env: |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
650 |
inst_env.update(extra_env) |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
651 |
|
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
652 |
if not os.path.exists(swinst_dir): |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
653 |
print "installing %s" % swname |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
654 |
args = ['python2.6', 'setup.py', 'install', |
498
e1c077b81de6
3135 SUNWpython-cherrypy delivers pyc files with embedded gate path
Danek Duvall <danek.duvall@sun.com>
parents:
465
diff
changeset
|
655 |
'--root=%s' % root_dir, |
e1c077b81de6
3135 SUNWpython-cherrypy delivers pyc files with embedded gate path
Danek Duvall <danek.duvall@sun.com>
parents:
465
diff
changeset
|
656 |
'--install-lib=%s' % py_install_dir, |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
657 |
'--install-data=%s' % py_install_dir] |
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
658 |
run_cmd(args, swdir, env=inst_env) |
1391
1a9bd005489f
7987 LDTP package needs to be included in the gate
Michal Pryc <Michal.Pryc@Sun.Com>
parents:
1337
diff
changeset
|
659 |
|
1660
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
660 |
def run_cmd(args, swdir, env=None): |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
661 |
if env is None: |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
662 |
env = os.environ |
f99db08aa9db
13799 pycurl could stand to be built with optimization
Tim Foster <tim.foster@sun.com>
parents:
1637
diff
changeset
|
663 |
ret = subprocess.Popen(args, cwd=swdir, env=env).wait() |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
664 |
if ret != 0: |
1208
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
665 |
print >> sys.stderr, \ |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
666 |
"install failed and returned %d." % ret |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
667 |
print >> sys.stderr, \ |
9d8a558cae2d
9901 Patch failure should stop build
johansen <johansen@sun.com>
parents:
1201
diff
changeset
|
668 |
"Command was: %s" % " ".join(args) |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
669 |
sys.exit(1) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
670 |
|
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
671 |
def remove_sw(swname): |
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
672 |
print("deleting %s" % swname) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
673 |
for file in os.listdir(extern_dir): |
465
44fddb622fe4
2818 We should include pyOpenSSL in the gate
Brad Hall <bhall@eng.sun.com>
parents:
454
diff
changeset
|
674 |
if fnmatch.fnmatch(file, "%s*" % swname): |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
675 |
fpath = os.path.join(extern_dir, file) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
676 |
if os.path.isfile(fpath): |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
677 |
os.unlink(fpath) |
454
c27abbc11c8c
2811 clobber doesn't clobber all versions of dependencies
Shawn Walker <shawn.walker@sun.com>
parents:
452
diff
changeset
|
678 |
else: |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
679 |
shutil.rmtree(fpath, True) |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
680 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
681 |
class build_func(_build): |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
682 |
def initialize_options(self): |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
683 |
_build.initialize_options(self) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
684 |
self.build_base = build_dir |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
685 |
|
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
686 |
def get_hg_version(): |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
687 |
try: |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
688 |
p = subprocess.Popen(['hg', 'id', '-i'], stdout = subprocess.PIPE) |
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
689 |
return p.communicate()[0].strip() |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
690 |
except OSError: |
384
9d4746e5dd3e
115 pkg needs to not have a cow on a SIGPIPE
Shawn Walker <swalker@opensolaris.org>
parents:
383
diff
changeset
|
691 |
print >> sys.stderr, "ERROR: unable to obtain mercurial version" |
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
692 |
return "unknown" |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
693 |
|
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
694 |
def syntax_check(filename): |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
695 |
""" Run python's compiler over the file, and discard the results. |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
696 |
Arrange to generate an exception if the file does not compile. |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
697 |
This is needed because distutil's own use of pycompile (in the |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
698 |
distutils.utils module) is broken, and doesn't stop on error. """ |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
699 |
try: |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
700 |
py_compile.compile(filename, os.devnull, doraise=True) |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
701 |
except py_compile.PyCompileError, e: |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
702 |
raise DistutilsError("%s: failed syntax check: %s" % |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
703 |
(filename, e)) |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
704 |
|
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
705 |
|
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
706 |
class build_py_func(_build_py): |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
707 |
# override the build_module method to do VERSION substitution on pkg/__init__.py |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
708 |
def build_module (self, module, module_file, package): |
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
709 |
|
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
710 |
if module == "__init__" and package == "pkg": |
422
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
711 |
versionre = '(?m)^VERSION[^"]*"([^"]*)"' |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
712 |
# Grab the previously-built version out of the build |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
713 |
# tree. |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
714 |
try: |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
715 |
ocontent = \ |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
716 |
file(self.get_module_outfile(self.build_lib, |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
717 |
[package], module)).read() |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
718 |
ov = re.search(versionre, ocontent).group(1) |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
719 |
except IOError: |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
720 |
ov = None |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
721 |
v = get_hg_version() |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
722 |
vstr = 'VERSION = "%s"' % v |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
723 |
# If the versions haven't changed, there's no need to |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
724 |
# recompile. |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
725 |
if v == ov: |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
726 |
return |
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
727 |
|
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
728 |
mcontent = file(module_file).read() |
422
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
729 |
mcontent = re.sub(versionre, vstr, mcontent) |
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
730 |
tmpfd, tmp_file = tempfile.mkstemp() |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
731 |
os.write(tmpfd, mcontent) |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
732 |
os.close(tmpfd) |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
733 |
print "doing version substitution: ", v |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
734 |
rv = _build_py.build_module(self, module, tmp_file, package) |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
735 |
os.unlink(tmp_file) |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
736 |
return rv |
422
c69607a5bdce
2554 make install could stand to be quieter
Danek Duvall <danek.duvall@sun.com>
parents:
413
diff
changeset
|
737 |
|
849
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
738 |
# Will raise a DistutilsError on failure. |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
739 |
syntax_check(module_file) |
5fd94ce78823
3813 pkg build needs to fail when sub-builds fail
Dan Price <dp@eng.sun.com>
parents:
836
diff
changeset
|
740 |
|
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
741 |
return _build_py.build_module(self, module, module_file, package) |
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
742 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
743 |
class clean_func(_clean): |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
744 |
def initialize_options(self): |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
745 |
_clean.initialize_options(self) |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
746 |
self.build_base = build_dir |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
747 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
748 |
class clobber_func(Command): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
749 |
user_options = [] |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
750 |
description = "Deletes any and all files created by setup" |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
751 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
752 |
def initialize_options(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
753 |
pass |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
754 |
def finalize_options(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
755 |
pass |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
756 |
def run(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
757 |
# nuke everything |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
758 |
print("deleting " + dist_dir) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
759 |
shutil.rmtree(dist_dir, True) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
760 |
print("deleting " + build_dir) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
761 |
shutil.rmtree(build_dir, True) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
762 |
print("deleting " + root_dir) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
763 |
shutil.rmtree(root_dir, True) |
534
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
764 |
print("deleting " + pkgs_dir) |
44a901d55161
676 'make install' fails if GNU install is first in path
Dan Price <dp@eng.sun.com>
parents:
513
diff
changeset
|
765 |
shutil.rmtree(pkgs_dir, True) |
1099
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
766 |
print("deleting " + extern_dir) |
bd94d4910b8a
8602 tidy top level of source directory
Dan Price <dp@eng.sun.com>
parents:
1024
diff
changeset
|
767 |
shutil.rmtree(extern_dir, True) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
768 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
769 |
class test_func(Command): |
1101
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
770 |
# NOTE: these options need to be in sync with tests/run.py and the |
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
771 |
# list of options stored in initialize_options below. The first entry |
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
772 |
# in each tuple must be the exact name of a member variable. |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
773 |
user_options = [ |
1715
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
774 |
("archivedir=", 'a', "archive failed tests <dir>"), |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
775 |
("baselinefile=", 'b', "baseline file <file>"), |
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
776 |
("coverage", "c", "collect code coverage data"), |
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
777 |
("genbaseline", 'g', "generate test baseline"), |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
778 |
("only=", "o", "only <regex>"), |
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
779 |
("parseable", 'p', "parseable output"), |
1101
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
780 |
("timing", "t", "timing file <file>"), |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
781 |
("verbosemode", 'v', "run tests in verbose mode"), |
1715
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
782 |
("stoponerr", 'x', "stop when a baseline mismatch occurs"), |
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
783 |
("debugoutput", 'd', "emit debugging output"), |
1716
10e09e28528a
12257 setup.py doesn't respect run.py options [fix traceback]
Dan Price <dp@eng.sun.com>
parents:
1715
diff
changeset
|
784 |
("showonexpectedfail", 'f', |
1715
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
785 |
"show all failure info, even for expected fails"), |
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
786 |
("startattest=", 's', "start at indicated test"), |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
787 |
] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
788 |
description = "Runs unit and functional tests" |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
789 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
790 |
def initialize_options(self): |
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
791 |
self.only = "" |
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
792 |
self.baselinefile = "" |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
793 |
self.verbosemode = 0 |
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
794 |
self.parseable = 0 |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
795 |
self.genbaseline = 0 |
1101
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
796 |
self.timing = 0 |
1513
3ece69a26155
5032 make coverage should only report on the files in our gate
Danek Duvall <danek.duvall@sun.com>
parents:
1508
diff
changeset
|
797 |
self.coverage = 0 |
1715
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
798 |
self.stoponerr = 0 |
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
799 |
self.debugoutput = 0 |
1716
10e09e28528a
12257 setup.py doesn't respect run.py options [fix traceback]
Dan Price <dp@eng.sun.com>
parents:
1715
diff
changeset
|
800 |
self.showonexpectedfail = 0 |
1715
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
801 |
self.startattest = "" |
8f305f0a6864
8265 EINVAL on rmdir running "make test"
Dan Price <dp@eng.sun.com>
parents:
1674
diff
changeset
|
802 |
self.archivedir = "" |
1101
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
803 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
804 |
def finalize_options(self): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
805 |
pass |
1101
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
806 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
807 |
def run(self): |
1101
35f360e2ee19
5247 Test suite should provide timing info
Brock Pytlik <bpytlik@sun.com>
parents:
1099
diff
changeset
|
808 |
|
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
809 |
os.putenv('PYEXE', sys.executable) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
810 |
os.chdir(os.path.join(pwd, "tests")) |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
811 |
|
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
812 |
# Reconstruct the cmdline and send that to run.py |
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
813 |
cmd = [sys.executable, "run.py"] |
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
814 |
args = "" |
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
815 |
if "test" in sys.argv: |
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
816 |
args = sys.argv[sys.argv.index("test")+1:] |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
817 |
cmd.extend(args) |
448
bcfa99ac18b0
2664 test suite baseline enhancements
Brad Hall <bhall@eng.sun.com>
parents:
430
diff
changeset
|
818 |
subprocess.call(cmd) |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
819 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
820 |
class dist_func(_bdist): |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
821 |
def initialize_options(self): |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
822 |
_bdist.initialize_options(self) |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
823 |
self.dist_dir = dist_dir |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
824 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
825 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
826 |
# These are set to real values based on the platform, down below |
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
827 |
compile_args = None |
1637
0a60d77db8d9
13796 pkg(5) could stand to have its C modules optimized
Danek Duvall <danek.duvall@sun.com>
parents:
1632
diff
changeset
|
828 |
if osname in ("sunos", "linux", "darwin"): |
0a60d77db8d9
13796 pkg(5) could stand to have its C modules optimized
Danek Duvall <danek.duvall@sun.com>
parents:
1632
diff
changeset
|
829 |
compile_args = [ "-O3" ] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
830 |
link_args = None |
613
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
831 |
ext_modules = [ |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
832 |
Extension( |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
833 |
'actions._actions', |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
834 |
_actions_srcs, |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
835 |
include_dirs = include_dirs, |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
836 |
extra_compile_args = compile_args, |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
837 |
extra_link_args = link_args |
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
838 |
), |
1632
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
839 |
Extension( |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
840 |
'solver', |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
841 |
solver_srcs, |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
842 |
include_dirs = include_dirs + ["."], |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
843 |
extra_compile_args = compile_args, |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
844 |
extra_link_args = solver_link_args, |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
845 |
define_macros = [('_FILE_OFFSET_BITS', '64')] |
082a54aa7b58
13499 port solver to non-sunos platforms
Tom Mueller <Tom.Mueller@sun.com>
parents:
1557
diff
changeset
|
846 |
), |
613
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
847 |
] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
848 |
elf_libraries = None |
742
909b912fa942
3011 new depot index page desired
Shawn Walker <Shawn.Walker@Sun.COM>
parents:
708
diff
changeset
|
849 |
data_files = web_files |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
850 |
cmdclasses = { |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
851 |
'install': install_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
852 |
'build': build_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
853 |
'build_py': build_py_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
854 |
'bdist': dist_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
855 |
'lint': lint_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
856 |
'clean': clean_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
857 |
'clobber': clobber_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
858 |
'test': test_func, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
859 |
} |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
860 |
|
383
08762e4dac3c
1068 cleanup pylint errors caused by portable package
Tom Mueller <Tom.Mueller@sun.com>
parents:
365
diff
changeset
|
861 |
# all builds of IPS should have manpages |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
862 |
data_files += [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
863 |
(man1_dir, man1_files), |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
864 |
(man1m_dir, man1m_files), |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
865 |
(man5_dir, man5_files), |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
866 |
] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
867 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
868 |
if osname == 'sunos': |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
869 |
# Solaris-specific extensions are added here |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
870 |
data_files += [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
871 |
(zones_dir, zones_files), |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
872 |
(brand_dir, brand_files), |
1483
2276b6786711
6793 p2v support for ipkg-branded zones
<gerald.jelinek@sun.com>
parents:
1452
diff
changeset
|
873 |
(etcbrand_dir, etcbrand_files), |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
874 |
(smf_dir, smf_files), |
1498
1800f38ca303
6133 need to add pkg commands in /etc/security/exec_attr with "Software Installation" profile
John Sonnenschein <John.Sonnenschein@Sun.COM>
parents:
1483
diff
changeset
|
875 |
(execattrd_dir, execattrd_files), |
1800f38ca303
6133 need to add pkg commands in /etc/security/exec_attr with "Software Installation" profile
John Sonnenschein <John.Sonnenschein@Sun.COM>
parents:
1483
diff
changeset
|
876 |
(authattrd_dir, authattrd_files), |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
877 |
] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
878 |
|
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
879 |
if osname == 'sunos' or osname == "linux": |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
880 |
# Unix platforms which the elf extension has been ported to |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
881 |
# are specified here, so they are built automatically |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
882 |
elf_libraries = ['elf'] |
613
886277645061
3956 Windows API test cases fail
Tom Mueller <Tom.Mueller@sun.com>
parents:
591
diff
changeset
|
883 |
ext_modules += [ |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
884 |
Extension( |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
885 |
'elf', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
886 |
elf_srcs, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
887 |
include_dirs = include_dirs, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
888 |
libraries = elf_libraries, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
889 |
extra_compile_args = compile_args, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
890 |
extra_link_args = link_args |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
891 |
), |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
892 |
] |
290
6c5c87515614
160 Make IPS cross-platform for use across other supported OS's (missing files)
Tom Mueller <Tom.Mueller@Sun.COM>
parents:
diff
changeset
|
893 |
|
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
894 |
# Solaris has built-in md library and Solaris-specific arch extension |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
895 |
# All others use OpenSSL and cross-platform arch module |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
896 |
if osname == 'sunos': |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
897 |
elf_libraries += [ 'md' ] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
898 |
ext_modules += [ |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
899 |
Extension( |
430
3fb945d3bff3
2627 Test suite should have support for baselining
Brad Hall <bhall@eng.sun.com>
parents:
424
diff
changeset
|
900 |
'arch', |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
901 |
arch_srcs, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
902 |
include_dirs = include_dirs, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
903 |
extra_compile_args = compile_args, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
904 |
extra_link_args = link_args, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
905 |
define_macros = [('_FILE_OFFSET_BITS', '64')] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
906 |
), |
691
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
907 |
Extension( |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
908 |
'pspawn', |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
909 |
pspawn_srcs, |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
910 |
include_dirs = include_dirs, |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
911 |
extra_compile_args = compile_args, |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
912 |
extra_link_args = link_args, |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
913 |
define_macros = [('_FILE_OFFSET_BITS', '64')] |
cd1d9c1e82f3
4612 Alternative to os.fork needed for subprocess
johansen <johansen@sun.com>
parents:
661
diff
changeset
|
914 |
), |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
915 |
] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
916 |
else: |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
917 |
elf_libraries += [ 'ssl' ] |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
918 |
|
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
919 |
setup(cmdclass = cmdclasses, |
1516
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
920 |
name = 'pkg', |
8c950a3b4171
10485 move pkg(5) to Python 2.6
Rich Burridge <rich.burridge@sun.com>
parents:
1514
diff
changeset
|
921 |
version = '0.1', |
395
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
922 |
package_dir = {'pkg':'modules'}, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
923 |
packages = packages, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
924 |
data_files = data_files, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
925 |
ext_package = 'pkg', |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
926 |
ext_modules = ext_modules, |
0ae5e72ba7ee
1958 Modify setup.py to handle pkgrecv
Tom Mueller <Tom.Mueller@sun.com>
parents:
384
diff
changeset
|
927 |
) |