From 0e6c8813eac797dca6664a925949406ef0a3dfe8 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Fri, 1 Feb 2008 19:59:12 +0000 Subject: [PATCH] Enabled build of dynamically linked xorriso, joined -1.pc club --- libisoburn/trunk/Makefile.am | 20 +++++++++++++--- libisoburn/trunk/configure.ac | 20 +++++++++++++++- .../{libisoburn.pc.in => libisoburn-1.pc.in} | 2 +- libisoburn/trunk/xorriso/README | 23 +++++++++++++++++++ libisoburn/trunk/xorriso/xorriso_timestamp.h | 2 +- 5 files changed, 61 insertions(+), 6 deletions(-) rename libisoburn/trunk/{libisoburn.pc.in => libisoburn-1.pc.in} (73%) diff --git a/libisoburn/trunk/Makefile.am b/libisoburn/trunk/Makefile.am index c443100f..ac073326 100644 --- a/libisoburn/trunk/Makefile.am +++ b/libisoburn/trunk/Makefile.am @@ -33,7 +33,21 @@ noinst_PROGRAMS = # test_test_LDADD = $(libisoburn_libisoburn_la_OBJECTS) $(THREAD_LIBS) -lburn -lisofs # test_test_SOURCES = test/test.c -bin_PROGRAMS = + + +bin_PROGRAMS = \ + xorriso/xorriso + +xorriso_xorriso_CPPFLAGS = -Ilibisoburn +xorriso_xorriso_CFLAGS = -DXorriso_with_maiN -DXorriso_with_regeX $(READLINE_DEF) +xorriso_xorriso_LDADD = libisoburn/libisoburn.la -lisofs -lburn $(THREAD_LIBS) +xorriso_xorriso_SOURCES = \ + xorriso/xorriso.h \ + xorriso/xorriso_private.h \ + xorriso/xorriso.c \ + xorriso/xorrisoburn.h \ + xorriso/xorrisoburn.c \ + xorriso/xorriso_timestamp.h ## ========================================================================= ## @@ -85,11 +99,11 @@ indent: $(indent_files) # Extra things nodist_pkgconfig_DATA = \ - libisoburn.pc + libisoburn-1.pc EXTRA_DIST = \ - libisoburn.pc.in \ + libisoburn-1.pc.in \ version.h.in \ doc/comments \ doc/doxygen.conf.in \ diff --git a/libisoburn/trunk/configure.ac b/libisoburn/trunk/configure.ac index 2c3e1110..a8b84c2f 100644 --- a/libisoburn/trunk/configure.ac +++ b/libisoburn/trunk/configure.ac @@ -72,6 +72,24 @@ TARGET_SHIZZLE AC_SUBST(ARCH) AC_SUBST(LIBBURN_ARCH_LIBS) + +dnl Check whether there is readline-devel and readline-runtime. +dnl If not, erase this macro which would enable use of readline(),add_history() +READLINE_DEF="-DXorriso_with_readlinE" +dnl The empty yes case obviously causes -lreadline to be linked +AC_CHECK_HEADER(readline/readline.h, AC_CHECK_LIB(readline, readline, , READLINE_DEF= ), READLINE_DEF= ) +dnl The X= in the yes case prevents that -lreadline gets linked twice +AC_CHECK_HEADER(readline/history.h, AC_CHECK_LIB(readline, add_history, X= , READLINE_DEF= ), READLINE_DEF= ) +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) + + dnl Add compiler-specific flags dnl See if the user wants aggressive optimizations of the code @@ -95,6 +113,6 @@ AC_CONFIG_FILES([ Makefile doc/doxygen.conf version.h - libisoburn.pc + libisoburn-1.pc ]) AC_OUTPUT diff --git a/libisoburn/trunk/libisoburn.pc.in b/libisoburn/trunk/libisoburn-1.pc.in similarity index 73% rename from libisoburn/trunk/libisoburn.pc.in rename to libisoburn/trunk/libisoburn-1.pc.in index 8d3fcf6d..7fae3f90 100644 --- a/libisoburn/trunk/libisoburn.pc.in +++ b/libisoburn/trunk/libisoburn-1.pc.in @@ -4,7 +4,7 @@ libdir=@libdir@ includedir=@includedir@ Name: libisoburn -Description: ISO9660 filesystem extension library +Description: Multi-session filesystem extension to libisofs, libburn. Version: @VERSION@ Requires: Libs: -L${libdir} -lisoburn diff --git a/libisoburn/trunk/xorriso/README b/libisoburn/trunk/xorriso/README index ec18ee8e..eab874f1 100644 --- a/libisoburn/trunk/xorriso/README +++ b/libisoburn/trunk/xorriso/README @@ -111,6 +111,29 @@ Like: xorriso -dev stdio:/tmp/pseudo_drive ...more arguments... + libisoburn + +xorriso is based on libisofs which does ISO 9600 filesystem aspects and on +libburn which does the input and output aspects. Parts of this foundation +are accessed via libisoburn, which is closely related to xorriso. + +libisoburn takes care for the emulation of ISO 9660 multi-session on +overwriteable media or random access files. It also encapsulates the +coordination between libisofs and libburn. + +The sourcecode of all three libraries is included in the xorriso standalone +tarball. +But you may as well get and install releases of libburn and libisofs, +in order to be able to install a release of libisoburn which produces a +dynamically linked xorriso binary. This binary is leaner but depends on +properly installed libraries of suitable revision. + +Dynamic library requirements for libisoburn-0.1.0 : +- libburn.so.4 , version 0.4.2 or higher +- libisofs.so.6 , version 0.6.2 or higher + +Standalone xorriso has less runtime dependencies and can be copied more freely. + ------------------------------------------------------------------------------ diff --git a/libisoburn/trunk/xorriso/xorriso_timestamp.h b/libisoburn/trunk/xorriso/xorriso_timestamp.h index 2fbc2c7a..62bac3b4 100644 --- a/libisoburn/trunk/xorriso/xorriso_timestamp.h +++ b/libisoburn/trunk/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2008.01.31.214647" +#define Xorriso_timestamP "2008.02.01.195817"