Add in SDL support (needed for WebOS). Admittedly this has not been actually checked out yet,

but it will be shortly and it does no evil


SVN revision: 45080
This commit is contained in:
xcomputerman 2010-01-13 08:17:15 +00:00 committed by xcomputerman
parent 706a76c467
commit 9e644e73a2
5 changed files with 37 additions and 2 deletions

View File

@ -166,6 +166,17 @@ PKG_CHECK_MODULES([ELEMENTARY_FB],
[have_elementary_fb="no"]
)
have_elementary_sdl="no"
PKG_CHECK_MODULES([ELEMENTARY_SDL],
[ecore-sdl],
[
AC_DEFINE(HAVE_ELEMENTARY_FB, 1, [FB support for Elementary])
have_elementary_sdl="yes"
requirement_elm="ecore-sdl ${requirement_elm}"
],
[have_elementary_sdl="no"]
)
have_elementary_win32="no"
PKG_CHECK_MODULES([ELEMENTARY_WIN32],
[ecore-win32],
@ -298,6 +309,7 @@ echo
echo " Engines:"
echo " X11................: ${have_elementary_x}"
echo " Framebuffer........: ${have_elementary_fb}"
echo " SDL................: ${have_elementary_sdl}"
echo " Windows XP.........: ${have_elementary_win32}"
echo " Windows CE.........: ${have_elementary_wince}"
echo

View File

@ -12,6 +12,7 @@ AM_CPPFLAGS = \
@ELEMENTARY_CFLAGS@ \
@ELEMENTARY_X_CFLAGS@ \
@ELEMENTARY_FB_CFLAGS@ \
@ELEMENTARY_SDL_CFLAGS@ \
@ELEMENTARY_WIN32_CFLAGS@ \
@ELEMENTARY_WINCE_CFLAGS@ \
@ELEMENTARY_EDBUS_CFLAGS@ \
@ -88,5 +89,5 @@ els_icon.h
libelementary_la_CFLAGS =
libelementary_la_LIBADD = @my_libs@ @dlopen_libs@ @ELEMENTARY_LIBS@ @ELEMENTARY_X_LIBS@ @ELEMENTARY_FB_LIBS@ @ELEMENTARY_WIN32_LIBS@ @ELEMENTARY_WINCE_LIBS@ @ELEMENTARY_EDBUS_LIBS@ @ELEMENTARY_EFREET_LIBS@
libelementary_la_LIBADD = @my_libs@ @dlopen_libs@ @ELEMENTARY_LIBS@ @ELEMENTARY_X_LIBS@ @ELEMENTARY_FB_LIBS@ @ELEMENTARY_SDL_LIBS@ @ELEMENTARY_WIN32_LIBS@ @ELEMENTARY_WINCE_LIBS@ @ELEMENTARY_EDBUS_LIBS@ @ELEMENTARY_EFREET_LIBS@
libelementary_la_LDFLAGS = -no-undefined @lt_enable_auto_import@ -version-info @version_info@ @release_info@

View File

@ -601,6 +601,14 @@ elm_quicklaunch_init(int argc, char **argv)
(!strcasecmp(s, "software-fb")) ||
(!strcasecmp(s, "software_fb")))
_elm_config->engine = ELM_SOFTWARE_FB;
else if ((!strcasecmp(s, "sdl")) ||
(!strcasecmp(s, "software-sdl")) ||
(!strcasecmp(s, "software_sdl")))
_elm_config->engine = ELM_SOFTWARE_SDL;
else if ((!strcasecmp(s, "sdl-16")) ||
(!strcasecmp(s, "software-16-sdl")) ||
(!strcasecmp(s, "software_16_sdl")))
_elm_config->engine = ELM_SOFTWARE_16_SDL;
else if ((!strcasecmp(s, "opengl")) ||
(!strcasecmp(s, "gl")) ||
(!strcasecmp(s, "opengl-x11")) ||
@ -783,6 +791,8 @@ elm_quicklaunch_sub_shutdown(void)
(_elm_config->engine == ELM_SOFTWARE_16_X11) ||
(_elm_config->engine == ELM_XRENDER_X11) ||
(_elm_config->engine == ELM_OPENGL_X11) ||
(_elm_config->engine == ELM_SOFTWARE_SDL) ||
(_elm_config->engine == ELM_SOFTWARE_16_SDL) ||
(_elm_config->engine == ELM_SOFTWARE_WIN32) ||
(_elm_config->engine == ELM_SOFTWARE_16_WINCE))
{

View File

@ -31,7 +31,9 @@ typedef enum _Elm_Engine
ELM_XRENDER_X11,
ELM_OPENGL_X11,
ELM_SOFTWARE_WIN32,
ELM_SOFTWARE_16_WINCE
ELM_SOFTWARE_16_WINCE,
ELM_SOFTWARE_SDL,
ELM_SOFTWARE_16_SDL
} Elm_Engine;
typedef struct _Elm_Config Elm_Config;

View File

@ -192,6 +192,8 @@ _elm_win_xwindow_get(Elm_Win *win)
break;
case ELM_SOFTWARE_FB:
case ELM_SOFTWARE_16_WINCE:
case ELM_SOFTWARE_SDL:
case ELM_SOFTWARE_16_SDL:
break;
case ELM_SOFTWARE_16_X11:
if (win->ee) win->xwin = ecore_evas_software_x11_16_window_get(win->ee);
@ -369,6 +371,12 @@ elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
case ELM_SOFTWARE_16_WINCE:
win->ee = ecore_evas_software_wince_gdi_new(NULL, 0, 0, 1, 1);
break;
case ELM_SOFTWARE_SDL:
win->ee = ecore_evas_sdl_new(NULL, 0, 0, 0, 0, 0, 1);
break;
case ELM_SOFTWARE_16_SDL:
win->ee = ecore_evas_sdl16_new(NULL, 0, 0, 0, 0, 0, 1);
break;
default:
break;
}
@ -439,6 +447,8 @@ elm_win_add(Evas_Object *parent, const char *name, Elm_Win_Type type)
case ELM_XRENDER_X11:
case ELM_OPENGL_X11:
case ELM_SOFTWARE_WIN32:
case ELM_SOFTWARE_SDL:
case ELM_SOFTWARE_16_SDL:
default:
break;
}