[CMake] iPhone, Xcode, EFFECTIVE_PLATFORM_NAME and CMAKE_CFG_INTDIR

Pieter Scholtz pieterscholtz at gmail.com
Mon Apr 12 08:30:04 EDT 2010


Hi

I am trying to compile a CMake project for the iPhone using the Xcode
generator. However, Xcode fails to link the target application to some
static library targets, assuming the library targets will be dumped in
$(BUILD_DIR)/{Debug,Release,etc}/, when in fact they are dumped in
$(BUILD_DIR)/{Debug-iphoneos,Release-iphonesimulator,etc}. The
"Per-configuration Build Products Path" in the Xcode project is set to
$(BUILD_DIR)/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME), but the CMake Xcode
generator does not take EFFECTIVE_PLATFORM_NAME into account when setting
CMAKE_CFG_INTDIR. Furthermore, it seems as though the CMAKE_CFG_INTDIR is
read-only and cannot be overridden in the iPhone toolchain file.

There is already an open ticket on the CMake bug tracker about this issue:
http://public.kitware.com/Bug/view.php?id=9117
However, the solution in the patch attached to this ticket does not seem to
work for CMake 2.8.0. The patch does not specify a filename, I assumed it to
be cmGlobalXCodeGenerator.cxx and applied the changes in the patch
manually. Any help would be much appreciated.

I am using CMake 2.8.0 with Xcode 3.2.1 and iPhone 3.1.3 SDK. The project
compiles successfully using the Makefile generator.

Regards
Pieter
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.cmake.org/pipermail/cmake/attachments/20100412/1815a59d/attachment.htm>


More information about the CMake mailing list