Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
setuptools
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
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jérome Perrin
setuptools
Commits
bafe9fba
Commit
bafe9fba
authored
Jan 16, 2016
by
Steve Dower
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Issue #25850: Use cross-compilation by default for 64-bit Windows.
parent
d569bea4
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
5 additions
and
16 deletions
+5
-16
_msvccompiler.py
_msvccompiler.py
+5
-16
No files found.
_msvccompiler.py
View file @
bafe9fba
...
@@ -125,11 +125,11 @@ def _find_exe(exe, paths=None):
...
@@ -125,11 +125,11 @@ def _find_exe(exe, paths=None):
return
exe
return
exe
# A map keyed by get_platform() return values to values accepted by
# A map keyed by get_platform() return values to values accepted by
# 'vcvarsall.bat'.
Note a cross-compile may combine these (eg, 'x86_amd64' is
# 'vcvarsall.bat'.
Always cross-compile from x86 to work with the
#
the param to cross-compile on x86 targetting amd64.)
#
lighter-weight MSVC installs that do not include native 64-bit tools.
PLAT_TO_VCVARS
=
{
PLAT_TO_VCVARS
=
{
'win32'
:
'x86'
,
'win32'
:
'x86'
,
'win-amd64'
:
'amd64'
,
'win-amd64'
:
'
x86_
amd64'
,
}
}
# A map keyed by get_platform() return values to the file under
# A map keyed by get_platform() return values to the file under
...
@@ -193,19 +193,8 @@ class MSVCCompiler(CCompiler) :
...
@@ -193,19 +193,8 @@ class MSVCCompiler(CCompiler) :
raise
DistutilsPlatformError
(
"--plat-name must be one of {}"
raise
DistutilsPlatformError
(
"--plat-name must be one of {}"
.
format
(
tuple
(
PLAT_TO_VCVARS
)))
.
format
(
tuple
(
PLAT_TO_VCVARS
)))
# On x86, 'vcvarsall.bat amd64' creates an env that doesn't work;
# Get the vcvarsall.bat spec for the requested platform.
# to cross compile, you use 'x86_amd64'.
plat_spec
=
PLAT_TO_VCVARS
[
plat_name
]
# On AMD64, 'vcvarsall.bat amd64' is a native build env; to cross
# compile use 'x86' (ie, it runs the x86 compiler directly)
if
plat_name
==
get_platform
()
or
plat_name
==
'win32'
:
# native build or cross-compile to win32
plat_spec
=
PLAT_TO_VCVARS
[
plat_name
]
else
:
# cross compile from win32 -> some 64bit
plat_spec
=
'{}_{}'
.
format
(
PLAT_TO_VCVARS
[
get_platform
()],
PLAT_TO_VCVARS
[
plat_name
]
)
vc_env
=
_get_vc_env
(
plat_spec
)
vc_env
=
_get_vc_env
(
plat_spec
)
if
not
vc_env
:
if
not
vc_env
:
...
...
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