Fixed bug 1839 - SDL2 Cmake: VIDEO_COCOA check fails on OS X; VIDEO_COCOA sources aren't compiled.

This commit is contained in:
Sam Lantinga 2013-05-16 00:52:33 -07:00
parent bc7136f5ba
commit cc6f700f06
2 changed files with 10 additions and 1 deletions

View file

@ -63,3 +63,11 @@ macro(LISTTOSTR _LIST _OUTPUT)
set(${_OUTPUT} "${_LPREFIX}${_ITEM} ${${_OUTPUT}}")
endforeach()
endmacro()
macro(CHECK_OBJC_SOURCE_COMPILES SOURCE VAR)
set(PREV_REQUIRED_DEFS "${CMAKE_REQUIRED_DEFINITIONS}")
set(CMAKE_REQUIRED_DEFINITIONS "-ObjC ${PREV_REQUIRED_DEFS}")
CHECK_C_SOURCE_COMPILES(${SOURCE} ${VAR})
set(CMAKE_REQUIRED_DEFINITIONS "${PREV_REQUIRED_DEFS}")
endmacro()

View file

@ -449,11 +449,12 @@ endmacro(CheckX11)
#
macro(CheckCOCOA)
if(VIDEO_COCOA)
check_c_source_compiles("
check_objc_source_compiles("
#import <Cocoa/Cocoa.h>
int main (int argc, char** argv) {}" HAVE_VIDEO_COCOA)
if(HAVE_VIDEO_COCOA)
file(GLOB COCOA_SOURCES ${SDL2_SOURCE_DIR}/src/video/cocoa/*.m)
set_source_files_properties(${COCOA_SOURCES} PROPERTIES LANGUAGE C)
set(SOURCE_FILES ${SOURCE_FILES} ${COCOA_SOURCES})
set(SDL_VIDEO_DRIVER_COCOA 1)
set(HAVE_SDL_VIDEO TRUE)