This is the mail archive of the ecos-discuss@sourceware.cygnus.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: serial_devio renamaed to cyg_serial_devio


> I do not think there is any easy way of achieving this at present. 

OK. Lets think about the future. The aim of using packages is so that
3rd parties can develop there own packages which can be plugged into
the standard distribution. Things change, move on, and are no longer
compatible. As this has shown you sometimes need the version
information to work out what to do to make things work with different
versions.

It seems to me there are two ways to do this, which are not mutually
exclusive. If there are big changes you distribute multiple packages
and let CDL work out the dependances and pick the correct package to
use. If the changes are minor, as in this cause just one variable
name, #ifdef seems a good way to go. 

> What might be possible is for the configuration tools to generate
> additional #define's along the lines of:
> 
> #define CYGPKG_IO_SERIAL v1_3_5
> #define CYGPKG_IO_SERIAL_VERSION_MAJOR 1
> #define CYGPKG_IO_SERIAL_VERSION_MINOR 3
> ...

Sounds good.
 
> I am not quite sure what to call the versioning levels after major or
> minor, there could be any number of these.

CYGPKG_IO_SERIAL_VERSION_VERY_MINOR? You have to draw the line
somewhere. 3 levels seems enough to me. 

> Also versions may include letters or text, e.g. 1.3.5beta

Specify that any trailling text are removed to leave an integer?

So, do we need this sort of versioning features? Is this a good approch?

        Andrew

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]