Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
b5c93e9c
Commit
b5c93e9c
authored
Mar 05, 2011
by
Georg Brandl
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add .hgeol file and fix newlines in the 2.6 branch.
parent
6feb9003
Changes
21
Hide whitespace changes
Inline
Side-by-side
Showing
21 changed files
with
475 additions
and
436 deletions
+475
-436
.hgeol
.hgeol
+39
-0
Doc/make.bat
Doc/make.bat
+58
-58
PC/VS7.1/build_ssl.bat
PC/VS7.1/build_ssl.bat
+12
-12
PC/VS8.0/build.bat
PC/VS8.0/build.bat
+17
-17
PC/VS8.0/build_env.bat
PC/VS8.0/build_env.bat
+1
-1
PC/VS8.0/build_pgo.bat
PC/VS8.0/build_pgo.bat
+41
-41
PC/VS8.0/build_ssl.bat
PC/VS8.0/build_ssl.bat
+12
-12
PC/VS8.0/env.bat
PC/VS8.0/env.bat
+5
-5
PC/VS8.0/idle.bat
PC/VS8.0/idle.bat
+15
-15
PC/VS8.0/rt.bat
PC/VS8.0/rt.bat
+52
-52
Tools/buildbot/build-amd64.bat
Tools/buildbot/build-amd64.bat
+6
-6
Tools/buildbot/build.bat
Tools/buildbot/build.bat
+7
-7
Tools/buildbot/buildmsi.bat
Tools/buildbot/buildmsi.bat
+20
-20
Tools/buildbot/clean-amd64.bat
Tools/buildbot/clean-amd64.bat
+7
-7
Tools/buildbot/clean.bat
Tools/buildbot/clean.bat
+7
-7
Tools/buildbot/external-amd64.bat
Tools/buildbot/external-amd64.bat
+20
-20
Tools/buildbot/external-common.bat
Tools/buildbot/external-common.bat
+45
-45
Tools/buildbot/external.bat
Tools/buildbot/external.bat
+21
-21
Tools/buildbot/test-amd64.bat
Tools/buildbot/test-amd64.bat
+3
-3
Tools/buildbot/test.bat
Tools/buildbot/test.bat
+3
-3
Tools/msi/merge.py
Tools/msi/merge.py
+84
-84
No files found.
.hgeol
0 → 100644
View file @
b5c93e9c
[patterns]
# Non human-editable files are binary
**.dsp = BIN
**.dsw = BIN
**.mk = BIN
**.sln = BIN
**.vcproj = BIN
**.vsprops = BIN
**.aif = BIN
**.au = BIN
**.bmp = BIN
**.db = BIN
**.exe = BIN
**.icns = BIN
**.gif = BIN
**.ico = BIN
**.info = BIN
**.jpg = BIN
**.pck = BIN
**.png = BIN
**.psd = BIN
**.tar = BIN
**.xar = BIN
**.zip = BIN
Lib/email/test/data/msg_26.txt = BIN
Lib/test/sndhdrdata/sndhdr.* = BIN
Lib/test/decimaltestdata/*.decTest = BIN
# All other files (which presumably are human-editable) are "native".
# This must be the last rule!
** = native
[repository]
native = LF
Doc/make.bat
View file @
b5c93e9c
@@echo
off
setlocal
set
SVNROOT
=
http
://svn.python.org/projects
if
"
%PYTHON%
"
EQU
""
set
PYTHON
=
..\pcbuild\python
if
"
%HTMLHELP%
"
EQU
""
set
HTMLHELP
=
%ProgramFiles%
\HTML
Help
Workshop
\hhc.exe
if
"
%DISTVERSION%
"
EQU
""
for
/f
"usebackq"
%%v
in
(
`
%PYTHON%
tools/sphinxext/patchlevel.py`
)
do
set
DISTVERSION
=
%%v
if
"
%
1"
EQU
""
goto
help
if
"
%
1"
EQU
"html"
goto
build
if
"
%
1"
EQU
"htmlhelp"
goto
build
if
"
%
1"
EQU
"latex"
goto
build
if
"
%
1"
EQU
"text"
goto
build
if
"
%
1"
EQU
"suspicious"
goto
build
if
"
%
1"
EQU
"linkcheck"
goto
build
if
"
%
1"
EQU
"changes"
goto
build
if
"
%
1"
EQU
"checkout"
goto
checkout
if
"
%
1"
EQU
"update"
goto
update
:help
set
this
=
%~n0
echo
HELP
echo
.
echo
%this%
checkout
echo
%this%
update
echo
%this%
html
echo
%this%
htmlhelp
echo
%this%
latex
echo
%this%
text
echo
%this%
suspicious
echo
%this%
linkcheck
echo
%this%
changes
echo
.
goto
end
:checkout
svn
co
%SVNROOT%
/external/Sphinx
-
0
.6.5/sphinx
tools
/sphinx
svn
co
%SVNROOT%
/external/docutils
-
0
.6/docutils
tools
/docutils
svn
co
%SVNROOT%
/external/Jinja
-
2
.3.1/jinja2
tools
/jinja
2
svn
co
%SVNROOT%
/external/Pygments
-
1
.3.1/pygments
tools
/pygments
goto
end
:update
svn
update
tools
/sphinx
svn
update
tools
/docutils
svn
update
tools
/jinja
2
svn
update
tools
/pygments
goto
end
:build
if
not
exist
build
mkdir
build
if
not
exist
build
\
%
1
mkdir
build
\
%
1
if
not
exist
build
\doctrees
mkdir
build
\doctrees
cmd
/C
%PYTHON%
tools
\sphinx
-build
.py
-b
%
1
-dbuild
\doctrees .
build
\
%
*
if
"
%
1"
EQU
"htmlhelp"
"
%HTMLHELP%
"
build
\htmlhelp\python
%DISTVERSION
:.
=
%
.hhp
goto
end
:end
@@echo
off
setlocal
set
SVNROOT
=
http
://svn.python.org/projects
if
"
%PYTHON%
"
EQU
""
set
PYTHON
=
..\pcbuild\python
if
"
%HTMLHELP%
"
EQU
""
set
HTMLHELP
=
%ProgramFiles%
\HTML
Help
Workshop
\hhc.exe
if
"
%DISTVERSION%
"
EQU
""
for
/f
"usebackq"
%%v
in
(
`
%PYTHON%
tools/sphinxext/patchlevel.py`
)
do
set
DISTVERSION
=
%%v
if
"
%
1"
EQU
""
goto
help
if
"
%
1"
EQU
"html"
goto
build
if
"
%
1"
EQU
"htmlhelp"
goto
build
if
"
%
1"
EQU
"latex"
goto
build
if
"
%
1"
EQU
"text"
goto
build
if
"
%
1"
EQU
"suspicious"
goto
build
if
"
%
1"
EQU
"linkcheck"
goto
build
if
"
%
1"
EQU
"changes"
goto
build
if
"
%
1"
EQU
"checkout"
goto
checkout
if
"
%
1"
EQU
"update"
goto
update
:help
set
this
=
%~n0
echo
HELP
echo
.
echo
%this%
checkout
echo
%this%
update
echo
%this%
html
echo
%this%
htmlhelp
echo
%this%
latex
echo
%this%
text
echo
%this%
suspicious
echo
%this%
linkcheck
echo
%this%
changes
echo
.
goto
end
:checkout
svn
co
%SVNROOT%
/external/Sphinx
-
0
.6.5/sphinx
tools
/sphinx
svn
co
%SVNROOT%
/external/docutils
-
0
.6/docutils
tools
/docutils
svn
co
%SVNROOT%
/external/Jinja
-
2
.3.1/jinja2
tools
/jinja
2
svn
co
%SVNROOT%
/external/Pygments
-
1
.3.1/pygments
tools
/pygments
goto
end
:update
svn
update
tools
/sphinx
svn
update
tools
/docutils
svn
update
tools
/jinja
2
svn
update
tools
/pygments
goto
end
:build
if
not
exist
build
mkdir
build
if
not
exist
build
\
%
1
mkdir
build
\
%
1
if
not
exist
build
\doctrees
mkdir
build
\doctrees
cmd
/C
%PYTHON%
tools
\sphinx
-build
.py
-b
%
1
-dbuild
\doctrees .
build
\
%
*
if
"
%
1"
EQU
"htmlhelp"
"
%HTMLHELP%
"
build
\htmlhelp\python
%DISTVERSION
:.
=
%
.hhp
goto
end
:end
PC/VS7.1/build_ssl.bat
View file @
b5c93e9c
if
"
%
1"
==
"ReleaseAMD64"
call
"
%MSSdk%
\SetEnv"
/XP
64
/RETAIL
@echo
off
if
not
defined
HOST_PYTHON
(
if
%
1
EQU
Debug
(
set
HOST_PYTHON
=
python_d
.exe
)
ELSE
(
set
HOST_PYTHON
=
python
.exe
)
)
%HOST_PYTHON%
build_ssl
.py
%
1
%
2
if
"
%
1"
==
"ReleaseAMD64"
call
"
%MSSdk%
\SetEnv"
/XP
64
/RETAIL
@echo
off
if
not
defined
HOST_PYTHON
(
if
%
1
EQU
Debug
(
set
HOST_PYTHON
=
python_d
.exe
)
ELSE
(
set
HOST_PYTHON
=
python
.exe
)
)
%HOST_PYTHON%
build_ssl
.py
%
1
%
2
PC/VS8.0/build.bat
View file @
b5c93e9c
@echo
off
rem A batch program to build or rebuild a particular configuration.
rem just for convenience.
setlocal
set
platf
=
Win32
set
conf
=
Release
set
build
=
/build
:CheckOpts
if
"
%
1"
==
"-c"
(
set
conf
=
%
2
)
&
shift
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-p"
(
set
platf
=
%
2
)
&
shift
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-r"
(
set
build
=
/rebuild
)
&
shift
&
goto
CheckOpts
set
cmd
=
devenv
pcbuild
.sln
%build%
"
%conf%
|
%platf%
"
echo
%cmd%
%cmd%
@echo
off
rem A batch program to build or rebuild a particular configuration.
rem just for convenience.
setlocal
set
platf
=
Win32
set
conf
=
Release
set
build
=
/build
:CheckOpts
if
"
%
1"
==
"-c"
(
set
conf
=
%
2
)
&
shift
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-p"
(
set
platf
=
%
2
)
&
shift
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-r"
(
set
build
=
/rebuild
)
&
shift
&
goto
CheckOpts
set
cmd
=
devenv
pcbuild
.sln
%build%
"
%conf%
|
%platf%
"
echo
%cmd%
%cmd%
PC/VS8.0/build_env.bat
View file @
b5c93e9c
@
%comspec%
/k
env
.bat
%
*
@
%comspec%
/k
env
.bat
%
*
PC/VS8.0/build_pgo.bat
View file @
b5c93e9c
@echo
off
rem A batch program to build PGO (Profile guided optimization) by first
rem building instrumented binaries, then running the testsuite, and
rem finally building the optimized code.
rem Note, after the first instrumented run, one can just keep on
rem building the PGUpdate configuration while developing.
setlocal
set
platf
=
Win32
rem use the performance testsuite. This is quick and simple
set
job1
=
..\..\tools\pybench\pybench.py
-n
1
-C
1
-
-with-gc
set
path1
=
..\..\tools\pybench
rem or the whole testsuite for more thorough testing
set
job2
=
..\..\lib\test\regrtest.py
set
path2
=
..\..\lib
set
job
=
%job1
%
set
clrpath
=
%path1
%
:CheckOpts
if
"
%
1"
==
"-p"
(
set
platf
=
%
2
)
&
shift
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-2"
(
set
job
=
%job2
%
)
&
(
set
clrpath
=
%path2
%
)
&
shift
&
goto
CheckOpts
set
PGI
=
%platf%
-pgi
set
PGO
=
%platf%
-pgo
@echo
on
rem build the instrumented version
call
build
-p
%platf%
-c
PGInstrument
rem remove .pyc files, .pgc files and execute the job
%PGI%
\python.exe
rmpyc
.py
%clrpath%
del
%PGI%
\
*
.pgc
%PGI%
\python.exe
%job%
rem finally build the optimized version
if
exist
%PGO%
del
/s /q
%PGO%
call
build
-p
%platf%
-c
PGUpdate
@echo
off
rem A batch program to build PGO (Profile guided optimization) by first
rem building instrumented binaries, then running the testsuite, and
rem finally building the optimized code.
rem Note, after the first instrumented run, one can just keep on
rem building the PGUpdate configuration while developing.
setlocal
set
platf
=
Win32
rem use the performance testsuite. This is quick and simple
set
job1
=
..\..\tools\pybench\pybench.py
-n
1
-C
1
-
-with-gc
set
path1
=
..\..\tools\pybench
rem or the whole testsuite for more thorough testing
set
job2
=
..\..\lib\test\regrtest.py
set
path2
=
..\..\lib
set
job
=
%job1
%
set
clrpath
=
%path1
%
:CheckOpts
if
"
%
1"
==
"-p"
(
set
platf
=
%
2
)
&
shift
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-2"
(
set
job
=
%job2
%
)
&
(
set
clrpath
=
%path2
%
)
&
shift
&
goto
CheckOpts
set
PGI
=
%platf%
-pgi
set
PGO
=
%platf%
-pgo
@echo
on
rem build the instrumented version
call
build
-p
%platf%
-c
PGInstrument
rem remove .pyc files, .pgc files and execute the job
%PGI%
\python.exe
rmpyc
.py
%clrpath%
del
%PGI%
\
*
.pgc
%PGI%
\python.exe
%job%
rem finally build the optimized version
if
exist
%PGO%
del
/s /q
%PGO%
call
build
-p
%platf%
-c
PGUpdate
PC/VS8.0/build_ssl.bat
View file @
b5c93e9c
@echo
off
if
not
defined
HOST_PYTHON
(
if
%
1
EQU
Debug
(
set
HOST_PYTHON
=
python_d
.exe
if
not
exist
python26_d
.dll
exit
1
)
ELSE
(
set
HOST_PYTHON
=
python
.exe
if
not
exist
python26
.dll
exit
1
)
)
%HOST_PYTHON%
build_ssl
.py
%
1
%
2
%
3
@echo
off
if
not
defined
HOST_PYTHON
(
if
%
1
EQU
Debug
(
set
HOST_PYTHON
=
python_d
.exe
if
not
exist
python26_d
.dll
exit
1
)
ELSE
(
set
HOST_PYTHON
=
python
.exe
if
not
exist
python26
.dll
exit
1
)
)
%HOST_PYTHON%
build_ssl
.py
%
1
%
2
%
3
PC/VS8.0/env.bat
View file @
b5c93e9c
@echo
off
set
VS8
=
%ProgramFiles%
\Microsoft
Visual
Studio
8
echo
Build
environments
:
x86
,
ia64
,
amd64
,
x86_amd64
,
x86_ia64
echo
.
call
"
%VS8
%
\VC\vcvarsall.bat"
%
1
@echo
off
set
VS8
=
%ProgramFiles%
\Microsoft
Visual
Studio
8
echo
Build
environments
:
x86
,
ia64
,
amd64
,
x86_amd64
,
x86_ia64
echo
.
call
"
%VS8
%
\VC\vcvarsall.bat"
%
1
PC/VS8.0/idle.bat
View file @
b5c93e9c
@echo
off
rem start idle
rem Usage: idle [-d]
rem -d Run Debug build (python_d.exe). Else release build.
setlocal
set
exe
=
python
PATH
%PATH%
;
..\..\..\tcltk\bin
if
"
%
1"
==
"-d"
(
set
exe
=
python_d
)
&
shift
set
cmd
=
%exe%
../../Lib/idlelib/idle.py
%
1
%
2
%
3
%
4
%
5
%
6
%
7
%
8
%
9
echo
on
%cmd%
@echo
off
rem start idle
rem Usage: idle [-d]
rem -d Run Debug build (python_d.exe). Else release build.
setlocal
set
exe
=
python
PATH
%PATH%
;
..\..\..\tcltk\bin
if
"
%
1"
==
"-d"
(
set
exe
=
python_d
)
&
shift
set
cmd
=
%exe%
../../Lib/idlelib/idle.py
%
1
%
2
%
3
%
4
%
5
%
6
%
7
%
8
%
9
echo
on
%cmd%
PC/VS8.0/rt.bat
View file @
b5c93e9c
@echo
off
rem Run Tests. Run the regression test suite.
rem Usage: rt [-d] [-O] [-q] regrtest_args
rem -d Run Debug build (python_d.exe). Else release build.
rem -O Run python.exe or python_d.exe (see -d) with -O.
rem -q "quick" -- normally the tests are run twice, the first time
rem after deleting all the .py[co] files reachable from Lib/.
rem -q runs the tests just once, and without deleting .py[co] files.
rem All leading instances of these switches are shifted off, and
rem whatever remains is passed to regrtest.py. For example,
rem rt -O -d -x test_thread
rem runs
rem python_d -O ../lib/test/regrtest.py -x test_thread
rem twice, and
rem rt -q -g test_binascii
rem runs
rem python_d ../lib/test/regrtest.py -g test_binascii
rem to generate the expected-output file for binascii quickly.
rem
rem Confusing: if you want to pass a comma-separated list, like
rem -u network,largefile
rem then you have to quote it on the rt line, like
rem rt -u "network,largefile"
setlocal
set
exe
=
python
set
qmode
=
set
dashO
=
PATH
%PATH%
;
..\..\..\tcltk\bin
:CheckOpts
if
"
%
1"
==
"-O"
(
set
dashO
=
-O
)
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-q"
(
set
qmode
=
yes
)
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-d"
(
set
exe
=
python_d
)
&
shift
&
goto
CheckOpts
set
cmd
=
%exe%
%dashO%
-E -tt
../../lib/test/regrtest.py
%
1
%
2
%
3
%
4
%
5
%
6
%
7
%
8
%
9
if
defined
qmode
goto
Qmode
echo
Deleting
.pyc/.pyo
files
...
%exe%
rmpyc
.py
echo
on
%cmd%
@echo
off
echo
About
to
run
again
without
deleting
.pyc/.pyo
first
:
pause
:Qmode
echo
on
%cmd%
@echo
off
rem Run Tests. Run the regression test suite.
rem Usage: rt [-d] [-O] [-q] regrtest_args
rem -d Run Debug build (python_d.exe). Else release build.
rem -O Run python.exe or python_d.exe (see -d) with -O.
rem -q "quick" -- normally the tests are run twice, the first time
rem after deleting all the .py[co] files reachable from Lib/.
rem -q runs the tests just once, and without deleting .py[co] files.
rem All leading instances of these switches are shifted off, and
rem whatever remains is passed to regrtest.py. For example,
rem rt -O -d -x test_thread
rem runs
rem python_d -O ../lib/test/regrtest.py -x test_thread
rem twice, and
rem rt -q -g test_binascii
rem runs
rem python_d ../lib/test/regrtest.py -g test_binascii
rem to generate the expected-output file for binascii quickly.
rem
rem Confusing: if you want to pass a comma-separated list, like
rem -u network,largefile
rem then you have to quote it on the rt line, like
rem rt -u "network,largefile"
setlocal
set
exe
=
python
set
qmode
=
set
dashO
=
PATH
%PATH%
;
..\..\..\tcltk\bin
:CheckOpts
if
"
%
1"
==
"-O"
(
set
dashO
=
-O
)
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-q"
(
set
qmode
=
yes
)
&
shift
&
goto
CheckOpts
if
"
%
1"
==
"-d"
(
set
exe
=
python_d
)
&
shift
&
goto
CheckOpts
set
cmd
=
%exe%
%dashO%
-E -tt
../../lib/test/regrtest.py
%
1
%
2
%
3
%
4
%
5
%
6
%
7
%
8
%
9
if
defined
qmode
goto
Qmode
echo
Deleting
.pyc/.pyo
files
...
%exe%
rmpyc
.py
echo
on
%cmd%
@echo
off
echo
About
to
run
again
without
deleting
.pyc/.pyo
first
:
pause
:Qmode
echo
on
%cmd%
Tools/buildbot/build-amd64.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"compile"
step
.
cmd
/c
Tools
\buildbot\external
-amd
64
.bat
call
"
%VS9
0COMNTOOLS
%
\..\..\VC\vcvarsall.bat"
x86_amd64
cmd
/c
Tools
\buildbot\clean
-amd
64
.bat
vcbuild
/useenv
PCbuild
\kill_python.vcproj
"Debug|x64"
&&
PCbuild
\amd64\kill_python_d.exe
vcbuild
PCbuild
\pcbuild.sln
"Debug|x64"
@rem
Used
by
the
buildbot
"compile"
step
.
cmd
/c
Tools
\buildbot\external
-amd
64
.bat
call
"
%VS9
0COMNTOOLS
%
\..\..\VC\vcvarsall.bat"
x86_amd64
cmd
/c
Tools
\buildbot\clean
-amd
64
.bat
vcbuild
/useenv
PCbuild
\kill_python.vcproj
"Debug|x64"
&&
PCbuild
\amd64\kill_python_d.exe
vcbuild
PCbuild
\pcbuild.sln
"Debug|x64"
Tools/buildbot/build.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"compile"
step
.
cmd
/c
Tools
\buildbot\external.bat
call
"
%VS9
0COMNTOOLS
%vsvars3
2.bat"
cmd
/c
Tools
\buildbot\clean.bat
vcbuild
/useenv
PCbuild
\kill_python.vcproj
"Debug|Win32"
&&
PCbuild
\kill_python_d.exe
vcbuild
/useenv
PCbuild
\pcbuild.sln
"Debug|Win32"
@rem
Used
by
the
buildbot
"compile"
step
.
cmd
/c
Tools
\buildbot\external.bat
call
"
%VS9
0COMNTOOLS
%vsvars3
2.bat"
cmd
/c
Tools
\buildbot\clean.bat
vcbuild
/useenv
PCbuild
\kill_python.vcproj
"Debug|Win32"
&&
PCbuild
\kill_python_d.exe
vcbuild
/useenv
PCbuild
\pcbuild.sln
"Debug|Win32"
Tools/buildbot/buildmsi.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"buildmsi"
step
.
cmd
/c
Tools
\buildbot\external.bat
@rem
build
release
versions
of
things
call
"
%VS9
0COMNTOOLS
%vsvars3
2.bat"
@rem
build
Python
vcbuild
/useenv
PCbuild
\pcbuild.sln
"Release|Win32"
@rem
build
the
documentation
bash
.exe
-c
'cd Doc;make PYTHON=python2.5 update htmlhelp'
"
%ProgramFiles%
\HTML Help Workshop\hhc.exe"
Doc
\build\htmlhelp\python26a3.hhp
@rem
buold
the
MSI
file
cd
PC
nmake
/f
icons
.mak
cd
..\Tools\msi
del
*
.msi
nmake
/f
msisupport
.mak
%HOST_PYTHON%
msi
.py
@rem
Used
by
the
buildbot
"buildmsi"
step
.
cmd
/c
Tools
\buildbot\external.bat
@rem
build
release
versions
of
things
call
"
%VS9
0COMNTOOLS
%vsvars3
2.bat"
@rem
build
Python
vcbuild
/useenv
PCbuild
\pcbuild.sln
"Release|Win32"
@rem
build
the
documentation
bash
.exe
-c
'cd Doc;make PYTHON=python2.5 update htmlhelp'
"
%ProgramFiles%
\HTML Help Workshop\hhc.exe"
Doc
\build\htmlhelp\python26a3.hhp
@rem
buold
the
MSI
file
cd
PC
nmake
/f
icons
.mak
cd
..\Tools\msi
del
*
.msi
nmake
/f
msisupport
.mak
%HOST_PYTHON%
msi
.py
Tools/buildbot/clean-amd64.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"clean"
step
.
call
"
%VS9
0COMNTOOLS
%
\..\..\VC\vcvarsall.bat"
x86_amd64
cd
PCbuild
@echo
Deleting
.pyc/.pyo
files
...
del
/s
Lib
\
*
.pyc
Lib
\
*
.pyo
vcbuild
/clean
pcbuild
.sln
"Release|x64"
vcbuild
/clean
pcbuild
.sln
"Debug|x64"
@rem
Used
by
the
buildbot
"clean"
step
.
call
"
%VS9
0COMNTOOLS
%
\..\..\VC\vcvarsall.bat"
x86_amd64
cd
PCbuild
@echo
Deleting
.pyc/.pyo
files
...
del
/s
Lib
\
*
.pyc
Lib
\
*
.pyo
vcbuild
/clean
pcbuild
.sln
"Release|x64"
vcbuild
/clean
pcbuild
.sln
"Debug|x64"
Tools/buildbot/clean.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"clean"
step
.
call
"
%VS9
0COMNTOOLS
%vsvars3
2.bat"
@echo
Deleting
.pyc/.pyo
files
...
del
/s
Lib
\
*
.pyc
Lib
\
*
.pyo
cd
PCbuild
vcbuild
/clean
pcbuild
.sln
"Release|Win32"
vcbuild
/clean
pcbuild
.sln
"Debug|Win32"
@rem
Used
by
the
buildbot
"clean"
step
.
call
"
%VS9
0COMNTOOLS
%vsvars3
2.bat"
@echo
Deleting
.pyc/.pyo
files
...
del
/s
Lib
\
*
.pyc
Lib
\
*
.pyo
cd
PCbuild
vcbuild
/clean
pcbuild
.sln
"Release|Win32"
vcbuild
/clean
pcbuild
.sln
"Debug|Win32"
Tools/buildbot/external-amd64.bat
View file @
b5c93e9c
@rem
Fetches
(
and
builds
if
necessary
)
external
dependencies
@rem
Assume
we
start
inside
the
Python
source
directory
call
"Tools\buildbot\external-common.bat"
call
"
%VS9
0COMNTOOLS
%
\..\..\VC\vcvarsall.bat"
x86_amd64
if
not
exist
tcltk64
\bin\tcl85g.dll
(
cd
tcl
-
8
.5.2.1\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
clean
all
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
install
cd
..\..
)
if
not
exist
tcltk64
\bin\tk85g.dll
(
cd
tk
-
8
.5.2.0\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
TCLDIR
=
..\..\tcl
-
8
.5.2.1
clean
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
TCLDIR
=
..\..\tcl
-
8
.5.2.1
all
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
TCLDIR
=
..\..\tcl
-
8
.5.2.1
install
cd
..\..
)
@rem
Fetches
(
and
builds
if
necessary
)
external
dependencies
@rem
Assume
we
start
inside
the
Python
source
directory
call
"Tools\buildbot\external-common.bat"
call
"
%VS9
0COMNTOOLS
%
\..\..\VC\vcvarsall.bat"
x86_amd64
if
not
exist
tcltk64
\bin\tcl85g.dll
(
cd
tcl
-
8
.5.2.1\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
clean
all
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
install
cd
..\..
)
if
not
exist
tcltk64
\bin\tk85g.dll
(
cd
tk
-
8
.5.2.0\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
TCLDIR
=
..\..\tcl
-
8
.5.2.1
clean
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
TCLDIR
=
..\..\tcl
-
8
.5.2.1
all
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
MACHINE
=
AMD64
INSTALLDIR
=
..\..\tcltk64
TCLDIR
=
..\..\tcl
-
8
.5.2.1
install
cd
..\..
)
Tools/buildbot/external-common.bat
View file @
b5c93e9c
@rem
Common
file
shared
between
external
.bat
and
external
-amd
64
.bat.
Responsible
for
@rem
fetching
external
components
into
the
root
\..
buildbot
directories
.
cd
..
@rem
XXX
:
If
you
need
to
force
the
buildbots
to
start
from
a
fresh
environment
,
uncomment
@rem
the
following
,
check
it
in
,
then
check
it
out
,
comment
it
out
,
then
check
it
back
in
.
@rem
if
exist
bzip2
-
1
.0.5
rd
/s/q
bzip2
-
1
.0.5
@rem
if
exist
tcltk
rd
/s/q
tcltk
@rem
if
exist
tcltk64
rd
/s/q
tcltk64
@rem
if
exist
tcl8
.4.12
rd
/s/q
tcl8
.4.12
@rem
if
exist
tcl8
.4.16
rd
/s/q
tcl8
.4.16
@rem
if
exist
tcl
-
8
.4.18.1
rd
/s/q
tcl
-
8
.4.18.1
@rem
if
exist
tk8
.4.12
rd
/s/q
tk8
.4.12
@rem
if
exist
tk8
.4.16
rd
/s/q
tk8
.4.16
@rem
if
exist
tk
-
8
.4.18.1
rd
/s/q
tk
-
8
.4.18.1
@rem
if
exist
db
-
4
.4.20
rd
/s/q
db
-
4
.4.20
@rem
if
exist
db
-
4
.7.25.0
rd
/s/q
db
-
4
.7.25.0
@rem
if
exist
openssl
-
0
.9.8l
rd
/s/q
openssl
-
0
.9.8l
@rem
if
exist
sqlite
-
3
.5.9
rd
/s/q
sqlite
-
3
.5.9
@rem
bzip
if
not
exist
bzip2
-
1
.0.5
(
rd
/s/q
bzip2
-
1
.0.3
svn
export
http
://svn.python.org/projects/external/bzip2
-
1
.0.5
)
@rem
Berkeley
DB
if
exist
db
-
4
.4.20
rd
/s/q
db
-
4
.4.20
if
not
exist
db
-
4
.7.25.0
svn
export
http
://svn.python.org/projects/external/db
-
4
.7.25.0
@rem
OpenSSL
if
not
exist
openssl
-
0
.9.8l
svn
export
http
://svn.python.org/projects/external/openssl
-
0
.9.8l
@rem
tcl
/tk
if
not
exist
tcl
-
8
.5.2.1
(
rd
/s/q
tcltk
tcltk64
svn
export
http
://svn.python.org/projects/external/tcl
-
8
.5.2.1
)
if
not
exist
tk
-
8
.5.2.0
svn
export
http
://svn.python.org/projects/external/tk
-
8
.5.2.0
@rem
sqlite3
if
not
exist
sqlite
-
3
.5.9
(
rd
/s/q
sqlite
-source
-
3
.3.4
svn
export
http
://svn.python.org/projects/external/sqlite
-
3
.5.9
)
@rem
Common
file
shared
between
external
.bat
and
external
-amd
64
.bat.
Responsible
for
@rem
fetching
external
components
into
the
root
\..
buildbot
directories
.
cd
..
@rem
XXX
:
If
you
need
to
force
the
buildbots
to
start
from
a
fresh
environment
,
uncomment
@rem
the
following
,
check
it
in
,
then
check
it
out
,
comment
it
out
,
then
check
it
back
in
.
@rem
if
exist
bzip2
-
1
.0.5
rd
/s/q
bzip2
-
1
.0.5
@rem
if
exist
tcltk
rd
/s/q
tcltk
@rem
if
exist
tcltk64
rd
/s/q
tcltk64
@rem
if
exist
tcl8
.4.12
rd
/s/q
tcl8
.4.12
@rem
if
exist
tcl8
.4.16
rd
/s/q
tcl8
.4.16
@rem
if
exist
tcl
-
8
.4.18.1
rd
/s/q
tcl
-
8
.4.18.1
@rem
if
exist
tk8
.4.12
rd
/s/q
tk8
.4.12
@rem
if
exist
tk8
.4.16
rd
/s/q
tk8
.4.16
@rem
if
exist
tk
-
8
.4.18.1
rd
/s/q
tk
-
8
.4.18.1
@rem
if
exist
db
-
4
.4.20
rd
/s/q
db
-
4
.4.20
@rem
if
exist
db
-
4
.7.25.0
rd
/s/q
db
-
4
.7.25.0
@rem
if
exist
openssl
-
0
.9.8l
rd
/s/q
openssl
-
0
.9.8l
@rem
if
exist
sqlite
-
3
.5.9
rd
/s/q
sqlite
-
3
.5.9
@rem
bzip
if
not
exist
bzip2
-
1
.0.5
(
rd
/s/q
bzip2
-
1
.0.3
svn
export
http
://svn.python.org/projects/external/bzip2
-
1
.0.5
)
@rem
Berkeley
DB
if
exist
db
-
4
.4.20
rd
/s/q
db
-
4
.4.20
if
not
exist
db
-
4
.7.25.0
svn
export
http
://svn.python.org/projects/external/db
-
4
.7.25.0
@rem
OpenSSL
if
not
exist
openssl
-
0
.9.8l
svn
export
http
://svn.python.org/projects/external/openssl
-
0
.9.8l
@rem
tcl
/tk
if
not
exist
tcl
-
8
.5.2.1
(
rd
/s/q
tcltk
tcltk64
svn
export
http
://svn.python.org/projects/external/tcl
-
8
.5.2.1
)
if
not
exist
tk
-
8
.5.2.0
svn
export
http
://svn.python.org/projects/external/tk
-
8
.5.2.0
@rem
sqlite3
if
not
exist
sqlite
-
3
.5.9
(
rd
/s/q
sqlite
-source
-
3
.3.4
svn
export
http
://svn.python.org/projects/external/sqlite
-
3
.5.9
)
Tools/buildbot/external.bat
View file @
b5c93e9c
@rem
Fetches
(
and
builds
if
necessary
)
external
dependencies
@rem
Assume
we
start
inside
the
Python
source
directory
call
"Tools\buildbot\external-common.bat"
call
"
%VS9
0COMNTOOLS
%
\vsvars32.bat"
if
not
exist
tcltk
\bin\tcl85g.dll
(
@rem
all
and
install
need
to
be
separate
invocations
,
otherwise
nmakehlp
is
not
found
on
install
cd
tcl
-
8
.5.2.1\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
clean
all
nmake
-f
makefile
.vc
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
install
cd
..\..
)
if
not
exist
tcltk
\bin\tk85g.dll
(
cd
tk
-
8
.5.2.0\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
TCLDIR
=
..\..\tcl
-
8
.5.2.1
clean
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
TCLDIR
=
..\..\tcl
-
8
.5.2.1
all
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
TCLDIR
=
..\..\tcl
-
8
.5.2.1
install
cd
..\..
)
@rem
Fetches
(
and
builds
if
necessary
)
external
dependencies
@rem
Assume
we
start
inside
the
Python
source
directory
call
"Tools\buildbot\external-common.bat"
call
"
%VS9
0COMNTOOLS
%
\vsvars32.bat"
if
not
exist
tcltk
\bin\tcl85g.dll
(
@rem
all
and
install
need
to
be
separate
invocations
,
otherwise
nmakehlp
is
not
found
on
install
cd
tcl
-
8
.5.2.1\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
clean
all
nmake
-f
makefile
.vc
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
install
cd
..\..
)
if
not
exist
tcltk
\bin\tk85g.dll
(
cd
tk
-
8
.5.2.0\win
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
TCLDIR
=
..\..\tcl
-
8
.5.2.1
clean
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
TCLDIR
=
..\..\tcl
-
8
.5.2.1
all
nmake
-f
makefile
.vc
COMPILERFLAGS
=
-DWINVER
=
0x0500
OPTS
=
noxp
DEBUG
=
1
INSTALLDIR
=
..\..\tcltk
TCLDIR
=
..\..\tcl
-
8
.5.2.1
install
cd
..\..
)
Tools/buildbot/test-amd64.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"test"
step
.
cd
PCbuild
call
rt
.bat
-q -d -x
64
-uall -rw
@rem
Used
by
the
buildbot
"test"
step
.
cd
PCbuild
call
rt
.bat
-q -d -x
64
-uall -rw
Tools/buildbot/test.bat
View file @
b5c93e9c
@rem
Used
by
the
buildbot
"test"
step
.
cd
PCbuild
call
rt
.bat
-d -q -uall -rw
@rem
Used
by
the
buildbot
"test"
step
.
cd
PCbuild
call
rt
.bat
-d -q -uall -rw
Tools/msi/merge.py
View file @
b5c93e9c
import
msilib
,
os
,
win32com
,
tempfile
,
sys
PCBUILD
=
"PCBuild"
certname
=
None
from
config
import
*
Win64
=
"amd64"
in
PCBUILD
mod_dir
=
os
.
path
.
join
(
os
.
environ
[
"ProgramFiles"
],
"Common Files"
,
"Merge Modules"
)
msi
=
None
if
len
(
sys
.
argv
)
==
2
:
msi
=
sys
.
argv
[
1
]
if
Win64
:
modules
=
[
"Microsoft_VC90_CRT_x86_x64.msm"
,
"policy_9_0_Microsoft_VC90_CRT_x86_x64.msm"
]
if
not
msi
:
msi
=
"python-%s.amd64.msi"
%
full_current_version
else
:
modules
=
[
"Microsoft_VC90_CRT_x86.msm"
,
"policy_9_0_Microsoft_VC90_CRT_x86.msm"
]
if
not
msi
:
msi
=
"python-%s.msi"
%
full_current_version
for
i
,
n
in
enumerate
(
modules
):
modules
[
i
]
=
os
.
path
.
join
(
mod_dir
,
n
)
def
merge
(
msi
,
feature
,
rootdir
,
modules
):
cab_and_filecount
=
[]
# Step 1: Merge databases, extract cabfiles
m
=
msilib
.
MakeMerge2
()
m
.
OpenLog
(
"merge.log"
)
print
"Opened Log"
m
.
OpenDatabase
(
msi
)
print
"Opened DB"
for
module
in
modules
:
print
module
m
.
OpenModule
(
module
,
0
)
print
"Opened Module"
,
module
m
.
Merge
(
feature
,
rootdir
)
print
"Errors:"
for
e
in
m
.
Errors
:
print
e
.
Type
,
e
.
ModuleTable
,
e
.
DatabaseTable
print
" Modkeys:"
,
for
s
in
e
.
ModuleKeys
:
print
s
,
print
print
" DBKeys:"
,
for
s
in
e
.
DatabaseKeys
:
print
s
,
print
cabname
=
tempfile
.
mktemp
(
suffix
=
".cab"
)
m
.
ExtractCAB
(
cabname
)
cab_and_filecount
.
append
((
cabname
,
len
(
m
.
ModuleFiles
)))
m
.
CloseModule
()
m
.
CloseDatabase
(
True
)
m
.
CloseLog
()
# Step 2: Add CAB files
i
=
msilib
.
MakeInstaller
()
db
=
i
.
OpenDatabase
(
msi
,
win32com
.
client
.
constants
.
msiOpenDatabaseModeTransact
)
v
=
db
.
OpenView
(
"SELECT LastSequence FROM Media"
)
v
.
Execute
(
None
)
maxmedia
=
-
1
while
1
:
r
=
v
.
Fetch
()
if
not
r
:
break
seq
=
r
.
IntegerData
(
1
)
if
seq
>
maxmedia
:
maxmedia
=
seq
print
"Start of Media"
,
maxmedia
for
cabname
,
count
in
cab_and_filecount
:
stream
=
"merged%d"
%
maxmedia
msilib
.
add_data
(
db
,
"Media"
,
[(
maxmedia
+
1
,
maxmedia
+
count
,
None
,
"#"
+
stream
,
None
,
None
)])
msilib
.
add_stream
(
db
,
stream
,
cabname
)
os
.
unlink
(
cabname
)
maxmedia
+=
count
# The merge module sets ALLUSERS to 1 in the property table.
# This is undesired; delete that
v
=
db
.
OpenView
(
"DELETE FROM Property WHERE Property='ALLUSERS'"
)
v
.
Execute
(
None
)
v
.
Close
()
db
.
Commit
()
merge
(
msi
,
"SharedCRT"
,
"TARGETDIR"
,
modules
)
# certname (from config.py) should be (a substring of)
# the certificate subject, e.g. "Python Software Foundation"
if
certname
:
os
.
system
(
'signtool sign /n "%s" /t http://timestamp.verisign.com/scripts/timestamp.dll %s'
%
(
certname
,
msi
))
import
msilib
,
os
,
win32com
,
tempfile
,
sys
PCBUILD
=
"PCBuild"
certname
=
None
from
config
import
*
Win64
=
"amd64"
in
PCBUILD
mod_dir
=
os
.
path
.
join
(
os
.
environ
[
"ProgramFiles"
],
"Common Files"
,
"Merge Modules"
)
msi
=
None
if
len
(
sys
.
argv
)
==
2
:
msi
=
sys
.
argv
[
1
]
if
Win64
:
modules
=
[
"Microsoft_VC90_CRT_x86_x64.msm"
,
"policy_9_0_Microsoft_VC90_CRT_x86_x64.msm"
]
if
not
msi
:
msi
=
"python-%s.amd64.msi"
%
full_current_version
else
:
modules
=
[
"Microsoft_VC90_CRT_x86.msm"
,
"policy_9_0_Microsoft_VC90_CRT_x86.msm"
]
if
not
msi
:
msi
=
"python-%s.msi"
%
full_current_version
for
i
,
n
in
enumerate
(
modules
):
modules
[
i
]
=
os
.
path
.
join
(
mod_dir
,
n
)
def
merge
(
msi
,
feature
,
rootdir
,
modules
):
cab_and_filecount
=
[]
# Step 1: Merge databases, extract cabfiles
m
=
msilib
.
MakeMerge2
()
m
.
OpenLog
(
"merge.log"
)
print
"Opened Log"
m
.
OpenDatabase
(
msi
)
print
"Opened DB"
for
module
in
modules
:
print
module
m
.
OpenModule
(
module
,
0
)
print
"Opened Module"
,
module
m
.
Merge
(
feature
,
rootdir
)
print
"Errors:"
for
e
in
m
.
Errors
:
print
e
.
Type
,
e
.
ModuleTable
,
e
.
DatabaseTable
print
" Modkeys:"
,
for
s
in
e
.
ModuleKeys
:
print
s
,
print
print
" DBKeys:"
,
for
s
in
e
.
DatabaseKeys
:
print
s
,
print
cabname
=
tempfile
.
mktemp
(
suffix
=
".cab"
)
m
.
ExtractCAB
(
cabname
)
cab_and_filecount
.
append
((
cabname
,
len
(
m
.
ModuleFiles
)))
m
.
CloseModule
()
m
.
CloseDatabase
(
True
)
m
.
CloseLog
()
# Step 2: Add CAB files
i
=
msilib
.
MakeInstaller
()
db
=
i
.
OpenDatabase
(
msi
,
win32com
.
client
.
constants
.
msiOpenDatabaseModeTransact
)
v
=
db
.
OpenView
(
"SELECT LastSequence FROM Media"
)
v
.
Execute
(
None
)
maxmedia
=
-
1
while
1
:
r
=
v
.
Fetch
()
if
not
r
:
break
seq
=
r
.
IntegerData
(
1
)
if
seq
>
maxmedia
:
maxmedia
=
seq
print
"Start of Media"
,
maxmedia
for
cabname
,
count
in
cab_and_filecount
:
stream
=
"merged%d"
%
maxmedia
msilib
.
add_data
(
db
,
"Media"
,
[(
maxmedia
+
1
,
maxmedia
+
count
,
None
,
"#"
+
stream
,
None
,
None
)])
msilib
.
add_stream
(
db
,
stream
,
cabname
)
os
.
unlink
(
cabname
)
maxmedia
+=
count
# The merge module sets ALLUSERS to 1 in the property table.
# This is undesired; delete that
v
=
db
.
OpenView
(
"DELETE FROM Property WHERE Property='ALLUSERS'"
)
v
.
Execute
(
None
)
v
.
Close
()
db
.
Commit
()
merge
(
msi
,
"SharedCRT"
,
"TARGETDIR"
,
modules
)
# certname (from config.py) should be (a substring of)
# the certificate subject, e.g. "Python Software Foundation"
if
certname
:
os
.
system
(
'signtool sign /n "%s" /t http://timestamp.verisign.com/scripts/timestamp.dll %s'
%
(
certname
,
msi
))
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment