Hi Michael,
Thank you for your reply.
What is the best way to do that exactly? I am in cluding Carbon/
Carbon.h in my source files. but I guess CMAKE needs to know
where to fine them too. moving form XCode is harder than I
thought it would be.
include_directories (${CMAKE_OSX_SYSROOT}/Developer/Headers/
FlatCarbon)
Then in your code you can do #include <Carbon.h>
Although I am not really sure this is the "correct" way to do this.
I think you should be really looking for the "Carbon.framework"
and then using that..
I am getting more confused! This works in XCode for me, it is just
two files.
Does anyone have an example CMake file that includes Crbon headers,
links agains the carbon framework, etc? What I am doing is
obviously wrong
I just tried it with CMake 2.6.3 and as you reported, find_library
finds Carbon.framework just fine, but the target_link_libraries
command just drops it again. IMHO, what it actually should do
(expressed in CMake-code) the following
get_filename_component( FRAMEWORK_DIR ${CARBON_LIBRARY} PATH )
get_filename_component( FRAMEWORK_NAME ${CARBON_LIBRARY} NAME_WE )
set_target_properties( someTarget PROPERTIES
COMPILE_FLAGS "-F ${FRAMEWORK_DIR}"
LINK_FLAGS "-F ${FRAMEWORK_DIR} -framework ${FRAMEWORK_NAME}"
)
I.e. it should add the directory containing the framework to the
framework search path (such that things like #include <Carbon/
Carbon.h> work) and then add "-framework Carbon" to the link command.
Of course, if everything is installed in standard locations, this is
unnecessary...
I am running: cmake version 2.6-patch 4
I am confused still. you say if everything is installed in standard
locations this is unnecessary. Yes, everything is a standard plain
vanilla OS X install.
So everything you just did above is unnecessary then?
Here is what I have now:
if (APPLE)
SET(MOREFILESX_HEADERS
source/thirdparty/OSX/MoreFilesX/MoreFilesX.h)
SET(MOREFILESX_SOURCES
source/thirdparty/OSX/MoreFilesX/MoreFilesX.c)
FIND_LIBRARY (CARBON_LIBRARY Carbon.framework)
MARK_AS_ADVANCED (CARBON_LIBRARY)
get_filename_component( FRAMEWORK_DIR ${CARBON_LIBRARY} PATH )
get_filename_component( FRAMEWORK_NAME ${CARBON_LIBRARY}
NAME_WE )
ADD_LIBRARY (MoreFilesX ${MOREFILESX_SOURCES}
${MOREFILESX_HEADERS})
set_target_properties( MoreFilesX PROPERTIES
COMPILE_FLAGS "-F ${FRAMEWORK_DIR}"
LINK_FLAGS "-F ${FRAMEWORK_DIR} -framework ${FRAMEWORK_NAME}"
)
ENDIF (APPLE)
I still get the same compile errors as before. But works using Xcode
for me.
Is there another resource as I can't find an example of these basic
things on the wiki. Even Google searching is not really turning up
much. I did find:http://www.vtk.org/Wiki/
CMake:HowToUseExistingOSXFrameworks which is how I structured my first
example but alas nothing. Even for this list I few people replied with
ideas none that seem to work.
I would appreciate pointers!
-Jason
_______________________________________________
Powered by www.kitware.com
Visit other Kitware open-source projects at
http://www.kitware.com/opensource/opensource.html
Please keep messages on-topic and check the CMake FAQ at:
http://www.cmake.org/Wiki/CMake_FAQ
Follow this link to subscribe/unsubscribe:
http://www.cmake.org/mailman/listinfo/cmake