Am Freitag, 25. Januar 2013, 12:52:07 schrieb Kent Williams:
> I am testing a ITK patch I'm working on in Windows.  That involves entering
> a path in cmake-gui or ccmake.  The first time I tried it, I entered the
> path 'windows-wise' with backslashes as path separators.
> 
> That caused a syntax error at the point where that variable is used.  When
> I re-entered the path with unix-style forward slashes, the CMake
> configure/generate succeeded.
> 
> Is one supposed to always use Unix forward slashes when specifying paths to
> CMake?  If so is it documented to do that?

As almost all[1] of the Windows API actually supports forward-slashes, I'd 
personally recommend using them whenever cross-platformity is desired.

However, I never had any problems with using forward-slashes on windows in
general and esp. not in cmake. i.e. i also use to specifiy file names in
CMakeLists files like:

        SET( SRC_FILES
                foo/bar.c
                bar/foo.c
                ${INSERT_VAR_FROM_CACHE_HERE} # <-- to connect to your question 
again
        )

This feels way more natural as it is also the way that C/C++ compilers expect
path names (even cl.exe).

Sascha

[1] An exception to this rule is: APIs that expect Unicode path names _and_
the value's content begins with L"\\?\". These don't do the automatic
forward-to-backward-slash conversion.

see also: (Section 'Maximum Path Length Limitation')
http://msdn.microsoft.com/en-us/library/windows/desktop/aa365247%28v=vs.85%29.aspx

> If you're curious this is the ITK patch I'm working on:
> http://review.source.kitware.com/#/c/9308/
--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to