[CMake] iPhone, Xcode, EFFECTIVE_PLATFORM_NAME and CMAKE_CFG_INTDIR

Pieter Scholtz pieterscholtz at gmail.com
Tue Apr 13 03:44:53 EDT 2010


I tried CMake 2.8.1 and it seems this problem has been resolved although I
could not find mention of it in the changelog. It appears as though the
output directories of the Xcode targets are now set explicitly by CMake to
$(BUILD_DIR)/{Release,Debug,etc}/, removing the EFFECTIVE_PLATFORM_NAME from
the path. This works for me as I generate separate Xcode projects for device
and simulator.


On Mon, Apr 12, 2010 at 2:30 PM, Pieter Scholtz <pieterscholtz at gmail.com>wrote:

> 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/20100413/63010e36/attachment.htm>


More information about the CMake mailing list