On Thursday, October 31, 2013 09:48:09 AM Kenney Phillis wrote:
> The find_package(PythonInterp) for cmake version 2.8.6 and newer is
> capable of properly handling multiple versions of python. This is
> extremely useful on mixed systems where a person may have Python2 and
> Python3 installed side by side.
> ---
>  CMakeLists.txt |   27 ++++++++++-----------------
>  1 file changed, 10 insertions(+), 17 deletions(-)
> 
> diff --git a/CMakeLists.txt b/CMakeLists.txt
> index b70ae1d..a542f80 100644
> --- a/CMakeLists.txt
> +++ b/CMakeLists.txt
> @@ -1,4 +1,4 @@
> -cmake_minimum_required(VERSION 2.6)
> +cmake_minimum_required(VERSION 2.8.6)
> 
>  list(APPEND CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/Modules")
> 
> @@ -12,7 +12,8 @@ INCLUDE (FindPkgConfig)
>  project (piglit)
> 
>  find_package(X11)
> -
> +#Find Python 2.6 interpreter.
> +find_package(PythonInterp 2.6 REQUIRED)
> 
>  option(PIGLIT_BUILD_GL_TESTS "Build tests for OpenGL" ON)
>  option(PIGLIT_BUILD_GLES1_TESTS "Build tests for OpenGL ES1" OFF)
> @@ -181,22 +182,11 @@ IF(PIGLIT_BUILD_GLX_TESTS)
>       pkg_check_modules(GLPROTO REQUIRED glproto)
>  ENDIF()
> 
> -# Check for presence of Python 2.6 or greater.
> -foreach(python_cmd python2 python)
> -     execute_process(
> -             COMMAND ${python_cmd} -c "import sys; assert '2.6' <= 
> sys.version < 
'3'"
> -             OUTPUT_QUIET
> -             ERROR_QUIET
> -             RESULT_VARIABLE python_version_check_error_code)
> -     if(python_version_check_error_code EQUAL 0)
> -             set(python ${python_cmd})
> -             break()
> -     endif(python_version_check_error_code EQUAL 0)
> -endforeach(python_cmd)
> -
> -if(NOT DEFINED python)
> +if(NOT PYTHONINTERP_FOUND)
>       message(FATAL_ERROR "python version 2.x (where x >= 6) required")
> -endif(NOT DEFINED python)
> +endif(NOT PYTHONINTERP_FOUND)
> +
> +set(python ${PYTHON_EXECUTABLE})
> 
>  # Check for the presence of several python packages, which are needed to
> build # generated tests.
> @@ -208,6 +198,9 @@ execute_process(
>  if(NOT import_numpy_error_code EQUAL 0)
>       message(FATAL_ERROR "numpy python module not found")
>  endif(NOT import_numpy_error_code EQUAL 0)
> +
> +# Check for the presence of python packages, which are needed to build
> +# html results output.
>  execute_process(
>       COMMAND ${python} -c "from mako.template import Template"
>       OUTPUT_QUIET

We actually require python 2.7 becasue we use argparse. The VMware folks run 
2.6 with argparse installed seperately (via pip or similar), you'll either 
need to bump the version to 2.7 or include an additional check to ensure that 
argparse can be imported.

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Piglit mailing list
Piglit@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/piglit

Reply via email to