[CMake] working around rc.exe "too many -I# options"

Tyler Roscoe tyler at cryptio.net
Tue Oct 20 15:01:36 EDT 2009


I am trying to add Windows versioning information to my project. I am
using CMake 2.6.2 and VS2005.

I have crafted a version.rc file which I use with all my libraries and
executables. This is working well except for one library which has 94
include directories, one greater than the 93 directory limit (lol)
imposed by rc.exe, the Windows resource compiler.

Thus, I am running into this issue:

http://social.msdn.microsoft.com/forums/en-US/vcgeneral/thread/97be1e3a-82ec-430d-a260-d75ea173b62e

Yes, the library probably could/should be refactored to get rid of this
excessive number of include dirs, but that's not how it is today and I
would prefer not to change it at this time.

Has anyone hacked around this problem?

One thing that might work would be to alter the include directories used
by the version.rc file (it obviously doesn't need all those headers; it
just needs to be able to find and #include the two version-related
headers). Unfortunately, the INCLUDE_DIRECTORIES property is only
available at the directory level so I don't see a way to say, "all these
.cpp files use these include dirs; this .rc file uses these other
include dirs".

TIA,
tyler


More information about the CMake mailing list