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
d73168d9
Commit
d73168d9
authored
Jul 14, 2006
by
Martin v. Löwis
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Extend build_ssl to Win64, using VSExtComp.
parent
eda87127
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
78 additions
and
45 deletions
+78
-45
Misc/NEWS
Misc/NEWS
+2
-0
PCbuild/_ssl.vcproj
PCbuild/_ssl.vcproj
+10
-8
PCbuild/build_ssl.bat
PCbuild/build_ssl.bat
+4
-0
PCbuild/build_ssl.py
PCbuild/build_ssl.py
+61
-36
PCbuild/readme.txt
PCbuild/readme.txt
+1
-1
No files found.
Misc/NEWS
View file @
d73168d9
...
...
@@ -170,6 +170,8 @@ Extension Modules
Build
-----
- Automate Windows build process for the Win64 SSL module.
- '
configure
' now detects the zlib library the same way as distutils.
Previously, the slight difference could cause compilation errors of the
'
zlib
' module on systems with more than one version of zlib.
...
...
PCbuild/_ssl.vcproj
View file @
d73168d9
...
...
@@ -21,8 +21,8 @@
ATLMinimizesCRunTimeLibraryUsage=
"FALSE"
>
<Tool
Name=
"VCNMakeTool"
BuildCommandLine=
"
python build_ssl.py
"
ReBuildCommandLine=
"
python build_ssl.py -a
"
BuildCommandLine=
"
build_ssl.bat $(ConfigurationName)
"
ReBuildCommandLine=
"
build_ssl.bat -a $(ConfigurationName)
"
CleanCommandLine=
"echo Nothing to do"
Output=
"_ssl.pyd"
/>
</Configuration>
...
...
@@ -35,8 +35,8 @@
ATLMinimizesCRunTimeLibraryUsage=
"FALSE"
>
<Tool
Name=
"VCNMakeTool"
BuildCommandLine=
"
python_d -u build_ssl.py -d
"
ReBuildCommandLine=
"
python_d -u build_ssl.py -d -a
"
BuildCommandLine=
"
build_ssl.bat $(ConfigurationName)
"
ReBuildCommandLine=
"
build_ssl.bat -a $(ConfigurationName)
"
CleanCommandLine=
"echo Nothing to do"
Output=
"_ssl_d.pyd"
/>
</Configuration>
...
...
@@ -49,8 +49,9 @@
ATLMinimizesCRunTimeLibraryUsage=
"FALSE"
>
<Tool
Name=
"VCNMakeTool"
BuildCommandLine=
"python build_ssl.py"
ReBuildCommandLine=
"python build_ssl.py -a"
BuildCommandLine=
"build_ssl.bat $(ConfigurationName)"
ReBuildCommandLine=
"build_ssl.bat -a $(ConfigurationName)"
CleanCommandLine=
"echo Nothing to do"
Output=
"_ssl.pyd"
/>
</Configuration>
<Configuration
...
...
@@ -62,8 +63,9 @@
ATLMinimizesCRunTimeLibraryUsage=
"FALSE"
>
<Tool
Name=
"VCNMakeTool"
BuildCommandLine=
"python build_ssl.py"
ReBuildCommandLine=
"python build_ssl.py -a"
BuildCommandLine=
"build_ssl.bat $(ConfigurationName)"
ReBuildCommandLine=
"build_ssl.bat -a $(ConfigurationName)"
CleanCommandLine=
"echo Nothing to do"
Output=
"_ssl.pyd"
/>
</Configuration>
</Configurations>
...
...
PCbuild/build_ssl.bat
0 → 100644
View file @
d73168d9
@echo
off
if
not
defined
HOST_PYTHON
set
HOST_PYTHON
=
python
%HOST_PYTHON%
build_ssl
.py
%
1
%
2
PCbuild/build_ssl.py
View file @
d73168d9
...
...
@@ -84,9 +84,59 @@ def find_best_ssl_dir(sources):
print
"Could not find an SSL directory in '%s'"
%
(
sources
,)
return
best_name
def
run_32all_py
():
# ms\32all.bat will reconfigure OpenSSL and then try to build
# all outputs (debug/nondebug/dll/lib). So we filter the file
# to exclude any "nmake" commands and then execute.
tempname
=
"ms
\
\
32all_py.bat"
in_bat
=
open
(
"ms
\
\
32all.bat"
)
temp_bat
=
open
(
tempname
,
"w"
)
while
1
:
cmd
=
in_bat
.
readline
()
print
'cmd'
,
repr
(
cmd
)
if
not
cmd
:
break
if
cmd
.
strip
()[:
5
].
lower
()
==
"nmake"
:
continue
temp_bat
.
write
(
cmd
)
in_bat
.
close
()
temp_bat
.
close
()
os
.
system
(
tempname
)
try
:
os
.
remove
(
tempname
)
except
:
pass
def
run_configure
(
configure
,
do_script
):
os
.
system
(
"perl Configure "
+
configure
)
os
.
system
(
do_script
)
def
main
():
debug
=
"-d"
in
sys
.
argv
build_all
=
"-a"
in
sys
.
argv
if
sys
.
argv
[
-
1
]
==
"Release"
:
arch
=
"x86"
debug
=
False
configure
=
"VC-WIN32"
makefile
=
"32.mak"
elif
sys
.
argv
[
-
1
]
==
"Debug"
:
arch
=
"x86"
debug
=
True
configure
=
"VC-WIN32"
makefile
=
"d32.mak"
elif
sys
.
argv
[
-
1
]
==
"ReleaseItanium"
:
arch
=
"ia64"
debug
=
False
configure
=
"VC-WIN64I"
do_script
=
"ms
\
\
do_win64i"
makefile
=
"ms
\
\
nt.mak"
os
.
environ
[
"VSEXTCOMP_USECL"
]
=
"MS_ITANIUM"
elif
sys
.
argv
[
-
1
]
==
"ReleaseAMD64"
:
arch
=
"amd64"
debug
=
False
configure
=
"VC-WIN64A"
do_script
=
"ms
\
\
do_win64a"
makefile
=
"ms
\
\
nt.mak"
os
.
environ
[
"VSEXTCOMP_USECL"
]
=
"MS_OPTERON"
make_flags
=
""
if
build_all
:
make_flags
=
"-a"
...
...
@@ -107,49 +157,24 @@ def main():
try
:
os
.
chdir
(
ssl_dir
)
# If the ssl makefiles do not exist, we invoke Perl to generate them.
if
not
os
.
path
.
isfile
(
os
.
path
.
join
(
ssl_dir
,
"32.mak"
))
or
\
not
os
.
path
.
isfile
(
os
.
path
.
join
(
ssl_dir
,
"d32.mak"
)):
if
not
os
.
path
.
isfile
(
makefile
):
print
"Creating the makefiles..."
# Put our working Perl at the front of our path
os
.
environ
[
"PATH"
]
=
os
.
path
.
split
(
perl
)[
0
]
+
\
os
.
pathsep
+
\
os
.
environ
[
"PATH"
]
# ms\32all.bat will reconfigure OpenSSL and then try to build
# all outputs (debug/nondebug/dll/lib). So we filter the file
# to exclude any "nmake" commands and then execute.
tempname
=
"ms
\
\
32all_py.bat"
in_bat
=
open
(
"ms
\
\
32all.bat"
)
temp_bat
=
open
(
tempname
,
"w"
)
while
1
:
cmd
=
in_bat
.
readline
()
print
'cmd'
,
repr
(
cmd
)
if
not
cmd
:
break
if
cmd
.
strip
()[:
5
].
lower
()
==
"nmake"
:
continue
temp_bat
.
write
(
cmd
)
in_bat
.
close
()
temp_bat
.
close
()
os
.
system
(
tempname
)
try
:
os
.
remove
(
tempname
)
except
:
pass
if
arch
==
"x86"
:
run_32all_py
()
else
:
run_configure
(
configure
,
do_script
)
# Now run make.
print
"Executing nmake over the ssl makefiles..."
if
debug
:
rc
=
os
.
system
(
"nmake /nologo -f d32.mak"
)
if
rc
:
print
"Executing d32.mak failed"
print
rc
sys
.
exit
(
rc
)
else
:
rc
=
os
.
system
(
"nmake /nologo -f 32.mak"
)
if
rc
:
print
"Executing 32.mak failed"
print
rc
sys
.
exit
(
rc
)
rc
=
os
.
system
(
"nmake /nologo -f "
+
makefile
)
if
rc
:
print
"Executing d32.mak failed"
print
rc
sys
.
exit
(
rc
)
finally
:
os
.
chdir
(
old_cd
)
# And finally, we can build the _ssl module itself for Python.
...
...
PCbuild/readme.txt
View file @
d73168d9
...
...
@@ -264,7 +264,7 @@ SDK, in particular the 64-bit support. This includes an Itanium compiler
In addition, you need the Visual Studio plugin for external C compilers,
from http://sf.net/projects/vsextcomp. The plugin will wrap cl.exe, to
locate the proper target compiler, and convert compiler options
accordingly. The project files require atleast version 0.
8
.
accordingly. The project files require atleast version 0.
9
.
Building for AMD64
------------------
...
...
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