summaryrefslogtreecommitdiffstats
path: root/src/configure.in.in
diff options
context:
space:
mode:
Diffstat (limited to 'src/configure.in.in')
-rw-r--r--src/configure.in.in387
1 files changed, 387 insertions, 0 deletions
diff --git a/src/configure.in.in b/src/configure.in.in
new file mode 100644
index 00000000..7095137f
--- /dev/null
+++ b/src/configure.in.in
@@ -0,0 +1,387 @@
+#MIN_CONFIG(3)
+
+# -----------------------------------------------------------------
+#
+# enable hidden visibility only if kde >= 3.3.2 and tdelibs has
+# been compiled with visibility enabled
+#
+# -----------------------------------------------------------------
+
+AC_LANG_PUSH(C++)
+digikam_save_cppflags=$CPPFLAGS
+CPPFLAGS="$CPPFLAGS $all_includes"
+AC_MSG_CHECKING([if hidden visibility should be enabled])
+AC_COMPILE_IFELSE(
+ [
+ #include <tdeversion.h>
+ #include <tdemacros.h>
+ int other_func( void )
+ {
+ #if KDE_IS_VERSION(3,3,2)
+ #else
+ iam dying;
+ #endif
+ #ifdef __TDE_HAVE_GCC_VISIBILITY
+ #else
+ no, iam really dead;
+ #endif
+ return 0;
+ }
+ ],
+ [ AC_MSG_RESULT([yes])
+ digikam_enable_hidden_visibility="yes" ],
+ [ AC_MSG_RESULT([no]) ]
+)
+CPPFLAGS=$digikam_save_cppflags
+AC_LANG_POP(C++)
+
+if test "x$digikam_enable_hidden_visibility" = "xyes"; then
+ KDE_ENABLE_HIDDEN_VISIBILITY
+fi
+
+# -----------------------------------------------------------------
+#
+# pkg config check
+#
+# -----------------------------------------------------------------
+
+AC_ARG_VAR(PKGCONFIGFOUND, [Path to pkg-config])
+AC_CHECK_PROG(PKGCONFIGFOUND, pkg-config,[yes])
+
+# -----------------------------------------------------------------
+#
+# sqlite2 type check
+#
+# -----------------------------------------------------------------
+
+KDE_CHECK_TYPES
+
+# -------------------------------------------------------
+#
+# Check endianness
+#
+# -------------------------------------------------------
+
+AC_LANG_SAVE
+AC_LANG_C
+AC_C_BIGENDIAN
+AC_LANG_RESTORE
+
+# -----------------------------------------------------------------
+#
+# Check for liblcms
+#
+# -----------------------------------------------------------------
+
+have_lcms_header='no'
+KDE_CHECK_HEADER(lcms/lcms.h,have_lcms_header='yes',,)
+if test "$have_lcms_header" = 'yes'
+then
+ AC_DEFINE(LCMS_HEADER, <lcms/lcms.h>, [The correct header])
+else
+ # Alternative! Debian does it this way...
+ KDE_CHECK_HEADER(lcms.h,have_lcms_header='yes',,)
+ if test "$have_lcms_header" = 'yes'
+ then
+ AC_DEFINE(LCMS_HEADER, <lcms.h>, [The correct header])
+ fi
+fi
+
+LCMS_LIBS=''
+have_lcms='no'
+if test "$have_lcms_header" = 'yes'
+then
+ saved_cflags="$CFLAGS"
+ saved_ldflags="$LDFLAGS"
+ saved_libs=$LIBS
+ LIBS="$LIBS -llcms"
+ CFLAGS="$CFLAGS $all_includes"
+ LDFLAGS="$LDFLAGS $all_libraries"
+ AC_TRY_LINK([
+#define inline __inline /* gcc is in ansi mode */
+#include LCMS_HEADER
+#if LCMS_VERSION < 112
+choke!
+#endif
+], [
+cmsOpenProfileFromFile("foo", "r");
+],
+ [LCMS_LIBS='-llcms'; have_lcms='yes'])
+ LIBS=$saved_libs
+ CFLAGS=$saved_cflags
+ LDFLAGS=$saved_ldflags
+fi
+
+if test -z "$LCMS_LIBS"; then
+ DO_NOT_COMPILE="$DO_NOT_COMPILE digikam"
+fi
+
+AC_SUBST(LCMS_LIBS)
+
+#------------------------------------------------------------------
+#
+# Check for libgphoto2
+#
+#------------------------------------------------------------------
+
+KDE_PKG_CHECK_MODULES(GPHOTO2, libgphoto2 >= 2.5,
+ [have_libgphoto2=yes; have_gphoto25=yes], have_libgphoto2=no)
+if test "x$have_libgphoto2" = "xno"; then
+ KDE_PKG_CHECK_MODULES(GPHOTO2, libgphoto2,
+ have_libgphoto2=yes, have_libgphoto2=no)
+fi
+if test "x$have_libgphoto2" = "xno"; then
+ AC_PATH_PROG(GPHOTO_CONFIG,gphoto2-config)
+ AC_PATH_PROG(GPHOTO_PORT_CONFIG,gphoto2-port-config)
+ if test -n "${GPHOTO_CONFIG}"; then
+ GPHOTO_VERSION="`$GPHOTO_CONFIG --version`"
+ case "${GPHOTO_VERSION}" in "libgphoto2 2.5"*) CXXFLAGS="$CXXFLAGS -DHAVE_GPHOTO25";; esac
+ GPHOTO_CFLAGS="`$GPHOTO_CONFIG --cflags`"
+ AC_SUBST(GPHOTO_CFLAGS)
+ LIB_GPHOTO="`$GPHOTO_CONFIG --libs` `$GPHOTO_PORT_CONFIG --libs`"
+ AC_SUBST(LIB_GPHOTO)
+ have_libgphoto2=yes
+ else
+ AC_MSG_WARN([gPhoto2 not found.])
+ DO_NOT_COMPILE="digikam $DO_NOT_COMPILE"
+ fi
+else
+ if test "x$have_gphoto25" = "xyes"; then
+ GPHOTO_CFLAGS="$GPHOTO2_CFLAGS -DHAVE_GPHOTO25"
+ else
+ GPHOTO_CFLAGS="$GPHOTO2_CFLAGS"
+ fi
+ LIB_GPHOTO="$GPHOTO2_LIBS"
+ AC_SUBST(GPHOTO_CFLAGS)
+ AC_SUBST(LIB_GPHOTO)
+fi
+
+#------------------------------------------------------------------
+#
+# Check for libkipi
+#
+#------------------------------------------------------------------
+
+if test "$PKGCONFIGFOUND" = "yes" ; then
+ have_libkipi=no
+
+ KDE_PKG_CHECK_MODULES(LIBKIPI, libkipi >= 0.1.5,
+ have_libkipi=yes, have_libkipi=no)
+
+ if test "x$have_libkipi" = "xno"; then
+ LIBKIPI_CFLAGS=""
+ LIBKIPI_LIBS=""
+ AC_MSG_RESULT([not found])
+ else
+ AC_MSG_RESULT([found])
+ fi
+else
+ LIBKIPI_CFLAGS=""
+ LIBKIPI_LIBS=""
+ AC_MSG_RESULT([not found])
+fi
+AC_SUBST(LIBKIPI_CFLAGS)
+AC_SUBST(LIBKIPI_LIBS)
+
+if test "x$have_libkipi" != "xyes"; then
+ DO_NOT_COMPILE="$DO_NOT_COMPILE digikam"
+fi
+
+# --------------------------------------------------------------------
+#
+# Check for libkexiv2
+#
+# --------------------------------------------------------------------
+
+if test "$PKGCONFIGFOUND" = "yes" ; then
+ have_libkexiv2=no
+
+ KDE_PKG_CHECK_MODULES(LIBKEXIV2, libkexiv2 >= 0.1.6,
+ have_libkexiv2=yes, have_libkexiv2=no)
+
+ if test "x$have_libkexiv2" = "xno"; then
+ LIBKEXIV2_CFLAGS=""
+ LIBKEXIV2_LIBS=""
+ AC_MSG_RESULT([not found])
+ else
+ AC_MSG_RESULT([found])
+ fi
+else
+ LIBKEXIV2_CFLAGS=""
+ LIBKEXIV2_LIBS=""
+ AC_MSG_RESULT([not found])
+fi
+AC_SUBST(LIBKEXIV2_CFLAGS)
+AC_SUBST(LIBKEXIV2_LIBS)
+
+if test "x$have_libkexiv2" != "xyes"; then
+ DO_NOT_COMPILE="$DO_NOT_COMPILE digikam"
+fi
+
+# --------------------------------------------------------------------
+#
+# Check for libkdcraw
+#
+# --------------------------------------------------------------------
+
+if test "$PKGCONFIGFOUND" = "yes" ; then
+ have_libkdcraw=no
+
+ KDE_PKG_CHECK_MODULES(LIBKDCRAW, libkdcraw >= 0.1.5,
+ have_libkdcraw=yes, have_libkdcraw=no)
+
+ if test "x$have_libkdcraw" = "xno"; then
+ LIBKDCRAW_CFLAGS=""
+ LIBKDCRAW_LIBS=""
+ AC_MSG_RESULT([not found])
+ else
+ AC_MSG_RESULT([found])
+ fi
+else
+ LIBKDCRAW_CFLAGS=""
+ LIBKDCRAW_LIBS=""
+ AC_MSG_RESULT([not found])
+fi
+AC_SUBST(LIBKDCRAW_CFLAGS)
+AC_SUBST(LIBKDCRAW_LIBS)
+
+if test "x$have_libkdcraw" != "xyes"; then
+ DO_NOT_COMPILE="$DO_NOT_COMPILE digikam"
+fi
+
+#------------------------------------------------------------------
+#
+# Check for libtiff
+#
+#------------------------------------------------------------------
+
+have_tiff=no
+KDE_CHECK_LIB(tiff, TIFFWriteScanline,
+ have_tiff=yes,
+ AC_MSG_WARN([TIFF library not found]),
+ -ljpeg -lz -lm)
+
+if test "x$have_tiff" = "xyes"; then
+ KDE_CHECK_HEADER(tiffio.h, have_tiff=yes, have_tiff=no)
+fi
+
+if test "x$have_tiff" != "xyes"; then
+ AC_WARN([TIFF library not found, digiKam will not be compiled.])
+ DO_NOT_COMPILE="digikam $DO_NOT_COMPILE"
+else
+ LIB_TIFF="-ltiff"
+ AC_SUBST(LIB_TIFF)
+fi
+
+#------------------------------------------------------------------
+#
+# Check for libpng (with png_set_add_alpha() function)
+#
+#------------------------------------------------------------------
+
+have_png=no
+KDE_CHECK_LIB(png, png_set_add_alpha,
+ have_png=yes,
+ AC_MSG_WARN([digiKam requires libpng >= 1.2.7]),
+ -lpng -lz -lm)
+
+if test "x$have_png" != "xyes"; then
+ AC_WARN([digiKam requires libpng >= 1.2.7; digiKam will not be compiled.])
+ DO_NOT_COMPILE="digikam $DO_NOT_COMPILE"
+else
+ LIB_PNG="-lpng"
+ AC_SUBST(LIB_PNG)
+fi
+
+#------------------------------------------------------------------
+#
+# Check for libjasper (JPEG2000)
+#
+#------------------------------------------------------------------
+
+have_jasper=no
+KDE_CHECK_LIB(jasper, jas_init,
+ have_jasper=yes,
+ AC_MSG_WARN([digiKam requires libjasper >= 1.7.0]),
+ -ljasper)
+
+if test "x$have_jasper" != "xyes"; then
+ AC_WARN([digiKam requires libjasper >= 1.7.0; digiKam will not be compiled.])
+ DO_NOT_COMPILE="digikam $DO_NOT_COMPILE"
+else
+ LIB_JASPER="-ljasper"
+ AC_SUBST(LIB_JASPER)
+fi
+
+#------------------------------------------------------------------
+#
+# Check for local/shared sqlite3
+#
+#------------------------------------------------------------------
+
+LIB_SQLITE3=""
+
+AC_ARG_WITH(included-sqlite3,
+ AC_HELP_STRING([--without-included-sqlite3],[build digiKam using system sqlite3 library]),
+ [included_sqlite3=$withval],
+ [included_sqlite3=yes]
+)
+
+if test x$included_sqlite3 = xno; then
+ if test x$PKGCONFIGFOUND = xyes; then
+ PKG_CHECK_MODULES(SQLITE, sqlite3 >= 3.5, have_sqlite3=yes,have_sqlite3=no)
+
+ if test x$have_sqlite3 = xyes; then
+ ## AC_DEFINE(HAVE_SQLITE3, 1, [have SQLite3 database library])
+ LIB_SQLITE3=`pkg-config --libs sqlite3`
+ else
+ # We don't support not having sqlite3 anymore
+ DO_NOT_COMPILE="digikam $DO_NOT_COMPILE"
+ fi
+ fi
+fi
+
+AC_SUBST(LIB_SQLITE3)
+AM_CONDITIONAL(with_included_sqlite3, [test x$included_sqlite3 = xyes])
+
+###############################################################################
+# END SQLITE CHECK
+###############################################################################
+
+
+#------------------------------------------------------------------
+#
+# NFS is Evil (sqlite makes use of file locking for allowing
+# multiple processes to access the database. but on many
+# nfs implementations, this file locking is horribly broken and
+# can end up locking the app or not allowing access to the app.
+# since we use tdeioslaves which access the db too)
+#
+#------------------------------------------------------------------
+
+AC_ARG_ENABLE(nfs-hack,
+ AC_HELP_STRING([--enable-nfs-hack],
+[Enable a hack for album libraries on a nfs mount,
+ which causes the database to be saved in
+ $HOMEDIR/.trinity/share/apps/digikam/directoryname.db [default=disable]]),
+ [enable_nfs_hack=$enableval],
+ [enable_nfs_hack=no]
+)
+
+if test "x$enable_nfs_hack" = "xyes"; then
+ AC_DEFINE(NFS_HACK, 1, [NFS hack enabled])
+ AC_MSG_NOTICE([NFS hack enabled. Make sure you know what you are doing])
+fi
+
+#------------------------------------------------------------------
+#
+# get the gcc version
+#
+# CImg.h version 1.2.8 do not compile fine with gcc 4.3.x
+# See B.K.O #163118: digikam-0.9.4_beta5 compilation hangs with gcc 4.3
+# Using -fno-tree-pre is work around this problem.
+#
+#------------------------------------------------------------------
+
+KDE_CHECK_COMPILER_FLAG(fno-tree-pre,[CXXFLAGS="-fno-tree-pre $CXXFLAGS"])
+