Skip to content
Snippets Groups Projects
Commit 25ed26af authored by Automated MSK Jenkins User's avatar Automated MSK Jenkins User
Browse files

automatic merge of project-template

parent a77f927b
No related branches found
No related tags found
No related merge requests found
# First check for python executable
if(NOT PYTHON_EXECUTABLE)
find_program(PYTHON_EXECUTABLE python)
if(NOT PYTHON_EXECUTABLE)
message(FATAL_ERROR "Please check for python before searching for mako")
endif()
endif()
# If mako was installed by this process previously, check that it is still there
if(MAKO_EXTERNAL_INSTALL)
execute_process(
COMMAND ${PYTHON_EXECUTABLE} "-c \"import mako\""
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/external/python
ERROR_VARIABLE DUMMY
OUTPUT_VARIABLE DUMMY
RESULT_VARIABLE MAKO_STILL_THERE
)
if(MAKO_STILL_THERE)
return()
endif()
endif()
# If mako is not found ...
if(NOT FOUND_MAKO)
# Then look for it by importing it
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import mako"
ERROR_VARIABLE DUMMY
OUTPUT_VARIABLE DUMMY
RESULT_VARIABLE FOUND_MAKO
)
if(FOUND_MAKO EQUAL 0)
message(STATUS "[Mako] Found")
set(FOUND_MAKO TRUE CACHE INTERNAL "Found mako python package")
set(MAKO_EXTERNAL_INSTALL FALSE CACHE INTERNAL "Manual install of mako")
return()
endif()
else()
# If mako already found then continue
# We have checked that it was still there, if we installed it
return()
endif()
message(STATUS "[Mako] Not found")
# Now try and install mako using pip
if(NOT PIP_EXECUTABLE)
find_program(PIP_EXECUTABLE pip)
endif()
if(NOT PIP_EXECUTABLE)
message(FATAL_ERROR "cannot install package without pip")
else()
message(STATUS "[pip] found: ${PIP_EXECUTABLE}")
endif()
# We install it in the build directory
execute_process(
COMMAND ${PIP_EXECUTABLE} install mako
--install-option=--install-purelib=${PROJECT_BINARY_DIR}/external/python
--install-option=--install-scripts=${PROJECT_BINARY_DIR}/external/python
--install-option=--prefix=${PROJECT_BINARY_DIR}/external/python
OUTPUT_VARIABLE PIP_OUTPUT
ERROR_VARIABLE PIP_ERROR
RESULT_VARIABLE PIP_INSTALLATION_WORKED
)
if(NOT PIP_INSTALLATION_WORKED EQUAL 0)
message(STATUS "${PIP_OUTPUT}")
message(STATUS "${PIP_ERROR}")
message(FATAL_ERROR "Could not install mako. Please see error message above")
else()
message(STATUS "[Mako] installed in ${PROJECT_BINARY_DIR}/external/python")
endif()
execute_process(
COMMAND ${PYTHON_EXECUTABLE} -c "import mako"
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}/external/python
ERROR_VARIABLE DUMMY
OUTPUT_VARIABLE DUMMY
RESULT_VARIABLE FOUND_MAKO
)
if(FOUND_MAKO EQUAL 0)
message(STATUS "[Mako] now available in build directory")
set(FOUND_MAKO TRUE CACHE INTERNAL "Found mako python package")
set(MAKO_EXTERNAL_INSTALL TRUE CACHE INTERNAL "Manual install of mako")
return()
else()
message(FATAL_ERROR "Could not install mako")
endif()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment