Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
0.26
-
None
-
None
-
Windows, cmake 2.8.11.2
Description
On a windows build system where python is installed at "C:\Program Files\Python26" (space in path name) the INSTALL project fails every time.
1. Execute a cmake with "-DCMAKE_INSTALL_PREFIX=install".
The generated managementgen\cmake_install.cmake has
list(APPEND CMAKE_ABSOLUTE_DESTINATION_FILES "c:\Program Files\Python26\Lib\site-packages/qmfgen")
2. Execute "make install" with (VS2008)
devenv qpid-cpp.sln /build "Debug|Win32" /project INSTALL
The complaint from install is
1>CMake Warning (dev) at managementgen/cmake_install.cmake:35 (list): 1> Syntax error in cmake code at 1> D:/Users/crolke/svn/qpid/b32-2008/managementgen/cmake_install.cmake:36 1> when parsing string 1> c:\Program Files\Python26\Lib\site-packages/qmfgen 1> Invalid escape sequence \P
Fixing that with
file(TO_CMAKE_PATH "${PYTHON_SITEARCH_PACKAGES}" PYTHON_SITEARCH_PACKAGES_PATH) string(REPLACE " " "\\ " PYTHON_SITEARCH_PACKAGES_PATH ${PYTHON_SITEARCH_PACKAGES_PATH})
Results in a Permission Denied as C:\Program Files is protected.
3. Cmake inclusion of directory managementgen and the installation into the system Python packages directory is not optional. So install gets stuck.
This jira proposes adding an option BUILD_QMFGEN that would allow a user to suppress installing qmf-gen into the system. This lets a user avoid the spaces-in-the-path-name issue and move on.
On systems where Python is installed in a directory that "works" then the system site-packages are overwritten with each developer install. Is that right? How can a developer test junk code without trashing the system for other users? Having a switch to suppress qmfgen for dev builds would dodge this issue, too.