[cmake-developers] CPackComponents fails with spaces in paths

Nicolas Desprès nicolas.despres at gmail.com
Sun Feb 19 11:20:45 EST 2012


2012/2/19 Eric Noulard <eric.noulard at gmail.com>

> Le 19 février 2012 16:07, Nicolas Desprès <nicolas.despres at gmail.com> a
> écrit :
> > Hi,
> >
> > The CPackComponents test fails on master where there is a space in the
> > source tree. Here I think the trace:
> >
> > $ ctest -V -R 'CPackComponents$'
> >
> > ==================================================================
> > UpdateCTestConfiguration  from :/home/despre_n/tmp/cmake
> > space/_build/DartConfiguration.tcl
> > Parse Config file:/home/despre_n/tmp/cmake
> > space/_build/DartConfiguration.tcl
> >  Add coverage exclude regular expressions.
> >  Add coverage exclude: XCode
> >  Add coverage exclude: Kdevelop
> >  Add coverage exclude: /Source/(cm|kw)sys/
> >  Add coverage exclude: /CMakeFiles/CMakeTmp/
> >  Add coverage exclude: [A-Za-z]./[Qq]t/qt-.+-opensource-src
> > UpdateCTestConfiguration  from :/home/despre_n/tmp/cmake
> > space/_build/DartConfiguration.tcl
> > Parse Config file:/home/despre_n/tmp/cmake
> > space/_build/DartConfiguration.tcl
> > Test project /home/despre_n/tmp/cmake space/_build
> > Constructing a list of tests
> > Guessing configuration NoConfig
> > Done constructing a list of tests
> > Checking test dependency graph...
> > Checking test dependency graph end
> > test 89
> >     Start 89: CPackComponents
> >
> > 89: Test command: /home/despre_n/tmp/cmake\ space/_build/bin/ctest
> > "--build-and-test" "/home/despre_n/tmp/cmake space/Tests/CPackComponents"
> > "/home/despre_n/tmp/cmake space/_build/Tests/CPackComponents"
> > "--build-generator" "Unix Makefiles" "--build-project" "CPackComponents"
> > "--build-makeprogram" "/usr/bin/make" "--build-two-config"
> "--build-target"
> > "package" "--build-options" "-DCPACK_BINARY_DEB:BOOL=ON"
> > "-DCPACK_BINARY_RPM:BOOL=ON" "-DCPACK_BINARY_NSIS:BOOL=ON"
> > "--graphviz=CPackComponents.dot" "--test-command"
> "/home/despre_n/tmp/cmake
> > space/_build/bin/cmake"
> > "-DCPackComponents_BINARY_DIR:PATH=/home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents" "-P" "/home/despre_n/tmp/cmake
> > space/Tests/CPackComponents/VerifyResult.cmake"
> > 89: Test timeout computed to be: 1500
> > 89: Generate graphviz: /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot.mylib...
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot.mylibapp...
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot.mylib.dependers...
> > 89: Writing /home/despre_n/tmp/cmake
> >
> space/_build/Tests/CPackComponents/CPackComponents.dot.mylibapp.dependers...
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot...
> > 89: Generate graphviz: /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot.mylib...
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot.mylibapp...
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot.mylib.dependers...
> > 89: Writing /home/despre_n/tmp/cmake
> >
> space/_build/Tests/CPackComponents/CPackComponents.dot.mylibapp.dependers...
> > 89: Writing /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackComponents.dot...
> > 89: Internal cmake changing into directory: /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents
> > 89: ======== CMake output     ======
> > 89: Configuring
> > 89: Configuring done
> > 89: Generating
> > 89: Generating done
> > 89: Build files have been written to: /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents
> > 89: Configuring
> > 89: Configuring done
> > 89: Generating
> > 89: Generating done
> > 89: Build files have been written to: /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents
> > 89: ======== End CMake output ======
> > 89: Change Dir: /home/despre_n/tmp/cmake
> space/_build/Tests/CPackComponents
> > 89:
> > 89: Run Clean Command:/usr/bin/make "clean"
> > 89:
> > 89: Run Build Command:/usr/bin/make "package"
> > 89: [ 50%] Building CXX object CMakeFiles/mylib.dir/mylib.cpp.o
> > 89: Linking CXX static library libmylib.a
> > 89: [ 50%] Built target mylib
> > 89: [100%] Building CXX object CMakeFiles/mylibapp.dir/mylibapp.cpp.o
> > 89: Linking CXX executable mylibapp
> > 89: [100%] Built target mylibapp
> > 89: Run CPack packaging tool...
> > 89: CMake Warning (dev) at /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackConfig.cmake:54 (SET):
> > 89:   Syntax error in cmake code at
> > 89:
> > 89:     /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/CPackConfig.cmake:54
> > 89:
> > 89:   when parsing string
> > 89:
> > 89:     C:\Program Files\CMake Tests Install Root
> > 89:
> > 89:   Invalid escape sequence \P
> > 89:
> > 89:   Policy CMP0010 is not set: Bad variable reference syntax is an
> error.
> >  Run
> > 89:   "cmake --help-policy CMP0010" for policy details.  Use the
> > cmake_policy
> > 89:   command to set the policy and suppress this warning.
> > 89: This warning is for project developers.  Use -Wno-dev to suppress it.
> > 89:
> > 89: CPack: Create package using DEB
> > 89: CPack: Install projects
> > 89: CPack: - Run preinstall target for: CPackComponents
> > 89: CPack: - Install project: CPackComponents
> > 89: CPack: Create package
> > 89: CPack: - package: /home/despre_n/tmp/cmake
> > space/_build/Tests/CPackComponents/MyLib-1.0.0-Linux.deb generated.
> > 89: CPack: Create package using RPM
> > 89: CPack: Install projects
> > 89: CPack: - Run preinstall target for: CPackComponents
> > 89: CPack: - Install project: CPackComponents
> > 89: CPack: Create package
> > 89: CMake Error at /home/despre_n/tmp/cmake
> space/Modules/CPackRPM.cmake:298
> > (MESSAGE):
> > 89:   /usr/bin/rpmbuild can't handle paths with spaces, use a build
> > directory
> > 89:   without spaces for building RPMs.
> > 89:
> > 89:
> > 89: CPack Error: Error while execution CPackRPM.cmake
> > 89: CPack Error: Problem compressing the directory
> > 89: CPack Error: Error when generating package: MyLib
> > 89: make: *** [package] Error 1
> > 1/1 Test #89: CPackComponents ..................***Failed    3.31 sec
> >
> > 0% tests passed, 1 tests failed out of 1
> >
> > Total Test time (real) =   4.31 sec
> >
> > The following tests FAILED:
> > 89 - CPackComponents (Failed)
> > Errors while running CTest
> > ==================================================================
> >
> > So I think the culprit is RPM.
>
> Yes and it is a known limitation of current rpmbuild (thus the message).
> Normally we avoided to test CPackRPM in this condition.
> Did you somehow [manually] switched on CPACK_BINARY_RPM option?
> This one is OFF by default (if not the error would have shown up on
> the dashboard).
>

Yes I switch it ON on Linux, because I like to have as much test as
possible.


> Nevertheless the guard against "space" for CPackRPM has been
> put in CPackComponentsForAll tests but not in
> CPackComponents.
>
> I'll put it as well.
>

Thx.

-- 
Nicolas Desprès
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://public.kitware.com/pipermail/cmake-developers/attachments/20120219/2abd95d4/attachment.html>


More information about the cmake-developers mailing list