It is a good excuse to learn CMake. :)–
Paulo
The associate of mine that setup our project with cmake for windows/linux
whipped up this document to get you guys started with cmake in SDL. It’ll
generate the project file (tested with code::blocks), but when you try to
compile it it will fail on platform specific stuff.
This isn’t a solution obviously, but it’ll help get things going for
whomever knows SDL well enough to put the necessary details into it. Sorry
about the size of this, there wasn’t a cleaner way to post this. =\
Code:
The cmake build script for the SDL
cmake_minimum_required (VERSION 2.8)
project (SDL)
#Set some variables to make finding things easier later on in the build
set (${PROJECT_NAME}_ROOT_DIR “${${PROJECT_NAME}_SOURCE_DIR}/”)
set (${PROJECT_NAME}_SRC_DIR “${${PROJECT_NAME}_ROOT_DIR}/src/”)
set (${PROJECT_NAME}_INCLUDE_DIR “${${PROJECT_NAME}_ROOT_DIR}/include/”)
set (${PROJECT_NAME}_BINARY_DIR “${${PROJECT_NAME}_BINARY_DIR}/bin/”)
#to put the binaries and any libraries where they are expected
set (PROJECT_BINARY_DIR “${${PROJECT_NAME}_BINARY_DIR}”)
set (LIBRARY_OUTPUT_PATH “${${PROJECT_NAME}_BINARY_DIR}”)
#If all cmake commands that need to reference Binaries or Src files use the
above variables instead of hard paths the
#user/gameprogrammer can have all the build files in another folder (which
can make his/her life easier in several of ways)
#Some logic should go here that does something to include of exclude files
based on the platform
#This logic could also right after the really list of source files
#if (${UNIX})
#set(${PROJECT_NAME}_sources
"${${PROJECT_NAME}_SRC_DIR}UnixOrLinuxSrcFile.c" ${${PROJECT_NAME}_sources}
)
#endif(${UNIX})
#if (${WINDOWS})
#set(${PROJECT_NAME}_sources
"${${PROJECT_NAME}_SRC_DIR}WindowsOnlySrcFile.c" ${${PROJECT_NAME}_sources}
)
#endif(${WINDOWS})
#Make on big arrary with all the source and header files
set(${PROJECT_NAME}_sources
#Headers
"${${PROJECT_NAME}_INCLUDE_DIR}begin_code.h"
"${${PROJECT_NAME}_INCLUDE_DIR}close_code.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_assert.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_atomic.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_audio.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_blendmode.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_clipboard.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_compat.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_android.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_iphoneos.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_macosx.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_minimal.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_nintendods.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_pandora.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_windows.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_config_wiz.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_copying.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_cpuinfo.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_endian.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_error.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_events.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_gesture.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_haptic.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_hints.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_input.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_joystick.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_keyboard.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_keycode.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_loadso.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_log.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_main.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_mouse.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_mutex.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_name.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_opengles2.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_opengles.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_opengl.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_pixels.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_platform.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_power.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_quit.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_rect.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_render.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_revision.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_rwops.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_scancode.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_shape.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_stdinc.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_surface.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_syswm.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_thread.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_timer.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_touch.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_types.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_version.h"
"${${PROJECT_NAME}_INCLUDE_DIR}SDL_video.h"
#Source Files
"${${PROJECT_NAME}_SRC_DIR}SDL_assert.c"
"${${PROJECT_NAME}_SRC_DIR}SDL_assert_c.h"
"${${PROJECT_NAME}_SRC_DIR}SDL.c"
"${${PROJECT_NAME}_SRC_DIR}SDL_compat.c"
"${${PROJECT_NAME}_SRC_DIR}SDL_error.c"
"${${PROJECT_NAME}_SRC_DIR}SDL_error_c.h"
"${${PROJECT_NAME}_SRC_DIR}SDL_fatal.c"
"${${PROJECT_NAME}_SRC_DIR}SDL_fatal.h"
"${${PROJECT_NAME}_SRC_DIR}SDL_hints.c"
"${${PROJECT_NAME}_SRC_DIR}SDL_log.c"
#src/atomic:
"${${PROJECT_NAME}_SRC_DIR}atomic/SDL_atomic.c"
"${${PROJECT_NAME}_SRC_DIR}atomic/SDL_spinlock.c"
#src/audio:
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audio_c.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audiocvt.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audiodev.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audiodev_c.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audiomem.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_audiotypecvt.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer_m68k.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer_m68k.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer_MMX.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer_MMX.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer_MMX_VC.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_mixer_MMX_VC.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_sysaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_wave.c"
"${${PROJECT_NAME}_SRC_DIR}audio/SDL_wave.h"
#src/cpuinfo:
"${${PROJECT_NAME}_SRC_DIR}cpuinfo/SDL_cpuinfo.c"
#src/events:
"${${PROJECT_NAME}_SRC_DIR}events/blank_cursor.h"
"${${PROJECT_NAME}_SRC_DIR}events/default_cursor.h"
"${${PROJECT_NAME}_SRC_DIR}events/scancodes_darwin.h"
"${${PROJECT_NAME}_SRC_DIR}events/scancodes_linux.h"
"${${PROJECT_NAME}_SRC_DIR}events/scancodes_windows.h"
"${${PROJECT_NAME}_SRC_DIR}events/scancodes_xfree86.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_clipboardevents.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_clipboardevents_c.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_events.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_events_c.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_gesture.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_gesture_c.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_keyboard.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_keyboard_c.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_mouse.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_mouse_c.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_quit.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_sysevents.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_touch.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_touch_c.h"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_windowevents.c"
"${${PROJECT_NAME}_SRC_DIR}events/SDL_windowevents_c.h"
#src/file:
"${${PROJECT_NAME}_SRC_DIR}file/SDL_rwops.c"
#src/haptic:
"${${PROJECT_NAME}_SRC_DIR}haptic/SDL_haptic.c"
"${${PROJECT_NAME}_SRC_DIR}haptic/SDL_haptic_c.h"
"${${PROJECT_NAME}_SRC_DIR}haptic/SDL_syshaptic.h"
#src/joystick:
"${${PROJECT_NAME}_SRC_DIR}joystick/SDL_joystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/SDL_joystick_c.h"
"${${PROJECT_NAME}_SRC_DIR}joystick/SDL_sysjoystick.h"
#src/libm:
"${${PROJECT_NAME}_SRC_DIR}libm/e_atan2.c"
"${${PROJECT_NAME}_SRC_DIR}libm/e_log.c"
"${${PROJECT_NAME}_SRC_DIR}libm/e_pow.c"
"${${PROJECT_NAME}_SRC_DIR}libm/e_rem_pio2.c"
"${${PROJECT_NAME}_SRC_DIR}libm/e_sqrt.c"
"${${PROJECT_NAME}_SRC_DIR}libm/k_cos.c"
"${${PROJECT_NAME}_SRC_DIR}libm/k_rem_pio2.c"
"${${PROJECT_NAME}_SRC_DIR}libm/k_sin.c"
"${${PROJECT_NAME}_SRC_DIR}libm/math.h"
"${${PROJECT_NAME}_SRC_DIR}libm/math_private.h"
"${${PROJECT_NAME}_SRC_DIR}libm/s_atan.c"
"${${PROJECT_NAME}_SRC_DIR}libm/s_copysign.c"
"${${PROJECT_NAME}_SRC_DIR}libm/s_cos.c"
"${${PROJECT_NAME}_SRC_DIR}libm/s_fabs.c"
"${${PROJECT_NAME}_SRC_DIR}libm/s_floor.c"
"${${PROJECT_NAME}_SRC_DIR}libm/s_scalbn.c"
"${${PROJECT_NAME}_SRC_DIR}libm/s_sin.c"
#src/power:
"${${PROJECT_NAME}_SRC_DIR}power/SDL_power.c"
#src/render:
"${${PROJECT_NAME}_SRC_DIR}render/mmx.h"
"${${PROJECT_NAME}_SRC_DIR}render/SDL_render.c"
"${${PROJECT_NAME}_SRC_DIR}render/SDL_sysrender.h"
"${${PROJECT_NAME}_SRC_DIR}render/SDL_yuv_mmx.c"
"${${PROJECT_NAME}_SRC_DIR}render/SDL_yuv_sw.c"
"${${PROJECT_NAME}_SRC_DIR}render/SDL_yuv_sw_c.h"
#src/stdlib:
"${${PROJECT_NAME}_SRC_DIR}stdlib/SDL_getenv.c"
"${${PROJECT_NAME}_SRC_DIR}stdlib/SDL_iconv.c"
"${${PROJECT_NAME}_SRC_DIR}stdlib/SDL_malloc.c"
"${${PROJECT_NAME}_SRC_DIR}stdlib/SDL_qsort.c"
"${${PROJECT_NAME}_SRC_DIR}stdlib/SDL_stdlib.c"
"${${PROJECT_NAME}_SRC_DIR}stdlib/SDL_string.c"
#src/thread:
"${${PROJECT_NAME}_SRC_DIR}thread/SDL_systhread.h"
"${${PROJECT_NAME}_SRC_DIR}thread/SDL_thread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/SDL_thread_c.h"
#src/timer:
"${${PROJECT_NAME}_SRC_DIR}timer/SDL_timer.c"
"${${PROJECT_NAME}_SRC_DIR}timer/SDL_timer_c.h"
#src/video:
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_0.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_1.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_A.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_auto.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_auto.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_copy.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_copy.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_N.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_slow.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_blit_slow.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_bmp.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_clipboard.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_fillrect.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_pixels.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_pixels_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_rect.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_rect_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_RLEaccel.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_RLEaccel_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_shape.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_shape_internals.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_stretch.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_surface.c"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_sysvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/SDL_video.c"
#more deeply nested files that may need some platform specific logic to
determine inclusion
"${${PROJECT_NAME}_SRC_DIR}audio/alsa/SDL_alsa_audio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/alsa/SDL_alsa_audio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/android/SDL_androidaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/android/SDL_androidaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/arts/SDL_artsaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/arts/SDL_artsaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/baudio/SDL_beaudio.cc"
"${${PROJECT_NAME}_SRC_DIR}audio/baudio/SDL_beaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/bsd/SDL_bsdaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/bsd/SDL_bsdaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/disk/SDL_diskaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/disk/SDL_diskaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/dma/SDL_dmaaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/dma/SDL_dmaaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/dmedia/SDL_irixaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/dmedia/SDL_irixaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/dsp/SDL_dspaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/dsp/SDL_dspaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/dummy/SDL_dummyaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/dummy/SDL_dummyaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/esd/SDL_esdaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/esd/SDL_esdaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/fusionsound/SDL_fsaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/fusionsound/SDL_fsaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/iphoneos/SDL_coreaudio_iphone.c"
"${${PROJECT_NAME}_SRC_DIR}audio/iphoneos/SDL_coreaudio_iphone.h"
"${${PROJECT_NAME}_SRC_DIR}audio/macosx/SDL_coreaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/macosx/SDL_coreaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/mme/SDL_mmeaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/mme/SDL_mmeaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/nas/SDL_nasaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/nas/SDL_nasaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/nds/SDL_ndsaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/nds/SDL_ndsaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/paudio/SDL_paudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/paudio/SDL_paudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/pulseaudio/SDL_pulseaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/pulseaudio/SDL_pulseaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/qsa/SDL_qsa_audio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/qsa/SDL_qsa_audio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/sun/SDL_sunaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/sun/SDL_sunaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/ums/SDL_umsaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/ums/SDL_umsaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/windib/SDL_dibaudio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/windib/SDL_dibaudio.h"
"${${PROJECT_NAME}_SRC_DIR}audio/windx5/directx.h"
"${${PROJECT_NAME}_SRC_DIR}audio/windx5/SDL_dx5audio.c"
"${${PROJECT_NAME}_SRC_DIR}audio/windx5/SDL_dx5audio.h"
"${${PROJECT_NAME}_SRC_DIR}core/android/SDL_android.cpp"
"${${PROJECT_NAME}_SRC_DIR}core/android/SDL_android.h"
"${${PROJECT_NAME}_SRC_DIR}core/windows/SDL_windows.c"
"${${PROJECT_NAME}_SRC_DIR}core/windows/SDL_windows.h"
"${${PROJECT_NAME}_SRC_DIR}events/nds/SDL_ndsgesture.c"
"${${PROJECT_NAME}_SRC_DIR}file/cocoa/SDL_rwopsbundlesupport.h"
"${${PROJECT_NAME}_SRC_DIR}haptic/darwin/SDL_syshaptic.c"
"${${PROJECT_NAME}_SRC_DIR}haptic/dummy/SDL_syshaptic.c"
"${${PROJECT_NAME}_SRC_DIR}haptic/linux/SDL_syshaptic.c"
"${${PROJECT_NAME}_SRC_DIR}haptic/nds/SDL_syshaptic.c"
"${${PROJECT_NAME}_SRC_DIR}haptic/windows/SDL_syshaptic.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/android/SDL_sysjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/beos/SDL_bejoystick.cc"
"${${PROJECT_NAME}_SRC_DIR}joystick/bsd/SDL_sysjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/darwin/SDL_sysjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/darwin/SDL_sysjoystick_c.h"
"${${PROJECT_NAME}_SRC_DIR}joystick/dummy/SDL_sysjoystick.c"
“${${PROJECT_NAME}_SRC_DIR}joystick/iphoneos/SDLUIAccelerationDelegate.h”
"${${PROJECT_NAME}_SRC_DIR}joystick/linux/SDL_sysjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/linux/SDL_sysjoystick_c.h"
"${${PROJECT_NAME}_SRC_DIR}joystick/nds/SDL_sysjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/windows/SDL_dxjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}joystick/windows/SDL_dxjoystick_c.h"
"${${PROJECT_NAME}_SRC_DIR}joystick/windows/SDL_mmjoystick.c"
"${${PROJECT_NAME}_SRC_DIR}loadso/beos/SDL_sysloadso.c"
"${${PROJECT_NAME}_SRC_DIR}loadso/dlopen/SDL_sysloadso.c"
"${${PROJECT_NAME}_SRC_DIR}loadso/dummy/SDL_sysloadso.c"
"${${PROJECT_NAME}_SRC_DIR}loadso/macosx/SDL_dlcompat.c"
"${${PROJECT_NAME}_SRC_DIR}loadso/windows/SDL_sysloadso.c"
"${${PROJECT_NAME}_SRC_DIR}main/android/SDL_android_main.cpp"
"${${PROJECT_NAME}_SRC_DIR}main/beos/SDL_BeApp.cc"
"${${PROJECT_NAME}_SRC_DIR}main/beos/SDL_BeApp.h"
"${${PROJECT_NAME}_SRC_DIR}main/dummy/SDL_dummy_main.c"
"${${PROJECT_NAME}_SRC_DIR}main/windows/SDL_windows_main.c"
"${${PROJECT_NAME}_SRC_DIR}power/beos/SDL_syspower.c"
"${${PROJECT_NAME}_SRC_DIR}power/linux/SDL_syspower.c"
"${${PROJECT_NAME}_SRC_DIR}power/macosx/SDL_syspower.c"
"${${PROJECT_NAME}_SRC_DIR}power/nds/SDL_syspower.c"
"${${PROJECT_NAME}_SRC_DIR}power/windows/SDL_syspower.c"
"${${PROJECT_NAME}_SRC_DIR}render/direct3d/SDL_render_d3d.c"
"${${PROJECT_NAME}_SRC_DIR}render/opengles2/SDL_render_gles2.c"
"${${PROJECT_NAME}_SRC_DIR}render/opengles2/SDL_shaders_gles2.c"
"${${PROJECT_NAME}_SRC_DIR}render/opengles2/SDL_shaders_gles2.h"
"${${PROJECT_NAME}_SRC_DIR}render/opengles/SDL_render_gles.c"
"${${PROJECT_NAME}_SRC_DIR}render/opengl/SDL_glfuncs.h"
"${${PROJECT_NAME}_SRC_DIR}render/opengl/SDL_render_gl.c"
"${${PROJECT_NAME}_SRC_DIR}render/opengl/SDL_shaders_gl.c"
"${${PROJECT_NAME}_SRC_DIR}render/opengl/SDL_shaders_gl.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_blendfillrect.c"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_blendfillrect.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_blendline.c"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_blendline.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_blendpoint.c"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_blendpoint.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_draw.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_drawline.c"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_drawline.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_drawpoint.c"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_drawpoint.h"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_render_sw.c"
"${${PROJECT_NAME}_SRC_DIR}render/software/SDL_render_sw_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/beos/SDL_syssem.c"
"${${PROJECT_NAME}_SRC_DIR}thread/beos/SDL_systhread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/beos/SDL_systhread_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/generic/SDL_syscond.c"
"${${PROJECT_NAME}_SRC_DIR}thread/generic/SDL_sysmutex.c"
"${${PROJECT_NAME}_SRC_DIR}thread/generic/SDL_sysmutex_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/generic/SDL_syssem.c"
"${${PROJECT_NAME}_SRC_DIR}thread/generic/SDL_systhread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/generic/SDL_systhread_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/irix/SDL_syssem.c"
"${${PROJECT_NAME}_SRC_DIR}thread/irix/SDL_systhread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/irix/SDL_systhread_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_syscond.c"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_syscond_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_sysmutex.c"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_sysmutex_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_syssem.c"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_syssem_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_systhread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/nds/SDL_systhread_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/pthread/SDL_syscond.c"
"${${PROJECT_NAME}_SRC_DIR}thread/pthread/SDL_sysmutex.c"
"${${PROJECT_NAME}_SRC_DIR}thread/pthread/SDL_sysmutex_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/pthread/SDL_syssem.c"
"${${PROJECT_NAME}_SRC_DIR}thread/pthread/SDL_systhread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/pthread/SDL_systhread_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/windows/SDL_sysmutex.c"
"${${PROJECT_NAME}_SRC_DIR}thread/windows/SDL_syssem.c"
"${${PROJECT_NAME}_SRC_DIR}thread/windows/SDL_systhread.c"
"${${PROJECT_NAME}_SRC_DIR}thread/windows/SDL_systhread_c.h"
"${${PROJECT_NAME}_SRC_DIR}thread/windows/win_ce_semaphore.c"
"${${PROJECT_NAME}_SRC_DIR}thread/windows/win_ce_semaphore.h"
"${${PROJECT_NAME}_SRC_DIR}timer/beos/SDL_systimer.c"
"${${PROJECT_NAME}_SRC_DIR}timer/dummy/SDL_systimer.c"
"${${PROJECT_NAME}_SRC_DIR}timer/nds/SDL_systimer.c"
"${${PROJECT_NAME}_SRC_DIR}timer/unix/SDL_systimer.c"
"${${PROJECT_NAME}_SRC_DIR}timer/wince/SDL_systimer.c"
"${${PROJECT_NAME}_SRC_DIR}timer/windows/SDL_systimer.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidevents.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidevents.h"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidgl.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidkeyboard.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidkeyboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidtouch.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidtouch.h"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidvideo.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidwindow.c"
"${${PROJECT_NAME}_SRC_DIR}video/android/SDL_androidwindow.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_BView.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_BWin.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_lowvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysevents.cc"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysevents_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysmouse.cc"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysmouse_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysvideo.cc"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_syswm.cc"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_syswm_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysyuv.cc"
"${${PROJECT_NAME}_SRC_DIR}video/bwindow/SDL_sysyuv.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoaclipboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoaevents.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoakeyboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoamodes.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoamouse.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoaopengl.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoashape.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoavideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/cocoa/SDL_cocoawindow.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_dyn.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_dyn.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_events.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_events.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_modes.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_modes.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_mouse.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_mouse.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_opengl.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_opengl.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_render.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_render.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_video.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_video.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_window.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_window.h"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_WM.c"
"${${PROJECT_NAME}_SRC_DIR}video/directfb/SDL_DirectFB_WM.h"
"${${PROJECT_NAME}_SRC_DIR}video/dummy/SDL_nullevents.c"
"${${PROJECT_NAME}_SRC_DIR}video/dummy/SDL_nullevents_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/dummy/SDL_nullframebuffer.c"
"${${PROJECT_NAME}_SRC_DIR}video/dummy/SDL_nullframebuffer_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/dummy/SDL_nullvideo.c"
"${${PROJECT_NAME}_SRC_DIR}video/dummy/SDL_nullvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/nds/SDL_ndsevents.c"
"${${PROJECT_NAME}_SRC_DIR}video/nds/SDL_ndsevents_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/nds/SDL_ndsrender.c"
"${${PROJECT_NAME}_SRC_DIR}video/nds/SDL_ndsrender_c.h"
"${${PROJECT_NAME}_SRC_DIR}video/nds/SDL_ndsvideo.c"
"${${PROJECT_NAME}_SRC_DIR}video/nds/SDL_ndsvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/pandora/SDL_pandora.c"
"${${PROJECT_NAME}_SRC_DIR}video/pandora/SDL_pandora_events.c"
"${${PROJECT_NAME}_SRC_DIR}video/pandora/SDL_pandora_events.h"
"${${PROJECT_NAME}_SRC_DIR}video/pandora/SDL_pandora.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/jumphack.c"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/jumphack.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/keyinfotable.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitappdelegate.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitevents.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitkeyboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitopengles.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitopenglview.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitview.h"
"${${PROJECT_NAME}_SRC_DIR}video/uikit/SDL_uikitwindow.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_msctf.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_vkeys.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsclipboard.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsclipboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsevents.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsevents.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsframebuffer.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsframebuffer.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowskeyboard.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowskeyboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsmodes.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsmodes.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsmouse.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsmouse.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsopengl.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsopengl.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsshape.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsshape.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsvideo.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowsvideo.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowswindow.c"
"${${PROJECT_NAME}_SRC_DIR}video/windows/SDL_windowswindow.h"
"${${PROJECT_NAME}_SRC_DIR}video/windows/wmmsg.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/imKStoUCS.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/imKStoUCS.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11clipboard.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11clipboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11dyn.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11dyn.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11events.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11events.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11framebuffer.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11framebuffer.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11keyboard.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11keyboard.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11modes.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11modes.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11mouse.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11mouse.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11opengl.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11opengles.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11opengles.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11opengl.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11shape.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11shape.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11sym.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11touch.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11touch.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11video.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11video.h"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11window.c"
"${${PROJECT_NAME}_SRC_DIR}video/x11/SDL_x11window.h"
“${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/extutil.h”
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/panoramiXext.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/panoramiXproto.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/Xext.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/xf86dga1.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/xf86dga1str.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/xf86dga.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/xf86dgastr.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/xf86vmode.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/xf86vmstr.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/Xinerama.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/Xv.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/Xvlib.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/extensions/Xvproto.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/Xinerama/Xinerama.c"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/XME/xme.c"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/Xv/Xv.c"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/Xv/Xvlibint.h"
"${${PROJECT_NAME}_SRC_DIR}video/Xext/Xxf86vm/XF86VMode.c"
If you had you platform specific logic above you would probably want
to include more those Source files here by unremarking the next lines
#${${PROJECT_NAME}_sources}
)
#Some logic should go here that does something to find any build
dependencies based on the platform
#if (${UNIX})
#Some code for finding the dependencies
#set(LibraryNames X11 Mesa3d)
#endif(${UNIX})
#if (${WINDOWS})
#Some code for finding the dependencies
#set(LibraryNames Directx)
#endif(${WINDOWS})
include_directories(
#don’t forget library include dirs
${${PROJECT_NAME}_INCLUDE_DIR}
)
#Tells the compiler what is expected, and gives users the choice of a
static lib or dynamic lib, that defaults to static
option(SDLStaticLib “Should this be built as a static Library” ON)
if(${SDLStaticLib})
add_library(${PROJECT_NAME} STATIC ${${PROJECT_NAME}_sources} )
else(${SDLStaticLib})
add_library(${PROJECT_NAME} SHARED ${${PROJECT_NAME}_sources})
endif(${SDLStaticLib})
#Tells the linker what to do
target_link_libraries( ${PROJECT_NAME} ${LibraryNames} OpenGL )
SDL mailing list
SDL at lists.libsdl.org
http://lists.libsdl.org/listinfo.cgi/sdl-libsdl.org