I am writing a confidence test which needs to read some asset files. In order to tell the test where these files are located I do the following within the test's CMakeLists.txt:
ADD_DEFINITIONS(-DRB_DATA_DIR=\"${CMAKE_CURRENT_SOURCE_DIR}/\")

Within the test code I then ensure that this define works properly like so:
#define STRINGIZE(a) DO_STRINGIZE(a)
#define DO_STRINGIZE(a) # a
...
cout << "RB_DATA_DIR = " << STRINGIZE(RB_DATA_DIR) << endl;

This works fine on linux, however on Windows it returns:
RB_DATA_DIR = "C,ocuments and Settings/wjarosz/My Documents/Visual Studio 2005/Projects/gfx/VMULTest/"

Sure enough, checking the Preprocessor Definitions line within the generated Project, I see: "RB_DATA_DIR=\"C","ocuments and Settings/wjarosz/My Documents/Visual Studio 2005/Projects/gfx/VMULTest/\"",

What is the proper way to pass paths using the preprocessor with CMake?

Thanks!
-wojciech

_______________________________________________
CMake mailing list
[email protected]
http://www.cmake.org/mailman/listinfo/cmake

Reply via email to