Version leap to 0.1.1
This commit is contained in:
@ -62,12 +62,12 @@ libburn demands rw-permissions to drive device file resp. file object.
|
||||
If the input drive provides a suitable ISO RockRidge image, then its tree
|
||||
may be loaded into memory and can then be manipulated by libisofs API calls.
|
||||
The loading is done by isoburn_read_image() under control of
|
||||
struct isoburn_read_opts which the application obtains from libisoburn.
|
||||
It may be manipulated by the family of isoburn_ropt_set_*() functions.
|
||||
struct isoburn_read_opts which the application obtains from libisoburn
|
||||
and manipulates by the family of isoburn_ropt_set_*() functions.
|
||||
|
||||
Writing of result images is controlled by libisofs related parameters
|
||||
in a struct isoburn_imgen_opts which the application obtains from libisoburn.
|
||||
It may be manipulated by the family of isoburn_igopt_set_*() functions.
|
||||
in a struct isoburn_imgen_opts which the application obtains from libisoburn
|
||||
and manipulates by the family of isoburn_igopt_set_*() functions.
|
||||
|
||||
All multi-session aspects are handled by libisoburn according to these
|
||||
settings. The application does not have to analyze media state and write
|
||||
@ -164,12 +164,19 @@ int isoburn_is_compatible(int major, int minor, int micro, int flag);
|
||||
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.
|
||||
Features of a pare release will stay available and ABI
|
||||
compatible as long as the SONAME of libisoburn stays "1".
|
||||
Currently there are no plans to ever change the SONAME.
|
||||
|
||||
Odd numbers indicate that API upgrades are in progress.
|
||||
I.e. new features might be already present or they might
|
||||
be still missing.
|
||||
be still missing. Newly introduced features may be changed
|
||||
incompatibly or even be revoked before release of a pare
|
||||
version.
|
||||
So micro revisions {1,3,5,7,9} should never be used for
|
||||
dynamic linking unless the proper library match can be
|
||||
guaranteed by external circumstances.
|
||||
|
||||
@return 1 success, <=0 might in future become an error indication
|
||||
*/
|
||||
void isoburn_version(int *major, int *minor, int *micro);
|
||||
@ -224,13 +231,13 @@ int isoburn_libburn_req(int *major, int *minor, int *micro);
|
||||
@since 0.1.0
|
||||
*/
|
||||
#define isoburn_header_version_major 0
|
||||
#define isoburn_header_version_minor 0
|
||||
#define isoburn_header_version_minor 1
|
||||
#define isoburn_header_version_micro 1
|
||||
/** Note:
|
||||
Above version numbers are also recorded in configure.ac because libtool
|
||||
wants them as parameters at build time.
|
||||
For the library compatibility check ISOBURN_*_VERSION in configure.ac
|
||||
are not decisive. Only the three numbers above do matter.
|
||||
For the library compatibility check, ISOBURN_*_VERSION in configure.ac
|
||||
are not decisive. Only the three numbers here do matter.
|
||||
*/
|
||||
/** Usage discussion:
|
||||
|
||||
@ -273,8 +280,20 @@ at the cost of excluding some older libraries.
|
||||
|
||||
These two advises are mutually exclusive.
|
||||
|
||||
-----------------------------------------------------
|
||||
|
||||
For an implementation of the Thomas Schmitt approach,
|
||||
see libisoburn/burn_wrap.c : isoburn_initialize()
|
||||
This connects libisoburn as "application" with libisofs
|
||||
as "library".
|
||||
|
||||
The compatible part of Vreixo Formoso's approach is implemented
|
||||
in configure.ac LIBBURN_REQUIRED, LIBISOFS_REQUIRED.
|
||||
In isoburn_initialize() it would rather test by
|
||||
iso_lib_is_compatible(isoburn_libisofs_req_major,...
|
||||
than by
|
||||
iso_lib_is_compatible(iso_lib_header_version_major,...
|
||||
and would leave out the ugly compile time traps.
|
||||
|
||||
*/
|
||||
|
||||
|
Reference in New Issue
Block a user