1
1
if (NOT ENABLE_CXXONLY)
2
2
3
- # We Use the spack generated build time python path to
3
+ # We use the spack generated build time python path to
4
4
# pick up all of the python modules needed for our runtime.
5
- # Some modules need to install from directories other that
6
- # site-packages so we strip away site-packages pack and
5
+ # Since some modules need to install from directories other than
6
+ # site-packages, we strip away site-packages and pack and
7
7
# copy the full contents of the python library prefix to
8
8
# our virtual env in spheral-setup-venv.sh
9
- string (REGEX REPLACE "lib\/ python3.9\/ site-packages\/ ?[A-Za-z]*:" "* " VIRTUALENV_PYTHONPATH_COPY "${SPACK_PYTHONPATH} :" )
9
+ string (REGEX REPLACE "lib\/ python3.9\/ site-packages\/ ?[A-Za-z]*:" "; " VIRTUALENV_PYTHONPATH_COPY "${SPACK_PYTHONPATH} :" )
10
10
11
11
set (SPHERAL_ATS_BUILD_CONFIG_ARGS )
12
12
@@ -35,7 +35,7 @@ if (NOT ENABLE_CXXONLY)
35
35
endif ()
36
36
37
37
string (REPLACE ";" " " SPHERAL_ATS_BUILD_CONFIG_ARGS_STRING "${SPHERAL_ATS_BUILD_CONFIG_ARGS} " )
38
-
38
+
39
39
configure_file (
40
40
"${CMAKE_CURRENT_SOURCE_DIR} /spheral-setup-venv.in"
41
41
"${CMAKE_CURRENT_BINARY_DIR} /spheral-setup-venv.sh"
@@ -61,7 +61,7 @@ if (NOT ENABLE_CXXONLY)
61
61
"${CMAKE_CURRENT_BINARY_DIR} /performance/performance.py"
62
62
)
63
63
64
- install (FILES
64
+ install (FILES
65
65
"${CMAKE_CURRENT_BINARY_DIR} /spheral-setup-venv.sh"
66
66
"${CMAKE_CURRENT_BINARY_DIR} /spheral-env.sh"
67
67
"${CMAKE_CURRENT_BINARY_DIR} /atstest.sh"
@@ -76,6 +76,24 @@ if (NOT ENABLE_CXXONLY)
76
76
)
77
77
78
78
install (CODE "execute_process( \
79
- COMMAND bash ${CMAKE_CURRENT_BINARY_DIR} /spheral-setup-venv.sh \
80
- )" )
79
+ COMMAND env PYTHONPATH=${SPACK_PYTHONPATH} ${PYTHON_EXE} -m venv .venv --without-pip --prompt \
80
+ 'Spheral>')"
81
+ )
82
+
83
+ foreach (_venv_dir ${VIRTUALENV_PYTHONPATH_COPY} )
84
+ if (NOT ${_venv_dir} MATCHES "sphinx" )
85
+ install (DIRECTORY ${_venv_dir}
86
+ USE_SOURCE_PERMISSIONS
87
+ MESSAGE_NEVER
88
+ DESTINATION "${CMAKE_INSTALL_PREFIX} /.venv"
89
+ PATTERN "*\/ .spack*" EXCLUDE
90
+ PATTERN "*\/ tests\/ *" EXCLUDE
91
+ PATTERN "*.pyc" EXCLUDE
92
+ )
93
+ endif ()
94
+ endforeach ()
95
+
96
+ install (CODE "execute_process( \
97
+ COMMAND bash ${CMAKE_CURRENT_BINARY_DIR} /spheral-setup-venv.sh)"
98
+ )
81
99
endif ()
0 commit comments