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 Integrated sub project of libburnia-project.org but also published via: http://scdbackup.sourceforge.net/xorriso_eng.html -http://scdbackup.sourceforge.net/xorriso-0.1.0.tar.gz +http://scdbackup.sourceforge.net/xorriso-0.1.0.pl00.tar.gz Copyright (C) 2006-2008 Thomas Schmitt, provided under GPL version 2. ------------------------------------------------------------------------------ @@ -27,16 +27,17 @@ By using this software you agree to the disclaimer at the end of this text: Compilation, First Glimpse, Installation -The most simple way to get xorriso is the xorriso standalone tarball. +The most simple way to get xorriso from source code is the xorriso standalone +tarball. Prerequisites: The tarball contains anything that is needed except libc and libpthread. -libreadline and the libreadline-dev headers will make dialog mode -more convenient, but are not mandatory. +libreadline and the readline-dev headers will make dialog mode more convenient, +but are not mandatory. -Obtain xorriso-0.1.0.tar.gz, take it to a directory of your choice and do: +Obtain xorriso-0.1.0.pl00.tar.gz, take it to a directory of your choice and do: - tar xzf xorriso-0.1.0.tar.gz + tar xzf xorriso-0.1.0.pl00.tar.gz cd xorriso-0.1.0 Within that directory execute: diff --git a/xorriso/compile_xorriso.sh b/xorriso/compile_xorriso.sh index d38b567f..85732da9 100755 --- a/xorriso/compile_xorriso.sh +++ b/xorriso/compile_xorriso.sh @@ -1,9 +1,14 @@ #!/bin/sh -# compile_xorriso.sh -# Copyright 2005 - 2007 Thomas Schmitt, scdbackup@gmx.net, GPL -# to be executed in a common parent of the directories given with -# $isofs $isoburn $burn +# compile_xorriso.sh +# Copyright 2005 - 2008 Thomas Schmitt, scdbackup@gmx.net, GPL +# +# Not intended for general use in production installations ! +# Rather use: ./bootstrap ; ./configure ; make +# +# This is a development tool which expects a special setup of directories. +# It is to be executed in a common parent of the directories given with +# $isofs $isoburn $burn $xorr isofs=./nglibisofs-develop/libisofs burn=./libburn-develop/libburn diff --git a/xorriso/configure_ac.txt b/xorriso/configure_ac.txt index 2ec52f8f..3c4cc4b6 100644 --- a/xorriso/configure_ac.txt +++ b/xorriso/configure_ac.txt @@ -28,8 +28,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 dnl ISOBURN_MAJOR_VERSION=0 -dnl ISOBURN_MINOR_VERSION=0 -dnl ISOBURN_MICRO_VERSION=1 +dnl ISOBURN_MINOR_VERSION=1 +dnl ISOBURN_MICRO_VERSION=0 dnl AC_SUBST(ISOBURN_MAJOR_VERSION) dnl AC_SUBST(ISOBURN_MINOR_VERSION) dnl AC_SUBST(ISOBURN_MICRO_VERSION) diff --git a/xorriso/make_xorriso_standalone.sh b/xorriso/make_xorriso_standalone.sh index b95fdc53..e4f0dc38 100755 --- a/xorriso/make_xorriso_standalone.sh +++ b/xorriso/make_xorriso_standalone.sh @@ -1,15 +1,20 @@ #!/bin/sh -# +# make_xorriso_standalone.sh # Copyright 2008 Thomas Schmitt, scdbackup@gmx.net, GPL # +# Not intended for general use in production installations ! +# +# This is a development tool which expects a special setup of directories. +# It is to be executed in a common parent of the directories +# nglibisofs-develop libburn-develop libisoburn-develop +# # Creates a standalone tree for building xorriso # from the contents of a unified libburnia development tree. +# # The ./bootstrap script gets applied and a source tarball # is made. # -# To be executed in the parent of the *-develop directories. -# # From that tree can be build a binary xorriso/xorriso # which at runtime depends only on libc and libpthread. # Execute in $lone_dir : @@ -20,10 +25,11 @@ current_dir=$(pwd) lone_dir="$current_dir"/"xorriso-standalone" -xorriso_rev=0.0.1 -xorriso_pl="" +xorriso_rev=0.1.0 +# For unstable uploads: +# xorriso_pl="" # For stable releases: -# xorriso_pl=".pl00" +xorriso_pl=".pl00" with_bootstrap_tarball=1 @@ -73,6 +79,9 @@ create_dir "$lone_dir" copy_files \ AUTHORS \ CONTRIBUTORS \ + COPYRIGHT \ + COPYING \ + INSTALL \ acinclude.m4 \ aclocal.m4 \ bootstrap \ @@ -98,7 +107,7 @@ copy_files xorriso/xorriso_pc_in.txt "$lone_dir"/xorriso.pc.in copy_files xorriso/README "$lone_dir"/README -echo "See end of xorriso/changelog.txt" >"$lone_dir"/TODO +# echo "See end of xorriso/changelog.txt" >"$lone_dir"/TODO # libisoburn @@ -127,9 +136,6 @@ copy_files \ "$lone_dir"/test/compare_file.c -# >>> create compile_xorriso.sh for standalone - - # nglibisofs create_dir "$lone_dir"/libisofs @@ -177,7 +183,6 @@ create_dir "$lone_dir"/libburn goto_dir "$current_dir"/libburn-develop copy_files libburn/*.[ch] "$lone_dir"/libburn -copy_files COPYING "$lone_dir"/COPYING # To get a common version.h cat version.h.in >> "$lone_dir"/version.h.in diff --git a/xorriso/xorriso_eng.html b/xorriso/xorriso_eng.html index 30df1a67..240bf7f5 100644 --- a/xorriso/xorriso_eng.html +++ b/xorriso/xorriso_eng.html @@ -62,7 +62,7 @@ GPL software included:
reads and writes data from and to CD and DVD.
(founded by Derek Foreman and Ben Jansens, furthered by team of libburnia-project.org)
-
libisofs-0.6.1
+
libisofs-0.6.2
operates ISO 9660 images.
(By Vreixo Formoso from team of libburnia-project.org)
libisoburn-0.1.0
@@ -119,6 +119,9 @@ Reads its instructions from command line arguments, dialog, and batch files.
  • Provides navigation commands for interactive ISO image manipulation.
  • +
  • +Adjustable thresholds for abort, exit value, and problem reporting. +
  • @@ -264,7 +267,7 @@ Testers wanted who are willing to risk some double layer DVD media.

    Download as source code (see README):
    -
    xorriso-0.1.0.tar.gz +
    xorriso-0.1.0.pl00.tar.gz ( KB).
    diff --git a/xorriso/xorriso_private.h b/xorriso/xorriso_private.h index 44cea47b..8d80f589 100644 --- a/xorriso/xorriso_private.h +++ b/xorriso/xorriso_private.h @@ -18,7 +18,7 @@ #ifndef Xorriso_private_includeD #define Xorriso_private_includeD yes -#define Xorriso_program_versioN "0.0.1" +#define Xorriso_program_versioN "0.1.0" /** The source code release timestamp */ #include "xorriso_timestamp.h" diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index d7567536..588e47ce 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.02.14.182351" +#define Xorriso_timestamP "2008.02.15.100001" diff --git a/xorriso/xorrisoburn.h b/xorriso/xorrisoburn.h index 413a26a3..5fb0707b 100644 --- a/xorriso/xorrisoburn.h +++ b/xorriso/xorrisoburn.h @@ -20,8 +20,8 @@ struct FindjoB; /* The minimum version of libisoburn to be used with this version of xorriso */ #define xorriso_libisoburn_req_major 0 -#define xorriso_libisoburn_req_minor 0 -#define xorriso_libisoburn_req_micro 1 +#define xorriso_libisoburn_req_minor 1 +#define xorriso_libisoburn_req_micro 0 int Xorriso_startup_libraries(struct XorrisO *xorriso, int flag);