diff --git a/.arcconfig b/.arcconfig new file mode 100644 --- /dev/null +++ b/.arcconfig @@ -0,0 +1,3 @@ +{ + "phabricator.uri" : "https://phabricator.kde.org/" +} diff --git a/cmake-modules/KDEPython.cmake b/cmake-modules/KDEPython.cmake --- a/cmake-modules/KDEPython.cmake +++ b/cmake-modules/KDEPython.cmake @@ -35,15 +35,22 @@ get_filename_component(_absfilename ${SOURCE_FILE} ABSOLUTE) get_filename_component(_filename ${SOURCE_FILE} NAME) get_filename_component(_filenamebase ${SOURCE_FILE} NAME_WE) - get_filename_component(_basepath ${SOURCE_FILE} PATH) + get_filename_component(_basepath ${SOURCE_FILE} DIRECTORY) file(RELATIVE_PATH _relativefilename ${CMAKE_SOURCE_DIR} ${_absfilename}) + if(IS_ABSOLUTE ${_basepath}) + set(_bin_py ${_basepath}/${_filename}) + set(_bin_pyc "${_basepath}/__pycache__/${_filenamebase}.cpython-${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}.pyc") + file(MAKE_DIRECTORY ${_basepath}) + else() set(_bin_py ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/${_filename}) set(_bin_pyc "${CMAKE_CURRENT_BINARY_DIR}/${_basepath}/__pycache__/${_filenamebase}.cpython-${PYTHON_VERSION_MAJOR}${PYTHON_VERSION_MINOR}.pyc") - set(_py_install_dir "${DESTINATION_DIR}/__pycache__/") file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${_basepath}) +endif() + + set(_py_install_dir "${DESTINATION_DIR}/__pycache__/") # Setting because it will be displayed later, in compile_python_files set(_message "Byte-compiling ${_bin_py} to ${_bin_pyc}") @@ -108,8 +115,13 @@ set(TARGET ${CMAKE_INSTALL_PREFIX}/${DATA_INSTALL_DIR}/${PROJECT_NAME}/${_pyname}) set(LINK_NAME ${CMAKE_INSTALL_PREFIX}/${BIN_INSTALL_DIR}/${_exename}) - GET_FILENAME_COMPONENT(abs_link_name $ENV{DESTDIR}/${LINK_NAME} ABSOLUTE) - GET_FILENAME_COMPONENT(link_path $ENV{DESTDIR}/${LINK_NAME} PATH) + if("$ENV{DESTDIR}" STREQUAL "" AND IS_ABSOLUTE ${LINK_NAME}) + GET_FILENAME_COMPONENT(abs_link_name ${LINK_NAME} ABSOLUTE) + GET_FILENAME_COMPONENT(link_path ${LINK_NAME} PATH) + else() + GET_FILENAME_COMPONENT(abs_link_name $ENV{DESTDIR}/${LINK_NAME} ABSOLUTE) + GET_FILENAME_COMPONENT(link_path $ENV{DESTDIR}/${LINK_NAME} PATH) + endif() GET_FILENAME_COMPONENT(abs_link_path ${link_path} ABSOLUTE) FILE(MAKE_DIRECTORY ${abs_link_path}) GET_FILENAME_COMPONENT(abs_target ${TARGET} ABSOLUTE)