On 03/19/2014 12:31 PM, Stephen Kelly wrote: > However, the contents of the resulting list of objects contains paths which > contain replacement macros '$(Configuration)' etc for the buildsystem tool.
At least for the configuration, it is known when evaluating the genex. Whatever is adding the placeholders can be taught to put the real configuration in there, no? See also ExpandCFGIntDir for logic that removes the placeholders. > However, I think that is not possible with Xcode. There seem to be other > macros there and I guess the full path is not known at cmake-time at all. IIRC for Xcode there is $(CURRENT_ARCH) in the path to the object files. This is necessary for universal binary builds because the architecture is substituted at build time by Xcode. This is not a problem in the Makefile and Ninja generators because those handle universal binaries by putting all architectures in one object file (multiple -arch flags to one compiler invocation). > I checked the behavior of TARGET_FILE with file(GENERATE). I expected that > to contain the same replacement macros, but that doesn't seem to be the > case. That's because TARGET_FILE evaluation knows to use the per-config location of the target. -Brad -- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers