blob: e221e939aa3c79a1de5c226264a1365d8b51a031 (
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
|
--- cmake/modules/PythonMacros.cmake
+++ cmake/modules/PythonMacros.cmake
@@ -23,40 +23,42 @@
# Install the source file.
INSTALL(FILES ${SOURCE_FILE} DESTINATION ${DESINATION_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)
-
- if(WIN32)
- string(REGEX REPLACE ".:/" "/" _basepath "${_basepath}")
- endif(WIN32)
-
- SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename})
- SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc)
-
- FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath})
-
- SET(_message "-DMESSAGE=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})
+ # 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)
+
+ SET(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename})
+ SET(_bin_pyc ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filenamebase}.pyc)
+
+ FILE(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath})
+
+ SET(_message "-DMESSAGE=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})
- INSTALL(FILES ${_bin_pyc} DESTINATION ${DESINATION_DIR})
+ INSTALL(FILES ${_bin_pyc} DESTINATION ${DESINATION_DIR})
+ ENDIF("$ENV{PYTHONDONTWRITEBYTECODE}" STREQUAL "")
ENDMACRO(PYTHON_INSTALL)
|