Link Cocoa, IOKit and CoreVideo on OSX

These are implicitly linked by Xcode, but with this, you can also build it with any other generator, which does not have this behavior.

CoreFoundation is included as a part of Cocoa (which is an umbrella framework), and Cocoa is generally recommended to link against, rather than its individual components (CoreFoundation, Foundation, libobjc, ...).
This commit is contained in:
Johannes Ekberg 2014-12-24 10:40:26 +01:00
parent 7d7ab70279
commit 1351819810
1 changed files with 4 additions and 3 deletions

View File

@ -106,9 +106,10 @@ if (ENABLE_GLFW)
endif()
IF (APPLE)
# CoreFoundation is required only on OSX
FIND_LIBRARY(COREFOUNDATION_LIBRARY CoreFoundation)
SET(PLATFORM_LIBRARIES iconv ${COREFOUNDATION_LIBRARY})
FIND_LIBRARY(COCOA_LIBRARY Cocoa) # Umbrella framework for everything GUI-related
FIND_LIBRARY(IOKIT_LIBRARY IOKit) # GLFW dependency
FIND_LIBRARY(COREVIDEO_LIBRARY CoreVideo) # GLFW dependency
set(PLATFORM_LIBRARIES iconv ${COCOA_LIBRARY} ${IOKIT_LIBRARY} ${COREVIDEO_LIBRARY})
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -stdlib=libc++")