From 74d9c0069baf693211c3f82097692abd88c72828 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Sat, 28 Nov 2009 12:41:16 +0000 Subject: [PATCH] New configure option --enable-track-src-odirect --- README | 5 +++++ xorriso/README | 12 ++++++++++++ xorriso/configure_ac.txt | 13 ++++++++++++- xorriso/xorriso_makefile_am.txt | 3 ++- xorriso/xorriso_timestamp.h | 2 +- 5 files changed, 32 insertions(+), 3 deletions(-) diff --git a/README b/README index 20154c24..cd0ef79d 100644 --- a/README +++ b/README @@ -91,6 +91,11 @@ By default the filter feature is disabled if effective user id and real user id differ. This ban can be lifted by --enable-external-filters-setuid +In some situations Linux may deliver a better write performance to DVD drives +if 64 KB rather than 32 KB are transmitted in each write operation. +64k can be made default at configure time by: + --enable-dvd-obs-64k + Drives and Disk File Objects diff --git a/xorriso/README b/xorriso/README index 69105549..62943588 100644 --- a/xorriso/README +++ b/xorriso/README @@ -102,6 +102,18 @@ By default the filter feature is disabled if effective user id and real user id differ. This ban can be lifted by --enable-external-filters-setuid +In some situations Linux may deliver a better write performance to drives if +the track input is read with O_DIRECT (see man 2 open). The included libburn +and the cdrecord emulation of xorriso can be told to use this peculiar read +mode by: + --enable-track-src-odirect + +But often libburn will yield even better performance in such a situation if +64 KB are transmitted in each write operation rather than 32 KB. +64k can be made default at configure time by: + --enable-dvd-obs-64k +This may be combined with above --enable-track-src-odirect . + If you want xorriso to report a "Build timestamp" with its option -version: make buildstamped diff --git a/xorriso/configure_ac.txt b/xorriso/configure_ac.txt index 8f8b8acb..85b93a78 100644 --- a/xorriso/configure_ac.txt +++ b/xorriso/configure_ac.txt @@ -205,7 +205,7 @@ fi AC_SUBST(EXTF_SUID_DEF) AC_ARG_ENABLE(dvd-obs-64k, -[ --enable-dvd-obs-64k 64 KB default size for DVD/BD writing, default=no], +[ --enable-dvd-obs-64k 64 KB default size for DVD/BD writing, default=no], , enable_fifo_odirect=no) if test x$enable_dvd_obs_64k = xyes; then XORRISO_DVD_OBS_64K="-DXorriso_dvd_obs_default_64K" @@ -216,6 +216,17 @@ else fi AC_SUBST(XORRISO_DVD_OBS_64K) +AC_ARG_ENABLE(track-src-odirect, +[ --enable-track-src-odirect Enable use of O_DIRECT with -as cdrskin, default=no], + , enable_track_src_odirect=no) +if test x$enable_track_src_odirect = xyes; then + LIBBURN_O_DIRECT_DEF="-DLibburn_read_o_direcT" + echo "enabled use of O_DIRECT with input of -as cdrskin" +else + LIBBURN_O_DIRECT_DEF= + echo "disabled use of O_DIRECT with input of -as cdrskin" +fi +AC_SUBST(LIBBURN_O_DIRECT_DEF) AC_CONFIG_FILES([ Makefile diff --git a/xorriso/xorriso_makefile_am.txt b/xorriso/xorriso_makefile_am.txt index 410b8e8b..e693a8ac 100644 --- a/xorriso/xorriso_makefile_am.txt +++ b/xorriso/xorriso_makefile_am.txt @@ -22,7 +22,8 @@ xorriso_xorriso_CPPFLAGS = -I./libburn -I./libisofs -I./libisoburn -I./xorriso # are in a separate readline-development package. xorriso_xorriso_CFLAGS = -DXorriso_standalonE -DXorriso_with_maiN \ $(READLINE_DEF) $(LIBACL_DEF) $(XATTR_DEF) \ - $(EXTF_DEF) $(EXTF_SUID_DEF) $(ZLIB_DEF) + $(EXTF_DEF) $(EXTF_SUID_DEF) $(ZLIB_DEF) \ + $(XORRISO_DVD_OBS_64K) $(LIBBURN_O_DIRECT_DEF) xorriso_xorriso_LDADD = $(THREAD_LIBS) $(LIBBURN_ARCH_LIBS) diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index ac63ead7..70f8a132 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2009.11.28.123903" +#define Xorriso_timestamP "2009.11.28.124241"