2009-03-16 12:07:24 +00:00
|
|
|
AC_INIT([libisoburn], [0.3.7], [http://libburnia-project.org])
|
2007-09-14 04:32:46 +00:00
|
|
|
AC_PREREQ([2.50])
|
|
|
|
dnl AC_CONFIG_HEADER([config.h])
|
|
|
|
|
|
|
|
AC_CANONICAL_HOST
|
|
|
|
AC_CANONICAL_TARGET
|
|
|
|
|
|
|
|
AM_INIT_AUTOMAKE([subdir-objects])
|
|
|
|
|
2008-04-28 12:34:39 +00:00
|
|
|
dnl Hint: Search list for version code aspects:
|
2009-01-05 15:33:46 +00:00
|
|
|
dnl /AC_INIT(
|
2008-04-28 12:34:39 +00:00
|
|
|
dnl /ISOBURN_.*_VERSION
|
|
|
|
dnl /LT_.*
|
|
|
|
dnl /LIB.*_REQUIRED
|
|
|
|
|
2008-06-02 15:29:46 +00:00
|
|
|
dnl The API version codes are defined in libisoburn/libisoburn.h
|
2008-01-29 18:44:54 +00:00
|
|
|
dnl #define isoburn_header_version_*
|
|
|
|
dnl configure.ac only rules the libtool revision numbering about
|
|
|
|
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
|
2008-01-26 12:06:26 +00:00
|
|
|
ISOBURN_MAJOR_VERSION=0
|
2008-12-01 20:48:49 +00:00
|
|
|
ISOBURN_MINOR_VERSION=3
|
2009-03-16 12:07:24 +00:00
|
|
|
ISOBURN_MICRO_VERSION=7
|
|
|
|
|
2008-01-29 18:44:54 +00:00
|
|
|
dnl ISOBURN_VERSION=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION.$ISOBURN_MICRO_VERSION
|
|
|
|
|
2008-01-26 12:06:26 +00:00
|
|
|
AC_SUBST(ISOBURN_MAJOR_VERSION)
|
|
|
|
AC_SUBST(ISOBURN_MINOR_VERSION)
|
|
|
|
AC_SUBST(ISOBURN_MICRO_VERSION)
|
2008-01-29 18:44:54 +00:00
|
|
|
dnl AC_SUBST(ISOBURN_VERSION)
|
2007-09-14 04:32:46 +00:00
|
|
|
|
|
|
|
dnl Libtool versioning
|
2008-02-15 21:19:24 +00:00
|
|
|
dnl Generate libisoburn.so.1.x.y
|
2008-01-29 18:44:54 +00:00
|
|
|
dnl SONAME will become LT_CURRENT - LT_AGE
|
2008-02-15 21:19:24 +00:00
|
|
|
dnl
|
2009-03-16 12:07:24 +00:00
|
|
|
dnl ts A90316
|
|
|
|
dnl ### This is the release version 0.3.6 = libisoburn.so.1.25.0
|
2008-05-18 08:48:07 +00:00
|
|
|
dnl This is the development version after above stable release
|
2008-08-24 17:53:12 +00:00
|
|
|
dnl LT_CURRENT++, LT_AGE++ have not happened happened yet.
|
|
|
|
dnl ### LT_CURRENT++, LT_AGE++ has happened meanwhile.
|
2008-01-29 18:44:54 +00:00
|
|
|
dnl
|
2009-03-16 12:07:24 +00:00
|
|
|
dnl SONAME = 26 - 25 = 1 . Library name = libisoburn.so.1.25.0
|
2008-01-26 12:06:26 +00:00
|
|
|
LT_RELEASE=$ISOBURN_MAJOR_VERSION.$ISOBURN_MINOR_VERSION
|
2009-03-16 12:07:24 +00:00
|
|
|
LT_CURRENT=26
|
|
|
|
LT_AGE=25
|
2008-03-12 13:19:10 +00:00
|
|
|
LT_REVISION=0
|
2007-09-14 04:32:46 +00:00
|
|
|
LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
|
|
|
|
|
|
|
|
AC_SUBST(LT_RELEASE)
|
|
|
|
AC_SUBST(LT_CURRENT)
|
|
|
|
AC_SUBST(LT_REVISION)
|
|
|
|
AC_SUBST(LT_AGE)
|
|
|
|
AC_SUBST(LT_CURRENT_MINUS_AGE)
|
|
|
|
|
|
|
|
AC_PREFIX_DEFAULT([/usr/local])
|
|
|
|
test "$prefix" = "NONE" && prefix=$ac_default_prefix
|
|
|
|
|
|
|
|
AM_MAINTAINER_MODE
|
|
|
|
|
|
|
|
AM_PROG_CC_C_O
|
|
|
|
AC_C_CONST
|
|
|
|
AC_C_INLINE
|
|
|
|
AC_C_BIGENDIAN
|
|
|
|
|
|
|
|
dnl Large file support
|
|
|
|
AC_SYS_LARGEFILE
|
|
|
|
AC_FUNC_FSEEKO
|
|
|
|
AC_CHECK_FUNC([fseeko])
|
|
|
|
if test ! $ac_cv_func_fseeko; then
|
|
|
|
AC_ERROR([Libburn requires largefile support.])
|
|
|
|
fi
|
|
|
|
|
2009-02-04 20:06:56 +00:00
|
|
|
dnl If iconv(3) is in an extra lib, then it gets added to variable LIBS.
|
|
|
|
dnl If not, then no -liconv will be added.
|
|
|
|
AC_CHECK_LIB(iconv, iconv, , )
|
|
|
|
|
2007-09-14 04:32:46 +00:00
|
|
|
AC_PROG_LIBTOOL
|
|
|
|
AC_SUBST(LIBTOOL_DEPS)
|
|
|
|
LIBTOOL="$LIBTOOL --silent"
|
|
|
|
|
|
|
|
AC_PROG_INSTALL
|
|
|
|
|
|
|
|
AC_CHECK_HEADERS()
|
|
|
|
|
|
|
|
THREAD_LIBS=-lpthread
|
|
|
|
AC_SUBST(THREAD_LIBS)
|
|
|
|
|
|
|
|
TARGET_SHIZZLE
|
|
|
|
AC_SUBST(ARCH)
|
2009-03-18 10:39:35 +00:00
|
|
|
AC_SUBST(LIBBURNIA_PKGCONFDIR)
|
2007-09-14 04:32:46 +00:00
|
|
|
AC_SUBST(LIBBURN_ARCH_LIBS)
|
|
|
|
|
2008-02-01 19:59:12 +00:00
|
|
|
|
2008-10-09 15:00:11 +00:00
|
|
|
AC_ARG_ENABLE(libreadline,
|
|
|
|
[ --enable-libreadline Enable use of libreadline by xorriso, default=yes],
|
|
|
|
, enable_libreadline=yes)
|
|
|
|
if test x$enable_libreadline = xyes; then
|
2008-02-01 19:59:12 +00:00
|
|
|
dnl Check whether there is readline-devel and readline-runtime.
|
|
|
|
dnl If not, erase this macro which would enable use of readline(),add_history()
|
2008-10-09 15:00:11 +00:00
|
|
|
READLINE_DEF="-DXorriso_with_readlinE"
|
2008-02-01 19:59:12 +00:00
|
|
|
dnl The empty yes case obviously causes -lreadline to be linked
|
2008-10-09 15:00:11 +00:00
|
|
|
AC_CHECK_HEADER(readline/readline.h, AC_CHECK_LIB(readline, readline, , READLINE_DEF= ), READLINE_DEF= )
|
2008-02-01 19:59:12 +00:00
|
|
|
dnl The X= in the yes case prevents that -lreadline gets linked twice
|
2008-10-09 15:00:11 +00:00
|
|
|
AC_CHECK_HEADER(readline/history.h, AC_CHECK_LIB(readline, add_history, X= , READLINE_DEF= ), READLINE_DEF= )
|
|
|
|
else
|
|
|
|
READLINE_DEF=
|
|
|
|
fi
|
2008-02-01 19:59:12 +00:00
|
|
|
AC_SUBST(READLINE_DEF)
|
|
|
|
|
2009-03-29 16:43:25 +00:00
|
|
|
dnl ts A90329
|
|
|
|
dnl ACL and xattr do not need to be enabled in libisoburn or xorriso source
|
|
|
|
dnl but without AC_CHECK_LIB() xorriso will not be linked with -lacl .
|
|
|
|
dnl On my Linux this does work with an ACL enabled libisofs but in general
|
|
|
|
dnl it seems not be right.
|
|
|
|
dnl So for now it seems to be best to do the same configuration for libisoburn
|
|
|
|
dnl and xorriso as for libisofs.
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(libacl,
|
|
|
|
[ --enable-libacl Enable use of libacl by libisofs, default=yes],
|
|
|
|
, enable_libacl=yes)
|
|
|
|
if test x$enable_libacl = xyes; then
|
|
|
|
dnl Check whether there is libacl-devel and libacl-runtime.
|
|
|
|
dnl If not, erase this macro which would enable use of acl_to_text and others
|
|
|
|
LIBACL_DEF="-DLibisofs_with_aaip_acL"
|
|
|
|
dnl The empty yes case obviously causes -lacl to be linked
|
|
|
|
AC_CHECK_HEADER(sys/acl.h, AC_CHECK_LIB(acl, acl_to_text, , LIBACL_DEF= ), LIBACL_DEF= )
|
|
|
|
else
|
|
|
|
LIBACL_DEF=
|
|
|
|
fi
|
|
|
|
AC_SUBST(LIBACL_DEF)
|
2009-01-23 17:27:04 +00:00
|
|
|
|
|
|
|
|
2009-03-29 16:43:25 +00:00
|
|
|
AC_ARG_ENABLE(xattr,
|
|
|
|
[ --enable-xattr Enable use of xattr by libisofs, default=yes],
|
|
|
|
, enable_xattr=yes)
|
|
|
|
if test x$enable_xattr = xyes; then
|
|
|
|
dnl Check whether there is the header for Linux xattr.
|
|
|
|
dnl If not, erase this macro which would enable use of listxattr and others
|
|
|
|
XATTR_DEF="-DLibisofs_with_aaip_xattR"
|
|
|
|
AC_CHECK_HEADER(attr/xattr.h, AC_CHECK_LIB(c, listxattr, X= , XATTR_DEF= ), XATTR_DEF= )
|
|
|
|
else
|
|
|
|
XATTR_DEF=
|
|
|
|
fi
|
|
|
|
AC_SUBST(XATTR_DEF)
|
|
|
|
|
2009-04-04 14:42:41 +00:00
|
|
|
|
2009-04-10 10:25:58 +00:00
|
|
|
dnl ts A90409
|
|
|
|
dnl Same situation as with xattr and ACL: libisoburn does not depend directly
|
|
|
|
dnl on zlib. But if it is enabled in libisofs then it seems wise to link it
|
|
|
|
dnl with libisoburn apps.
|
|
|
|
AC_ARG_ENABLE(zlib,
|
|
|
|
[ --enable-zlib Enable use of zlib by libisofs, default=yes],
|
|
|
|
, enable_zlib=yes)
|
|
|
|
if test x$enable_zlib = xyes; then
|
|
|
|
dnl Check whether there is the header for zlib.
|
|
|
|
dnl If not, erase this macro which would enable use of compress2() and others.
|
|
|
|
dnl The empty parameter after "compress2" causes -lz.
|
|
|
|
ZLIB_DEF="-DLibisofs_with_zliB"
|
|
|
|
AC_CHECK_HEADER(zlib.h, AC_CHECK_LIB(z, compress2, , ZLIB_DEF= ), ZLIB_DEF= )
|
|
|
|
else
|
|
|
|
ZLIB_DEF=
|
|
|
|
fi
|
|
|
|
AC_SUBST(ZLIB_DEF)
|
|
|
|
|
|
|
|
|
2009-04-04 14:42:41 +00:00
|
|
|
AC_ARG_ENABLE(external-filters,
|
|
|
|
[ --enable-external-filters Enable use of external filter programs by xorriso, default=yes],
|
|
|
|
, enable_external_filters=yes)
|
|
|
|
if test x"$enable_external_filters" = xyes; then
|
|
|
|
EXTF_DEF="-DXorriso_allow_external_filterS"
|
|
|
|
echo "enabled xorriso external filter programs"
|
|
|
|
else
|
|
|
|
EXTF_DEF=
|
|
|
|
echo "disabled xorriso external filter programs"
|
|
|
|
fi
|
|
|
|
AC_SUBST(EXTF_DEF)
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(external-filters-setuid,
|
|
|
|
[ --enable-external-filters-setuid Enable xorriso external filter programs under setuid, default=no],
|
|
|
|
, enable_external_filters_setuid=no)
|
|
|
|
if test x$enable_external_filters_setuid = xyes; then
|
|
|
|
EXTF_SUID_DEF="-DXorriso_allow_extf_suiD"
|
|
|
|
echo "enabled xorriso external filter programs under setuid"
|
|
|
|
else
|
|
|
|
EXTF_SUID_DEF=
|
|
|
|
echo "disabled xorriso external filter programs under setuid"
|
|
|
|
fi
|
|
|
|
AC_SUBST(EXTF_SUID_DEF)
|
|
|
|
|
|
|
|
|
2008-02-01 19:59:12 +00:00
|
|
|
AC_CHECK_HEADER(libburn/libburn.h)
|
|
|
|
AC_CHECK_HEADER(libisofs/libisofs.h)
|
|
|
|
|
2008-02-02 13:11:38 +00:00
|
|
|
dnl Check for proper library versions
|
2009-03-14 11:57:02 +00:00
|
|
|
LIBBURN_REQUIRED=0.6.4
|
2009-03-11 17:01:20 +00:00
|
|
|
LIBISOFS_REQUIRED=0.6.16
|
2008-02-02 13:11:38 +00:00
|
|
|
PKG_CHECK_MODULES(LIBBURN, libburn-1 >= $LIBBURN_REQUIRED)
|
|
|
|
PKG_CHECK_MODULES(LIBISOFS, libisofs-1 >= $LIBISOFS_REQUIRED)
|
2008-02-01 19:59:12 +00:00
|
|
|
|
2007-09-14 04:32:46 +00:00
|
|
|
dnl Add compiler-specific flags
|
|
|
|
|
|
|
|
dnl See if the user wants aggressive optimizations of the code
|
|
|
|
AC_ARG_ENABLE(debug,
|
|
|
|
[ --enable-debug Disable aggressive optimizations [default=yes]],
|
|
|
|
, enable_debug=yes)
|
|
|
|
if test x$enable_debug != xyes; then
|
|
|
|
if test x$GCC = xyes; then
|
|
|
|
CFLAGS="$CFLAGS -O3"
|
|
|
|
CFLAGS="$CFLAGS -fexpensive-optimizations"
|
|
|
|
fi
|
|
|
|
CFLAGS="$CFLAGS -DNDEBUG"
|
|
|
|
else
|
|
|
|
if test x$GCC = xyes; then
|
|
|
|
CFLAGS="$CFLAGS -g -pedantic -Wall"
|
|
|
|
fi
|
|
|
|
CFLAGS="$CFLAGS -DDEBUG"
|
|
|
|
fi
|
|
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
|
|
Makefile
|
|
|
|
doc/doxygen.conf
|
|
|
|
version.h
|
2008-02-01 19:59:12 +00:00
|
|
|
libisoburn-1.pc
|
2007-09-14 04:32:46 +00:00
|
|
|
])
|
|
|
|
AC_OUTPUT
|