Desktop (osx, windows, linux) and Mobile SDL (ios, webos, bbx, android, etc.)

Hi guys,

I keep going back and forth to SDL 1.3, SDL2 (now), and back to SDL 1.2

My goal is this: have SDL programmable through luajit on desktop and
mobile devices. Luajit FFI bindings are very easy, in fact they are
straight “C” declarations, as the ones you would see in header file.

http://luajit.org/ext_ffi_tutorial.html

But my concern is what SDL version should I support. Currently I have
just couple of samples, some including cairo, some others OpenGL (and
OpenGL ES).

But I’m just not sure which version of SDL would be more suitable for me
that would work on all of the above devices. I’m fine with little
platform specific changes here and there, but as a whole I don’t want to
be left with SDL1.2 for one device and SDL2 (no COMPAT) for the other.

Size of SDL is not concern, what would be the best for me.

If possible I would like to reuse SDL where it’s available, for example
on the webOS - it ships with SDL 1.2, and binary is almost the same -
missing an enum here and there, but all structures are the same except
for the mouse events which are extended on the webOS versions with some
ratioX, ratioY

Any advice?

Thanks,
Dimiter ‘malkia’ Stanev.

webos, bbx, android, etc.)
Message-ID: <4F1F32D7.7090200 at gmail.com>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Hi guys,

I keep going back and forth to SDL 1.3, SDL2 (now), and back to SDL 1.2

My goal is this: have SDL programmable through luajit on desktop and
mobile devices. Luajit FFI bindings are very easy, in fact they are
straight “C” declarations, as the ones you would see in header file.

http://luajit.org/ext_ffi_tutorial.html

But my concern is what SDL version should I support. Currently I have
just couple of samples, some including cairo, some others OpenGL (and
OpenGL ES).

But I’m just not sure which version of SDL would be more suitable for me
that would work on all of the above devices. I’m fine with little
platform specific changes here and there, but as a whole I don’t want to
be left with SDL1.2 for one device and SDL2 (no COMPAT) for the other.

Size of SDL is not concern, what would be the best for me.

If possible I would like to reuse SDL where it’s available, for example
on the webOS - it ships with SDL 1.2, and binary is almost the same -
missing an enum here and there, but all structures are the same except
for the mouse events which are extended on the webOS versions with some
ratioX, ratioY

Any advice?

If you want to get this working soon, then I’d suggest SDL 1.2, but
bear in mind: I don’t know that it compiles for iOS or Android. If it
does, then it’s presumably a unofficial port, since the front page
doesn’t mention it.

So, why am I recommending SDL 1.2?

  1. SDL 2.0 is likely to undergo a shake-up, with the compatibility
    layer removal. Thus, it’s API can’t currently be guaranteed. That
    makes SDL 2 an unstable target.
  2. Once SDL 2.0 settles down, it’s possible, and maybe likely, that
    SDL 1.2 will be extended to use SDL 2.0 as a back-end, much like how
    it currently uses Xservers, etc. Thus, in the future, SDL 1.2 will
    probably run everywhere that SDL 2.0 does.
  3. SDL 1.2 is ALMOST a sub-set of SDL 1.3, and SDL 2.0 will probably
    be SIMILAR to SDL 1.3, though not necessarily a strict subset. Thus,
    if all else fails, it should be practical to rewrite the 1.2 binding
    to run with 2.0.

Thus, if you want it soon, you should use SDL 1.2. If you can wait a
while, then look at 2.0.> Date: Tue, 24 Jan 2012 14:38:15 -0800

From: Dimiter ‘malkia’ Stanev
To: sdl at lists.libsdl.org
Subject: [SDL] Desktop (osx, windows, linux) and Mobile SDL (ios,