blob: 9b5d9204203511dd3d385503e6320f6876b97c4e (
plain)
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
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
|
From: Arfrever Frehtes Taifersar Arahesis <Arfrever@Apache.Org>
Date: Wed, 07 Nov 2012 19:08:01 +0000
Subject: Respect PYTHONDONTWRITEBYTECODE environmental variable.
X-Git-Url: http://quickgit.kde.org/?p=kdelibs.git&a=commitdiff&h=5a3cedacdb6485f7551090467cffb2cdf150b05a
---
Respect PYTHONDONTWRITEBYTECODE environmental variable.
BUG: 276151
REVIEW: 107228
---
--- a/cmake/modules/PythonMacros.cmake
+++ b/cmake/modules/PythonMacros.cmake
@@ -23,54 +23,56 @@
# Install the source file.
INSTALL(FILES ${SOURCE_FILE} DESTINATION ${DESTINATION_DIR})
- # Byte compile and install the .pyc file.
- GET_FILENAME_COMPONENT(_absfilename ${SOURCE_FILE} ABSOLUTE)
- GET_FILENAME_COMPONENT(_filename ${SOURCE_FILE} NAME)
- GET_FILENAME_COMPONENT(_filenamebase ${SOURCE_FILE} NAME_WE)
- GET_FILENAME_COMPONENT(_basepath ${SOURCE_FILE} PATH)
+ # Byte compile and install the .pyc file.
+ IF("$ENV{PYTHONDONTWRITEBYTECODE}" STREQUAL "")
+ GET_FILENAME_COMPONENT(_absfilename ${SOURCE_FILE} ABSOLUTE)
+ GET_FILENAME_COMPONENT(_filename ${SOURCE_FILE} NAME)
+ GET_FILENAME_COMPONENT(_filenamebase ${SOURCE_FILE} NAME_WE)
+ GET_FILENAME_COMPONENT(_basepath ${SOURCE_FILE} PATH)
- if(WIN32)
- string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}")
- endif(WIN32)
+ if(WIN32)
+ string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}")
+ endif(WIN32)
- SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename})
+ SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename})
- # Python 3.2 changed the pyc file location
- IF(PYTHON_SHORT_VERSION GREATER 3.1)
- # To get the right version for suffix
- STRING(REPLACE "." "" _suffix ${PYTHON_SHORT_VERSION})
- SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/__pycache__/${_filenamebase}.cpython-${_suffix}.pyc)
- ELSE(PYTHON_SHORT_VERSION GREATER 3.1)
- SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc)
- ENDIF(PYTHON_SHORT_VERSION GREATER 3.1)
+ # Python 3.2 changed the pyc file location
+ IF(PYTHON_SHORT_VERSION GREATER 3.1)
+ # To get the right version for suffix
+ STRING(REPLACE "." "" _suffix ${PYTHON_SHORT_VERSION})
+ SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/__pycache__/${_filenamebase}.cpython-${_suffix}.pyc)
+ ELSE(PYTHON_SHORT_VERSION GREATER 3.1)
+ SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc)
+ ENDIF(PYTHON_SHORT_VERSION GREATER 3.1)
- FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath})
+ FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath})
- SET(_message "Byte-compiling ${_bin_py}")
+ SET(_message "Byte-compiling ${_bin_py}")
- GET_FILENAME_COMPONENT(_abs_bin_py ${_bin_py} ABSOLUTE)
- IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself.
- ADD_CUSTOM_COMMAND(
- TARGET compile_python_files
- COMMAND ${CMAKE_COMMAND} -E echo ${_message}
- COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
- DEPENDS ${_absfilename}
- )
- ELSE(_abs_bin_py STREQUAL ${_absfilename})
- ADD_CUSTOM_COMMAND(
- TARGET compile_python_files
- COMMAND ${CMAKE_COMMAND} -E echo ${_message}
- COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py}
- COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
- DEPENDS ${_absfilename}
- )
- ENDIF(_abs_bin_py STREQUAL ${_absfilename})
+ GET_FILENAME_COMPONENT(_abs_bin_py ${_bin_py} ABSOLUTE)
+ IF(_abs_bin_py STREQUAL ${_absfilename}) # Don't copy the file onto itself.
+ ADD_CUSTOM_COMMAND(
+ TARGET compile_python_files
+ COMMAND ${CMAKE_COMMAND} -E echo ${_message}
+ COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
+ DEPENDS ${_absfilename}
+ )
+ ELSE(_abs_bin_py STREQUAL ${_absfilename})
+ ADD_CUSTOM_COMMAND(
+ TARGET compile_python_files
+ COMMAND ${CMAKE_COMMAND} -E echo ${_message}
+ COMMAND ${CMAKE_COMMAND} -E copy ${_absfilename} ${_bin_py}
+ COMMAND ${PYTHON_EXECUTABLE} ${_python_compile_py} ${_bin_py}
+ DEPENDS ${_absfilename}
+ )
+ ENDIF(_abs_bin_py STREQUAL ${_absfilename})
- IF(PYTHON_SHORT_VERSION GREATER 3.1)
- INSTALL(FILES ${_bin_pyc} DESTINATION ${DESTINATION_DIR}/__pycache__/)
- ELSE (PYTHON_SHORT_VERSION GREATER 3.1)
- INSTALL(FILES ${_bin_pyc} DESTINATION ${DESTINATION_DIR})
- ENDIF (PYTHON_SHORT_VERSION GREATER 3.1)
+ IF(PYTHON_SHORT_VERSION GREATER 3.1)
+ INSTALL(FILES ${_bin_pyc} DESTINATION ${DESTINATION_DIR}/__pycache__/)
+ ELSE (PYTHON_SHORT_VERSION GREATER 3.1)
+ INSTALL(FILES ${_bin_pyc} DESTINATION ${DESTINATION_DIR})
+ ENDIF (PYTHON_SHORT_VERSION GREATER 3.1)
+ ENDIF("$ENV{PYTHONDONTWRITEBYTECODE}" STREQUAL "")
ENDMACRO(PYTHON_INSTALL)
|