Files
libgphoto2/configure.in
Lutz Mueller 6260d6b8b5 2002-04-16 Lutz M�ller <lutz@users.sourceforge.net>
* configure.in: Add fuji.


git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@4425 67ed7778-7388-44ab-90cf-0a291f65f57c
2002-04-16 14:43:27 +00:00

493 lines
16 KiB
Plaintext

dnl Process this file with autoconf to produce a configure script.
AC_INIT(libgphoto2/gphoto2.h)
AM_CONFIG_HEADER(libgphoto2/config.h)
AM_INIT_AUTOMAKE(gphoto2, 2.0.1dev4)
AM_MAINTAINER_MODE
AC_LIBTOOL_DLOPEN
dnl ---------------------------------------------------------------------------
dnl Versioning (libgphoto2-(AGE.)CURRENT.REVISION):
dnl - AGE (Micro): Increment if any interfaces have been added; set to 0
dnl if any interfaces have been removed. Removal has
dnl precedence over adding, so set to 0 if both happened.
dnl - REVISION (Minor): Increment any time the source changes; set to
dnl 0 if you incremented CURRENT.
dnl - CURRENT (Major): Increment if the interface has additions, changes,
dnl removals.
dnl ---------------------------------------------------------------------------
LIBGPHOTO2_AGE=0
LIBGPHOTO2_REVISION=1
LIBGPHOTO2_CURRENT=2
AC_SUBST(LIBGPHOTO2_AGE)
AC_SUBST(LIBGPHOTO2_REVISION)
AC_SUBST(LIBGPHOTO2_CURRENT)
dnl Checks for programs.
AC_PROG_CC
AC_PROG_CPP
AC_PROG_INSTALL
dnl ---------------------------------------------------------------------------
dnl i18n support (including some hacks)
dnl ---------------------------------------------------------------------------
dnl The following is a hack to get gphoto2 to build on gettext-0.10.35
dnl systems - BUILD_INCLUDED_LIBINTL is set only in gettext-0.10.37 which is
dnl the gettext version provided with gphoto2.
BUILD_INCLUDED_LIBINTL=no
AC_SUBST(BUILD_INCLUDED_LIBINTL)
dnl USE_INCLUDED_LIBINTL=no
dnl AC_SUBST(USE_INCLUDED_LIBINTL)
ALL_LINGUAS="da de es fr hu it ja no ru sl sv uk zh_CN"
AM_GNU_GETTEXT
AC_CHECK_FUNC(gettext, gettext_without_libintl=true)
# same trick as with libdl:
# if gettext() doesn't require linking against libintl,
# we don't have to check for gettext in libintl. Otherwise
# we may even require libintl.
dnl AC_CHECK_LIB(intl, gettext, [LIBS="$LIBS -lintl"])
if test "$gettext_without_libintl" != "true" -a "$USE_NLS" = "yes"; then
AC_CHECK_LIB(intl, gettext, [INTLLIBS="$INTLLIBS -lintl"])
fi
dnl ---------------------------------------------------------------------------
dnl Turn on debugging and all warnings when using gcc
dnl ---------------------------------------------------------------------------
if test "$ac_cv_prog_gcc" = "yes"; then
CFLAGS="$CFLAGS -g -Wall -Wmissing-declarations -Wmissing-prototypes"
LDFLAGS="$LDFLAGS -g -Wall"
fi
dnl Replace `main' with a function in -libs:
AC_CHECK_LIB(ibs, main)
dnl ---------------------------------------------------------------------------
dnl Debugging: The following will just #ifdef out the --debug option in
dnl gphoto2, the command-line frontend. It has no effect
dnl on libgphoto2. Actually, it affects only about 20 LOC in
dnl frontends/command-line/main.c, so I don't know if it's really
dnl worth the effort. But people missed it...
dnl ---------------------------------------------------------------------------
AC_ARG_ENABLE(debugging,
[ --disable-debugging do not include debugging code],
[if test "$enableval" = "no"; then
AC_DEFINE(DISABLE_DEBUGGING)
fi])
dnl ---------------------------------------------------------------------------
dnl Checks for header files.
dnl ---------------------------------------------------------------------------
AC_HEADER_DIRENT
AC_HEADER_STDC
AC_CHECK_HEADERS(unistd.h mcheck.h)
AC_INLINE
AC_CONST
dnl ---------------------------------------------------------------------------
dnl Check for libtool: lt_dlforeachfile has been introduced in
dnl libtool-1.4. However, there are still systems out
dnl there running libtool-1.3. For those, we will need
dnl dlopen. Note that on some systems (e.g. FreeBSD)
dnl -ldl isn't needed.
dnl ---------------------------------------------------------------------------
dnl Commented out for now because lt_dlforeachfile will not do anything if it
dnl has already been called before.
dnl
AC_PROG_LIBTOOL
no_libtool=true
dnl AC_CHECK_LIB(ltdl, lt_dlforeachfile,
dnl AC_CHECK_HEADER(ltdl.h,
dnl AC_DEFINE(HAVE_LTDL)
dnl LTDL_LIBS="-lltdl"
dnl no_libtool=false
dnl )
dnl )
if $no_libtool; then
AC_CHECK_FUNC(dlopen,,
AC_CHECK_LIB(dl, dlopen,
LTDL_LIBS="-ldl",
AC_ERROR([
*** Could not determine how to handle
*** shared libraries!
])))
fi
AC_SUBST(LTDL_LIBS)
dnl Checks for typedefs, structures, and compiler characteristics.
AC_TYPE_SIZE_T
dnl Checks for library functions.
AC_CHECK_FUNCS(mkdir strdup strncpy strcpy snprintf sprintf vsnprintf)
dnl Find out how to get struct tm
AC_STRUCT_TM
dnl Check for tm_gmtoff in struct tm
AC_MSG_CHECKING([for tm_gmtoff in struct tm])
AC_TRY_COMPILE([
#include <sys/types.h>
#include <$ac_cv_struct_tm>], [struct tm tm; tm.tm_gmtoff;],
AC_DEFINE(HAVE_TM_GMTOFF)
AC_MSG_RESULT(yes),
AC_MSG_RESULT(no)
)
dnl Create a stdint.h-like file containing size-specific integer definitions
dnl that will always be available
AC_NEED_STDINT_H(libgphoto2/_stdint.h)
dnl Create a header file containing NetBSD-style byte swapping macros
AC_NEED_BYTEORDER_H(libgphoto2/gphoto2-endian.h)
dnl Solaris hack for grep and tr
[
if test -n "`echo $host_os | grep '[sS]olaris'`"; then
TR=/usr/xpg4/bin/tr
GREP=/usr/xpg4/bin/grep
else
TR=tr
GREP=grep
fi
]
dnl ---------------------------------------------------------------------------
dnl Camera drivers
dnl ---------------------------------------------------------------------------
camlibs='agfa barbie canon casio digita dimera directory fuji jamcam jd11 kodak konica minolta mustek panasonic polaroid ptp ricoh samsung sierra sipix stv0680 sonydscf1 sonydscf55'
AC_SUBST(SUBDIRS_CAMLIBS)
for i in $camlibs; do
d=`echo $i | $TR a-z A-Z`
eval "CONFIG_DRIVER_$d=n"
done
AC_MSG_CHECKING(which drivers to compile)
AC_ARG_WITH(drivers,
[ --with-drivers=<list> compile drivers in <list>; ]
[ drivers may be separated with commas; ]
[ 'all' compiles all drivers; ]
[ possible drivers are: ]
[ agfa, barbie, canon, casio, digita, dimera,]
[ directory, fuji, jamcam, jd11, kodak,]
[ konica, mustek,]
[ minolta, panasonic, polaroid, ptp, ricoh,]
[ samsung, sierra, sonydscf1, sonydscf55,]
[ stv0680 ],
drivers="$withval", drivers="all")
if test "$drivers" = "all"; then
for i in $camlibs; do
SUBDIRS_CAMLIBS="$SUBDIRS_CAMLIBS $i"
done
AC_MSG_RESULT(all)
else
drivers=`echo $drivers | sed 's/,/ /g'`
for driver in $drivers; do
if test -n "`echo $camlibs | $GREP -E \"(^| )$driver( |\$)\"`"; then
SUBDIRS_CAMLIBS="$SUBDIRS_CAMLIBS $driver"
else
AC_ERROR(Unknown driver $driver!)
fi
done
AC_MSG_RESULT($drivers)
fi
dnl ************************************************************
dnl find out where to install documentation files
dnl ************************************************************
GP_CHECK_DOC_DIR()dnl
dnl ********
dnl build docs?
dnl ********
GP_BUILD_DOCS()dnl
dnl ************************************************************
dnl initialize packaging RPMs
dnl ************************************************************
GPKG_CHECK_RPM()dnl
dnl ---------------------------------------------------------------------------
dnl CDK: If you would like to access the camera's configuration using
dnl gphoto2, the command-line frontend, you need this. Old versions
dnl of CDK don't include fscale, therefore check for it here.
dnl ---------------------------------------------------------------------------
cdk_msg="no (http://dickey.his.com/cdk/cdk.html)"
try_cdk=true
have_cdk=false
AC_ARG_WITH(cdk, [ --without-cdk Don't use cdk],
if test x$withval = xno; then
try_cdk=false
fi
)
if test "x$prefix" = xNONE; then
cdk_prefix=$ac_default_prefix
else
cdk_prefix=$prefix
fi
AC_ARG_WITH(cdk-prefix, [ --with-cdk-prefix=PREFIX Location of cdk],
cdk_prefix="$withval")
if $try_cdk; then
CPPFLAGS_save="$CPPFLAGS"
CPPFLAGS="-I$cdk_prefix/include -I$cdk_prefix/include/cdk $CPPFLAGS"
AC_CHECK_HEADER(cdk.h, [
have_cdk=true
CDK_CFLAGS="-I$cdk_prefix/include -I$cdk_prefix/include/cdk"
CDK_LIBS="-L$cdk_prefix/lib -lcdk -lncurses"
AC_DEFINE(HAVE_CDK)
LDFLAGS_save="$LDFLAGS"
LDFLAGS="$CDK_LIBS"
AC_CHECK_LIB(cdk, newCDKFScale, [cdk_msg="yes"], [
AC_DEFINE(HAVE_CDK_20010421)
cdk_msg="yes (but without fscale)"]
)
LDFLAGS="$LDFLAGS_save"]
)
CPPFLAGS="$CPPFLAGS_save"
else
cdk_msg="no (not requested)"
fi
AM_CONDITIONAL(HAVE_CDK, $have_cdk)
AC_SUBST(CDK_CFLAGS)
AC_SUBST(CDK_LIBS)
dnl ---------------------------------------------------------------------------
dnl libjpeg: Right now, libjpeg is only used to interpret JPEG previews in
dnl order to feed them to aalib (see below).
dnl ---------------------------------------------------------------------------
jpeg_msg=no
try_jpeg=true
have_jpeg=false
AC_ARG_WITH(jpeg, [ --without-jpeg Don't use jpeg],
if test x$withval = xno; then
try_jpeg=false
fi
)
if $try_jpeg; then
AC_MSG_CHECKING([for jpeglib.h])
AC_TRY_CPP([
#include <stdio.h>
#undef PACKAGE
#undef VERSION
#undef HAVE_STDDEF_H
#undef HAVE_STDLIB_H
#include <jpeglib.h>],
jpeg_msg=yes,
jpeg_msg=no)
AC_MSG_RESULT($jpeg_msg)
if test "$jpeg_msg" = yes; then
have_jpeg=true
AC_DEFINE(HAVE_JPEG)
JPEG_LIBS="-ljpeg"
fi
else
jpeg_msg="no (not requested)"
fi
AM_CONDITIONAL(HAVE_JPEG, $have_jpeg)
AC_SUBST(JPEG_LIBS)
dnl ---------------------------------------------------------------------------
dnl pkg-config: pkg-config is a tool to simplify checks for libraries and
dnl versions. I really think this is a good thing and therefore
dnl use it here. However, if pkg-config is not installed,
dnl we offer alternative checks, too.
dnl ---------------------------------------------------------------------------
pkgconfig_msg="no (http://www.freedesktop.org/software/pkgconfig)"
try_pkgconfig=true
have_pkgconfig=false
AC_ARG_WITH(pkgconfig, [ --without-pkgconfig Don't use pkg-config],[
if test x$withval = xno; then
try_pkgconfig=false
fi])
if $try_pkgconfig; then
AC_PATH_PROG(PKG_CONFIG,pkg-config)
if test -n "${PKG_CONFIG}"; then
have_pkgconfig=true
pkgconfig_msg="yes"
fi
else
pkgconfig_msg="no (not requested)"
fi
dnl ---------------------------------------------------------------------------
dnl libexif: The CameraFilesystem can use libexif for extracting thumbnails
dnl out of EXIF data. Similarly, it can extract the mtime of
dnl a file.
dnl libexif is available from
dnl http://www.sourceforge.net/projects/libexif
dnl ---------------------------------------------------------------------------
exif_msg="no (http://www.sourceforge.net/projects/libexif)"
try_exif=true
have_exif=false
AC_ARG_WITH(exif, [ --without-exif Don't use libexif],[
if test x$withval = xno; then
try_exif=false
fi])
if test "x$prefix" = xNONE; then
exif_prefix=$ac_default_prefix
else
exif_prefix=$prefix
fi
AC_ARG_WITH(exif-prefix, [ --with-exif-prefix=PREFIX Location of libexif],[
exif_prefix="$withval"])
if $try_exif; then
if $have_pkgconfig; then
AC_MSG_CHECKING([for libexif])
if ${PKG_CONFIG} --exists libexif > /dev/null 2>&1; then
EXIF_CFLAGS=`$PKG_CONFIG --cflags libexif`
EXIF_LIBS=`$PKG_CONFIG --libs libexif`
have_exif=true
exif_msg=yes
AC_DEFINE(HAVE_EXIF)
fi
AC_MSG_RESULT($exif_msg)
else
CPPFLAGS_save="$CPPFLAGS"
CPPFLAGS="-I$exif_prefix/include/libexif -I$exif_prefix/include $CPPFLAGS"
AC_CHECK_HEADER(exif-data.h, [
EXIF_CFLAGS="-I$exif_prefix/include -I$exif_prefix/include/libexif"
EXIF_LIBS="-L$exif_prefix/lib -lexif"
have_exif=true
exif_msg=yes
AC_DEFINE(HAVE_EXIF)])
fi
else
exif_msg="no (not requested)"
fi
AM_CONDITIONAL(HAVE_EXIF, $have_exif)
AC_SUBST(EXIF_CFLAGS)
AC_SUBST(EXIF_LIBS)
dnl ---------------------------------------------------------------------------
dnl aalib: gphoto2 (the frontend) has been designed as a command-line tool.
dnl However, life previews make only sense when you can actually
dnl see the preview. This is where aalib fits in - it gives you the
dnl possibility to view life-previews on any console.
dnl ---------------------------------------------------------------------------
aa_msg="no (http://www.sourceforge.net/projects/aa-project)"
try_aa=true
have_aa=false
AC_ARG_WITH(aalib, [ --without-aalib Don't use aalib],
if test x$withval = xno; then
try_aa=false
fi
)
if $try_aa; then
AC_CHECK_HEADER(aalib.h,[
have_aa=true
aa_msg=yes
AC_DEFINE(HAVE_AA)
AC_PATH_PROG(AALIB_CONFIG,aalib-config)
if test -n "${AALIB_CONFIG}"; then
AA_CFLAGS=`$AALIB_CONFIG --cflags`
AA_LIBS=`$AALIB_CONFIG --libs`
else
AA_LIBS="-laa"
fi])
else
aa_msg="no (not requested)"
fi
AM_CONDITIONAL(HAVE_AA, $have_aa)
AC_SUBST(AA_LIBS)
AC_SUBST(AA_CFLAGS)
dnl ---------------------------------------------------------------------------
dnl readline: Readline is pretty cool - it allows you to use <tab> to complete
dnl commands in the gphoto2 shell or to use <up> or <down> to
dnl navigate through the history.
dnl ---------------------------------------------------------------------------
rl_msg="no (cnswww.cns.cwru.edu/~chet/readline/rltop.html)"
try_rl=true
have_rl=false
AC_ARG_WITH(readline, [ --without-readline Don't use readline],
if test x$withval = xno; then
try_readline=false
fi
)
if $try_readline; then
AC_CHECK_HEADER(readline/readline.h,[
AC_CHECK_LIB(readline, rl_completion_matches, [
have_readline=true
rl_msg=yes
AC_DEFINE(HAVE_RL)
RL_LIBS=-lreadline
RL_CFLAGS=""])])
else
rl_msg="no (not requested)"
fi
AM_CONDITIONAL(HAVE_RL, $have_rl)
AC_SUBST(RL_LIBS)
AC_SUBST(RL_CFLAGS)
dnl ---------------------------------------------------------------------------
dnl Configure libgphoto2-port
dnl ---------------------------------------------------------------------------
AC_CONFIG_SUBDIRS(libgphoto2_port)
AC_OUTPUT([
Makefile
camlibs/Makefile
camlibs/agfa/Makefile
camlibs/barbie/Makefile
camlibs/canon/Makefile
camlibs/canon/doc/Makefile
camlibs/casio/Makefile
camlibs/digita/Makefile
camlibs/dimera/Makefile
camlibs/directory/Makefile
camlibs/fuji/Makefile
camlibs/jamcam/Makefile
camlibs/jd11/Makefile
camlibs/kodak/Makefile
camlibs/kodak/dc120/Makefile
camlibs/kodak/dc240/Makefile
camlibs/kodak/dc3200/Makefile
camlibs/konica/Makefile
camlibs/konica/localization/Makefile
camlibs/minolta/Makefile
camlibs/minolta/dimagev/Makefile
camlibs/mustek/Makefile
camlibs/panasonic/Makefile
camlibs/panasonic/l859/Makefile
camlibs/panasonic/coolshot/Makefile
camlibs/polaroid/Makefile
camlibs/ptp/Makefile
camlibs/ricoh/Makefile
camlibs/samsung/Makefile
camlibs/sierra/Makefile
camlibs/sipix/Makefile
camlibs/sonydscf1/Makefile
camlibs/sonydscf55/Makefile
camlibs/stv0680/Makefile
frontends/Makefile
frontends/command-line/Makefile
tests/Makefile
libgphoto2/Makefile
libgphoto2/libgphoto2.pc
gphoto2-config
intl/Makefile
packaging/Makefile
packaging/linux-hotplug/Makefile
packaging/rpm/Makefile
packaging/rpm/package.spec
po/Makefile.in
doc/Makefile
doc/api/Makefile
doc/figures/Makefile
])
echo "
Configuration (libgphoto2):
Source code location: ${srcdir}
Version: ${VERSION}
Compiler: ${CC}
Build documentation: $gtkdoc_msg
Config. support (gphoto2): $cdk_msg
Preview support (gphoto2): $aa_msg
JPEG support: $jpeg_msg
pkg-config: $pkgconfig_msg
EXIF support: $exif_msg
readline support: $rl_msg
"