Hi All,
using cmake for a quite big project (with several sub-projects, some macros, find modules etc.) sometimes .vcxproj
contains output like this:
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<AdditionalOptions> /Zm1000 /bigobj
%(AdditionalOptions)</AdditionalOptions>
<AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>... LOTS OF INCLUDES ...
/include</AdditionalIncludeDirectories>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
The problem is the second AdditionalIncludeDirectories not containing the final
"%(AdditionalIncludeDirectories)".
Inside VS (Properties -> Configuration Properties -> C/C++ -> Additional
Include Directories) this results
in the checkbox for "Inherit from parent of project defaults" being unchecked
and so the includes are not
used. If you would check this checkbox, everything would work - but is a
dissatisfying solution.
I tried hard to reproduce this error in a smaller example, but failed. I
couldn't reproduce it, but I could fix it:
------------ SNIP ---------------------
diff -r -c \
cmake-2.8.2.orig/Source/cmVisualStudioGeneratorOptions.cxx
cmake-2.8.2/Source/cmVisualStudioGeneratorOptions.cxx
*** cmake-2.8.2.orig/Source//cmVisualStudioGeneratorOptions.cxx 2010-06-28
17:15:59.000000000 +0200
--- cmake-2.8.2/Source//cmVisualStudioGeneratorOptions.cxx 2010-10-01
02:46:57.677851800 +0200
***************
*** 251,257 ****
{
fout << "<" << m->first << ">";
}
! fout << m->second << "</" << m->first << ">\n";
}
}
else
--- 251,261 ----
{
fout << "<" << m->first << ">";
}
! fout << m->second;
! if (m->first == "AdditionalIncludeDirectories") {
! fout << ";%(AdditionalIncludeDirectories)";
! }
! fout << "</" << m->first << ">\n";
}
}
else
------------ SNIP ---------------------
I guess this is a bad fix (ugly hack, wrong place). Maybe somebody is able to explain/guess what might be wrong with my
CMake-Files or to correctly fix this issue.
Regards,
Karl
_______________________________________________
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