Re: [AD] Indexed datafiles

[ Thread Index | Date Index | More lists.liballeg.org/allegro-developers Archives ]


On Fri, 2006-01-06 at 01:50 +1100, Peter Wang wrote:
> On 2006-01-05, Elias Pschernig <elias@xxxxxxxxxx> wrote:
> > 
> > I think the attached patch updates the version matching for the new
> > 4.2.x policy. For example:
> > 
> > - You compile with 4.1.12, then only linking against 4.1.12 is ok. For
> > WIP versions, we provide no binary compatibility at all.
> > 
> > - You compile with 4.2.1, then linking against 4.2.1, 4.2.2, ... are ok,
> > but against 4.2.0 is not. (I.e. we do not provide forward binary
> > compatibility anymore, so you can link against a newer DLL, but not
> > against an older.)
> 
> I think enforcing a DLL upgrade for every single release might be a
> little too strong.  Even though we may break forwards compatibility with
> some releases, (1) it probably won't happen that often, and (2) most
> users won't be affected anyway.
> 
> A compromise may be to ask Allegro users to check for a minimum version
> of Allegro (from a forwards-compatible series) that their program
> requires.  We would have to make that check easy to do, of course, but I
> expect most programs don't need such a check anyway.
> 

Aha, so forward compatibility after all, just not strict. Well, what
about a function: get_allegro_version(int *a, int *b, int *c)

Then if you want to use e.g. the list_config_entries function, you would
do:

get_allegro_version(&a, &b, &c);
if (!(a >= 4 && b >= 2 && c >= 1))
   abort_with_error("Need at least Allegro 4.2.1 DLL.\n");

And otherwise, it would run even with the 4.2.0 DLL.

-- 
Elias Pschernig





Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/