FazBrowse GitHub Viewer
|
Trending
|
URL:
|
Home
Tools:
[Download Repo ZIP]
[View Raw Code]
[Original HTTPS Page]
matplotlib/setup_external_compile.py at master · feisuo/matplotlib · GitHub
feisuo
matplotlib
Repository navigation
Code
Pull requests
Actions
Projects
Wiki
Security and quality
Insights
Expand file tree
Breadcrumbs
matplotlib
/
setup_external_compile.py
Copy path
More file actions
More file actions
Latest commit
History
History
History
69 lines (56 loc) · 2.14 KB
Breadcrumbs
matplotlib
/
setup_external_compile.py
Copy path
File metadata and controls
69 lines (56 loc) · 2.14 KB
Raw
Copy raw file
Download raw file
Open symbols panel
Edit and raw actions
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# This file is coppied from https://github.com/jbmohler/matplotlib-winbuild
# Only the needed functions were kept.
"""
This file extracts and builds library dependencies libpng, zlib, & freetype2 on
MS Windows. It also extract tcl/tk for the header files.
There are four possible build targets -- one for each permutation of VS 2008,
2010 and 32/64 bit. This builds the configuration that matches the Python
install that is executing.
For Python 2.6, 2.7, 3.2:
- VS 2008, 32 bit -- Windows SDK v7.0
- VS 2008, 64 bit -- Windows SDK v7.0
For Python 3.3, 3.4:
- VS 2010, 32 bit -- Windows SDK v7.1
- VS 2010, 64 bit -- Windows SDK v7.1
"""
from
__future__
import
print_function
,
absolute_import
import
sys
import
platform
import
os
import
glob
import
shutil
import
zipfile
import
tarfile
import
distutils
.
msvc9compiler
as
msvc
def
fixproj
(
project_file
,
bit_target
):
"""
:param bit_target: one of 'Win32' or 'x64'
"""
with
open
(
project_file
,
'r'
)
as
fd
:
content
=
'
\n
'
.
join
(
line
.
strip
()
for
line
in
fd
if
line
.
strip
())
content
=
content
.
replace
(
'Win32'
,
bit_target
).
replace
(
'x64'
,
bit_target
)
with
open
(
project_file
,
'w'
)
as
fd
:
fd
.
write
(
content
)
def
tar_extract
(
tar_file
,
target
):
with
tarfile
.
open
(
tar_file
,
'r:gz'
)
as
tgz
:
tgz
.
extractall
(
target
)
def
zip_extract
(
zip_file
,
target
):
with
zipfile
.
ZipFile
(
zip_file
)
as
zf
:
zf
.
extractall
(
target
)
# Configuration selection & declaration:
DEPSSRC
=
os
.
path
.
join
(
os
.
path
.
dirname
(
os
.
path
.
normpath
(
__file__
)),
'deps_source'
)
DEPSBUILD
=
os
.
path
.
join
(
os
.
path
.
dirname
(
os
.
path
.
normpath
(
__file__
)),
'build'
)
X64
=
platform
.
architecture
()[
0
]
==
'64bit'
PYVER
=
sys
.
version_info
[:
2
]
VS2010
=
PYVER
>=
(
3
,
3
)
# If not VS2010, then use VS2008
VCVARSALL
=
None
def
prepare_build_cmd
(
build_cmd
,
**
kwargs
):
global
VCVARSALL
if
VCVARSALL
==
None
:
candidate
=
msvc
.
find_vcvarsall
(
10.0
if
VS2010
else
9.0
)
if
candidate
==
None
:
raise
RuntimeError
(
'Microsoft VS {} required'
.
format
(
'2010'
if
VS2010
else
'2008'
))
else
:
VCVARSALL
=
candidate
return
build_cmd
.
format
(
vcvarsall
=
VCVARSALL
,
xXX
=
'x64'
if
X64
else
'x86'
,
**
kwargs
)
Back
|
FazBrowse Home
|
New Git URL