diff --git a/README b/README
index a83c6948..e3447001 100644
--- a/README
+++ b/README
@@ -53,12 +53,17 @@ as well as
/usr/lib/libburn/libburn.h
+ xorriso
+
libisoburn includes a command line and dialog application named xorriso,
which offers a substantial part of libisoburn features to shell scripts and
-users.
-After installation its documentation is available via
- man xorriso
+users. Its file xorriso/README describes a standlone tarball as first
+preference for xorriso installation.
+The installation described here produces a dynamically linked xorriso binary
+as described in chapter "libisoburn" at the end of that text.
+After installation documentation is available via
+ man xorriso
Drives and Disk File Objects
diff --git a/configure.ac b/configure.ac
index 971dfea2..fa3641bf 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT([libisoburn], [0.0.1], [http://libburnia-project.org])
+AC_INIT([libisoburn], [0.1.0], [http://libburnia-project.org])
AC_PREREQ([2.50])
dnl AC_CONFIG_HEADER([config.h])
@@ -14,8 +14,8 @@ dnl LT_CURREN, LT_AGE, LT_REVISION where SONAME becomes LT_CURRENT - LT_AGE
dnl
dnl These three are only copies to provide libtool with unused LT_RELEASE
ISOBURN_MAJOR_VERSION=0
-ISOBURN_MINOR_VERSION=0
-ISOBURN_MICRO_VERSION=1
+ISOBURN_MINOR_VERSION=1
+ISOBURN_MICRO_VERSION=0
dnl ISOBURN_VERSION=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION.$ISOBURN_MICRO_VERSION
AC_SUBST(ISOBURN_MAJOR_VERSION)
@@ -24,12 +24,17 @@ AC_SUBST(ISOBURN_MICRO_VERSION)
dnl AC_SUBST(ISOBURN_VERSION)
dnl Libtool versioning
-dnl Generate libisoburn.so.1.0.0
+dnl Generate libisoburn.so.1.x.y
dnl SONAME will become LT_CURRENT - LT_AGE
+dnl
+dnl ts A80215
+dnl This ist the first release version after unreleased libisoburn.so.1.0.0
+dnl ### development: LT_CURRENT++, LT_AGE++ has not happened meanwhile.
dnl
+dnl SONAME = 2 - 1 = 1 . Library name = libburn.so.1.1.0
LT_RELEASE=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION
-LT_CURRENT=1
-LT_AGE=0
+LT_CURRENT=2
+LT_AGE=1
LT_REVISION=0
LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
@@ -83,9 +88,6 @@ AC_CHECK_HEADER(readline/history.h, AC_CHECK_LIB(readline, add_history, X= , REA
AC_SUBST(READLINE_DEF)
-dnl >>> How to check for proper library versions ?
-dnl >>> would need libburn-0.4.2 or higher .so.4
-dnl >>> would need libisofs-0.6.1 or higher .so.6
AC_CHECK_HEADER(libburn/libburn.h)
AC_CHECK_HEADER(libisofs/libisofs.h)
diff --git a/libisoburn/libisoburn.h b/libisoburn/libisoburn.h
index 341a2abb..a7822c8d 100644
--- a/libisoburn/libisoburn.h
+++ b/libisoburn/libisoburn.h
@@ -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_micro 1
+#define isoburn_header_version_minor 1
+#define isoburn_header_version_micro 0
/** 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.
*/
diff --git a/xorriso/README b/xorriso/README
index 0f844691..7005c8d9 100644
--- a/xorriso/README
+++ b/xorriso/README
@@ -4,7 +4,7 @@
xorriso. By Thomas Schmitt