From db8cb800847aadbed1285515a1da90abf091b546 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-No=C3=ABl=20Grad?= Date: Thu, 17 Oct 2019 15:34:15 +0200 Subject: [PATCH] Use modern CMake install procedure Remove the non-standard CMAKE_INSTALL_EXEC_PREFIX variable in favor of CMAKE_INSTALL_PREFIX. Install espressomd in the standard python3.X folder instead of the deprecated python3 folder. Remove duplicated code logic. Use explicit keyword arguments in calls to functions from distutils.sysconfig. --- CMakeLists.txt | 2 +- src/python/espressomd/CMakeLists.txt | 2 +- testsuite/cmake/CMakeLists.txt | 5 +---- 3 files changed, 3 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0c2e89bfe45..6958d0ce6f0 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -242,7 +242,7 @@ if(WITH_PYTHON) execute_process( COMMAND ${PYTHON_EXECUTABLE} -c - "import distutils.sysconfig as cg; print(cg.get_python_lib(1,0,prefix='${CMAKE_INSTALL_EXEC_PREFIX}'))" + "import distutils.sysconfig as cg; print(cg.get_python_lib(prefix='${CMAKE_INSTALL_PREFIX}', plat_specific=True, standard_lib=False).replace('${CMAKE_INSTALL_PREFIX}/', '', 1))" OUTPUT_VARIABLE PYTHON_INSTDIR OUTPUT_STRIP_TRAILING_WHITESPACE) endif(NOT PYTHON_INSTDIR) diff --git a/src/python/espressomd/CMakeLists.txt b/src/python/espressomd/CMakeLists.txt index 598211d8449..81886ba76dd 100644 --- a/src/python/espressomd/CMakeLists.txt +++ b/src/python/espressomd/CMakeLists.txt @@ -128,4 +128,4 @@ endforeach(auxfile) # Install Python files install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} DESTINATION ${PYTHON_INSTDIR} - FILES_MATCHING PATTERN "*.py") + FILES_MATCHING PATTERN "*.py" PATTERN "CMakeFiles" EXCLUDE) diff --git a/testsuite/cmake/CMakeLists.txt b/testsuite/cmake/CMakeLists.txt index a8450031784..2ff3b05030e 100644 --- a/testsuite/cmake/CMakeLists.txt +++ b/testsuite/cmake/CMakeLists.txt @@ -11,10 +11,7 @@ function(CMAKE_TEST) set(cmake_tests ${cmake_tests} ${TEST_FILE} PARENT_SCOPE) endfunction(CMAKE_TEST) -execute_process( - COMMAND "${PYTHON_EXECUTABLE}" -c "from distutils import sysconfig as sc;print(sc.get_python_lib(prefix='${CMAKE_INSTALL_PREFIX}', plat_specific=True, standard_lib=False))" - OUTPUT_VARIABLE PYTHON_DIR - OUTPUT_STRIP_TRAILING_WHITESPACE) +set(PYTHON_DIR ${CMAKE_INSTALL_PREFIX}/${PYTHON_INSTDIR}) cmake_test(FILE test_install.sh DEPENDENCIES BashUnitTests.sh)