I did a little more research into CMAKE_CFG_INTDIR and it&#39;s a little bit weird.<br><br>First of all, it uses $(OutDir) in visual studio instead of $(IntDir) as the documentation says it will use.<br><br>Secondly, the linker output file in Visual Studio is set as an absolute path instead of using $(OutDir). If I set CMAKE_ARCHIVE_OUTPUT_DIRECTORY for a static library, it changes my output file for the library to output to the correct directory in an absolute way, however $(OutDir) still remains the same, whereas it should reflect the changes made to the output directory in CMake. Why the inconsistency? By changing CMAKE_ARCHIVE_OUTPUT_DIRECTORY, I can no longer use CMAKE_CFG_INTDIR to figure out where the binaries will be placed at &quot;post build event&quot; time.<br>