From 43156990ede056f0deddcd6cd87a34dd3fff002e Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 15 Sep 2014 11:33:12 +0200 Subject: [PATCH 1/2] Cmake: fix install python binding file * Can't use file(GLOB ...) function to get a file which doesn't exist yet. * Now no need to reconfigure CMake file after a first build to install the python binding file avtranscoder.py. --- src/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 03215e60..ef65f801 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -80,7 +80,7 @@ if(SWIG_FOUND) swig_link_libraries(avtranscoder-py avtranscoder-shared ${PYTHON_LIBRARIES}) # Install python interface - file(GLOB AVTRANSCODER_PYTHON_BINDING_FILE "${CMAKE_SWIG_OUTDIR}/*.py") + set(AVTRANSCODER_PYTHON_BINDING_FILE "${CMAKE_SWIG_OUTDIR}/AvTranscoder.py") install( FILES ${AVTRANSCODER_PYTHON_BINDING_FILE} RENAME "avtranscoder.py" From 2b35f8699aaccba602aee26183be066aa36617b0 Mon Sep 17 00:00:00 2001 From: Clement Champetier Date: Mon, 15 Sep 2014 11:34:38 +0200 Subject: [PATCH 2/2] CMake: fix python version * Never get python version from DEFINED PYTHONLIBS_VERSION_STRING, even if CMake 2.8.8. * Get python version from include path. * This will fix the python stuff when create packages. * Use PYTHON_INCLUDE_DIR instead of PYTHON_INCLUDE_DIRS (not defined in all CMake versions...). --- src/CMakeLists.txt | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index ef65f801..b87d7edc 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -61,12 +61,10 @@ if(SWIG_FOUND) if(PYTHONLIBS_FOUND) include_directories(${PYTHON_INCLUDE_PATH}) - if(NOT DEFINED PYTHONLIBS_VERSION_STRING) # Since CMake 2.8.8 - # Get Python version from include path - string(LENGTH ${PYTHON_INCLUDE_DIRS} PYTHON_INCLUDE_DIRS_LENGTH) - math(EXPR PYTHON_INCLUDE_DIRS_LENGTH "${PYTHON_INCLUDE_DIRS_LENGTH} - 3" ) - string(SUBSTRING ${PYTHON_INCLUDE_DIRS} ${PYTHON_INCLUDE_DIRS_LENGTH} 3 PYTHONLIBS_VERSION_STRING) - endif() + # Get Python version from include path + string(LENGTH ${PYTHON_INCLUDE_DIR} PYTHON_INCLUDE_DIRS_LENGTH) + math(EXPR PYTHON_INCLUDE_DIRS_LENGTH "${PYTHON_INCLUDE_DIRS_LENGTH} - 3" ) + string(SUBSTRING ${PYTHON_INCLUDE_DIR} ${PYTHON_INCLUDE_DIRS_LENGTH} 3 PYTHONLIBS_VERSION_STRING) # Swig flags set(CMAKE_SWIG_FLAGS -c++ -fcompact)