adonthell-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Adonthell-devel] SDL 1.3 backend


From: Kai Sterker
Subject: [Adonthell-devel] SDL 1.3 backend
Date: Tue, 24 Feb 2009 16:53:22 +0100

For those who haven't been following the activity on #adonthell (yeah,
there's some activity these days, feel free to join!):

In order to work around problems in SDL 1.2 on the Mac, I've created a
SDL 1.3 backend. It is derived from our SDL 1.2 backend, with some
updates where the SDL compatibility layer wasn't compatible enough. So
it's not a true SDL 1.3 implementation, just the least amount of work
to get Adonthell to run with SDL 1.3.

Code is in CVS (make sure to run update -d) and already integrated
into the autotools build. CMake will follow shortly.

The way SDL 1.3 behaves, it will replace a SDL 1.2 installation, so I
decided to build either the sdl1.2 or sdl1.3 backend, not both. Also,
in any case the resulting modules will be called _sdl.so. The question
that remains is, how should the build system accomplish this?

So far, I have added sdl13 directories containing the new backend.
Since it has the same files as the sdl12 backend, I've changed the
Makefiles to point to $(sdlbackenddir)/<file>.cc and determine the
value of sdlbackenddir at configure time. The problem I've run into
with that is that the dependency files in the .deps directory will not
be regenerated when configure is run and the value of $(sdlbackenddir)
changes. The build would fail unless I manually deleted the .deps
directory and reran configure to have it recreated.

Seeing how this may lead to problems for people, I'm wondering if
there is a better way to do this. I don't really want to create
explicit targets for both 1.2 and 1.3 and switch between them with a
conditional. Instead I thought about keeping the sdl module directory,
but in case of SDL 1.3, copy the files over from the sdl13
directories. But that is messy too, especially if the sdl directory is
version controlled. Anyone any better ideas? Or do it the long (and
clean) way with separate targets and a conditional?

Kai




reply via email to

[Prev in Thread] Current Thread [Next in Thread]