Introduced versioning (still pre-release) and new API function isoburn_version()

This commit is contained in:
2008-01-26 12:06:26 +00:00
parent 64ceb7c2e9
commit a7b4cf0560
6 changed files with 47 additions and 32 deletions

View File

@ -57,17 +57,19 @@ int isoburn_initialize(char msg[1024], int flag)
return(0);
}
iso_lib_version(&major, &minor, &micro);
sprintf(msg+strlen(msg), "libisofs version %d.%d.%d , ", major, minor, micro);
sprintf(msg+strlen(msg), "libisofs-%d.%d.%d , ", major, minor, micro);
if(!burn_initialize()) {
sprintf(msg+strlen(msg), "Cannot initialize libburn\n");
return(0);
}
burn_version(&major, &minor, &micro);
sprintf(msg+strlen(msg), "libburn version %d.%d.%d , ", major, minor, micro);
sprintf(msg+strlen(msg), "libburn-%d.%d.%d , ", major, minor, micro);
isoburn_destroy_all(&isoburn_list_start, 0); /* isoburn_list_start= NULL */
isoburn_version(&major, &minor, &micro);
sprintf(msg+strlen(msg), "libisoburn-%d.%d.%d", major, minor, micro);
return(1);
}

View File

@ -34,8 +34,10 @@
#include "libisoburn.h"
#include "isoburn.h"
#include "../version.h"
/* -------------------------- isoburn ----------------------- */
@ -381,3 +383,12 @@ int isoburn_prepare_new_image(struct burn_drive *d, struct burn_disc **disc,
{
return isoburn_prepare_disc_aux(d, disc, opts, 1);
}
void isoburn_version(int *major, int *minor, int *micro)
{
*major = ISOBURN_MAJOR_VERSION;
*minor = ISOBURN_MINOR_VERSION;
*micro = ISOBURN_MICRO_VERSION;
}

View File

@ -49,6 +49,22 @@ are appropriate for particular target "drives".
int isoburn_initialize(char msg[1024], int flag);
/** Obtain the three release version numbers of the library.
@param major The maturity version (0 for now, as we are still learning)
@param minor The development goal version.
@param micro The development step version. This has an additional meaning:
Pare numbers indicate a version with frozen API. I.e. you can
rely on the same set of features to be present in all
published releases with that major.minor.micro combination.
Odd numbers indicate that API upgrades are in progress.
I.e. new features might be already present or they might
be still missing. You need to check before compiling an
application which relies on freshly introduced features.
*/
void isoburn_version(int *major, int *minor, int *micro);
/** Aquire a target drive by its filesystem path resp. libburn persistent
address.
Wrapper for: burn_drive_scan_and_grab()