* configure.in: Add fuji. git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@4425 67ed7778-7388-44ab-90cf-0a291f65f57c
493 lines
16 KiB
Plaintext
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
|
|
"
|