X-Git-Url: http://geeqie.org/cgi-bin/gitweb.cgi?p=geeqie.git;a=blobdiff_plain;f=configure.ac;h=799128bc7066243996ea7512083aad8863dfa13e;hp=7e201582de6ec510b0260daec4ec5e1e7d0a3ccd;hb=24e7bb7be54da3d0d2d12c2031f5f4fc1dee739e;hpb=89d004f5869afad6b292df168dd5e305fb4adb39 diff --git a/configure.ac b/configure.ac index 7e201582..799128bc 100644 --- a/configure.ac +++ b/configure.ac @@ -15,7 +15,7 @@ dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the dnl GNU General Public License for more details. AC_PREREQ(2.57) -AC_INIT([geeqie], m4_esyscmd_s(git rev-parse --quiet --verify --short HEAD), [geeqie@freelists.org], [], [http://www.geeqie.org/]) +AC_INIT([geeqie], m4_translit(m4_esyscmd([if [ $(git tag --list 'v[1-9]*' --points-at HEAD | wc -c) -gt 0 ]; then git tag --list v[1-9]* --points-at HEAD | tail -n 1 | tr -d 'v' ; else git tag --list v[1-9]* | tail -n 1 | tr -d 'v' && echo "+git" && git log --max-count=1 --date=format:"%Y%m%d" --format="%ad" && echo "-" && git rev-parse --quiet --verify --short HEAD; fi ]), m4_newline), [geeqie@freelists.org], [], [http://www.geeqie.org/]) # Add -Werror to the default CFLAGS CFLAGS+=" -Werror -Wno-error=deprecated-declarations -Wno-error=sign-compare -Wno-error=return-type" @@ -25,7 +25,7 @@ AC_CONFIG_SRCDIR([src/main.c]) AC_CONFIG_AUX_DIR(auxdir) # Require Automake 1.14 for %reldir% support -AM_INIT_AUTOMAKE([1.14.1 subdir-objects foreign dist-xz no-dist-gzip]) +AM_INIT_AUTOMAKE([1.14.1 subdir-objects foreign dist-xz no-dist-gzip tar-ustar]) AC_CONFIG_HEADER([config.h]) @@ -190,6 +190,8 @@ AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes) AM_CONDITIONAL(HAVE_WINDRES, test "x$WINDRES" != "x:") AC_SUBST(WINDRES) +AM_CONDITIONAL([EXTERNAL_PREFIX], [test "x$prefix" != "xNONE"]) + dnl reasonable guesses for where stuff is installed if test "x$prefix" = "xNONE"; then prefix="/usr/local" @@ -197,7 +199,7 @@ else prefix=$prefix fi -AM_PATH_GLIB_2_0(2.24.0,,AC_MSG_ERROR(GLIB >= 2.24.0 not installed.)) +AM_PATH_GLIB_2_0(2.52.0,,AC_MSG_ERROR(GLIB >= 2.52.0 not installed.)) AC_ARG_ENABLE([gtk3], AC_HELP_STRING([--disable-gtk3], [use gtk2 instead of gtk3]),[gtk3="${enableval}"], [gtk3=m4_ifdef([AM_PATH_GTK_3_0], [auto], [no])]) if test x$gtk3 = xyes; then @@ -242,7 +244,7 @@ AC_ARG_WITH(htmldir, [ --with-htmldir=DIR install path for html files], AC_DEFINE_UNQUOTED(GQ_HELPDIR, "$readmedir", [Location of documentation files]) AC_DEFINE_UNQUOTED(GQ_HTMLDIR, "$htmldir", [Location of html documentation]) -AC_PATH_PROG(GNOME_DOC_TOOL, gnome-doc-tool) +AC_PATH_PROG(GNOME_DOC_TOOL, yelp-build) AC_SUBST(readmedir) AC_SUBST(htmldir) @@ -366,6 +368,31 @@ AM_CONDITIONAL(HAVE_TIFF, [test "x$HAVE_TIFF" = xyes]) AC_SUBST(TIFF_CFLAGS) AC_SUBST(TIFF_LIBS) +# libraw support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([raw], + AC_HELP_STRING([--disable-raw], [disable LibRaw support]), + [libraw=$enableval], [libraw=auto]) + +if test "x${libraw}" != "xno"; then + PKG_CHECK_MODULES(RAW, [libraw >= 0.20], + [ + HAVE_RAW=yes + AC_DEFINE(HAVE_RAW, 1, [define to enable libraw support]) + ], + [ + HAVE_RAW=no + AC_MSG_WARN([$RAW_PKG_ERRORS]) + ]) +else + HAVE_RAW=disabled +fi + +AM_CONDITIONAL(HAVE_RAW, [test "x$HAVE_RAW" = xyes]) +AC_SUBST(RAW_CFLAGS) +AC_SUBST(RAW_LIBS) + # libffmpegthumbnailer support # ---------------------------------------------------------------------- @@ -523,15 +550,29 @@ AC_ARG_ENABLE([lua], [liblua=$enableval], [liblua=auto]) if test "x${liblua}" != "xno"; then - PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1, + PKG_CHECK_MODULES(LUA, lua5.3 >= 5.3, [ HAVE_LUA=yes AC_DEFINE(HAVE_LUA, 1, [define to enable lua support]) ], [ - HAVE_LUA=no - AC_MSG_WARN([$LUA_PKG_ERRORS]) - ]) + PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1, + [ + HAVE_LUA=yes + AC_DEFINE(HAVE_LUA, 1, [define to enable lua support]) + ], + [ + PKG_CHECK_MODULES(LUA, lua >= 5.1, + [ + HAVE_LUA=yes + AC_DEFINE(HAVE_LUA, 1, [define to enable lua support]) + ], + [ + HAVE_LUA=no + AC_MSG_WARN([$LUA_PKG_ERRORS]) + ]) + ]) + ]) else HAVE_LUA=disabled fi @@ -569,11 +610,126 @@ AM_CONDITIONAL(HAVE_PDF, [test "x$HAVE_PDF" = xyes]) AC_SUBST(PDF_CFLAGS) AC_SUBST(PDF_LIBS) +# Heif support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([heif], + AC_HELP_STRING([--disable-heif], [disable heif support]), + [libheif=$enableval], [libheif=auto]) + +if test "x${libheif}" != "xno"; then + PKG_CHECK_MODULES(HEIF, libheif >= 1.3.2, + [ + HAVE_HEIF=yes + AC_DEFINE(HAVE_HEIF, 1, [define to enable heif support]) + ], + [ + HAVE_HEIF=no + AC_MSG_WARN([$HEIF_PKG_ERRORS]) + ]) +else + HAVE_HEIF=disabled +fi + +AM_CONDITIONAL(HAVE_HEIF, [test "x$HAVE_HEIF" = xyes]) +AC_SUBST(HEIF_CFLAGS) +AC_SUBST(HEIF_LIBS) + +# WebP support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([webp], + AC_HELP_STRING([--disable-webp], [disable webp support]), + [libwebp=$enableval], [libwebp=auto]) + +if test "x${libwebp}" != "xno"; then + PKG_CHECK_MODULES(WEBP, libwebp >= 0.6.1, + [ + HAVE_WEBP=yes + AC_DEFINE(HAVE_WEBP, 1, [define to enable webp support]) + ], + [ + HAVE_WEBP=no + AC_MSG_WARN([$WEBP_PKG_ERRORS]) + ]) +else + HAVE_WEBP=disabled +fi + +AM_CONDITIONAL(HAVE_WEBP, [test "x$HAVE_WEBP" = xyes]) +AC_SUBST(WEBP_CFLAGS) +AC_SUBST(WEBP_LIBS) + +# J2K support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([j2k], + AC_HELP_STRING([--disable-j2k], [disable j2k support]), + [libopenjp2=$enableval], [libopenjp2=auto]) + +if test "x${libopenjp2}" != "xno"; then + PKG_CHECK_MODULES(J2K, libopenjp2 >= 2.3.0, + [ + HAVE_J2K=yes + AC_DEFINE(HAVE_J2K, 1, [define to enable j2k support]) + ], + [ + HAVE_J2K=no + AC_MSG_WARN([$J2K_PKG_ERRORS]) + ]) +else + HAVE_J2K=disabled +fi + +AM_CONDITIONAL(HAVE_J2K, [test "x$HAVE_J2K" = xyes]) +AC_SUBST(J2K_CFLAGS) +AC_SUBST(J2K_LIBS) + +# DjVu support +# ---------------------------------------------------------------------- + +AC_ARG_ENABLE([djvu], + AC_HELP_STRING([--disable-djvu], [disable djvu support]), + [libdjvulibre=$enableval], [libdjvulibre=auto]) + +if test "x${libdjvulibre}" != "xno"; then + PKG_CHECK_MODULES(DJVU, ddjvuapi >= 3.5.27, + [ + HAVE_DJVU=yes + AC_DEFINE(HAVE_DJVU, 1, [define to enable DjVu support]) + ], + [ + HAVE_DJVU=no + AC_MSG_WARN([$DJVU_PKG_ERRORS]) + ]) +else + HAVE_DJVU=disabled +fi + +AM_CONDITIONAL(HAVE_DJVU, [test "x$HAVE_DJVU" = xyes]) +AC_SUBST(DJVU_CFLAGS) +AC_SUBST(DJVU_LIBS) + # Markdown support # ---------------------------------------------------------------------- AM_CONDITIONAL(HAVE_MARKDOWN, [ "$(command -v markdown)" ]) +# _NL_TIME_FIRST_WEEKDAY support +# note that it is an enum and not a define +# ---------------------------------------------------------------------- + +AC_MSG_CHECKING([for _NL_TIME_FIRST_WEEKDAY]) +AC_TRY_LINK([#include ], [ +char c; +c = *((unsigned char *) nl_langinfo(_NL_TIME_FIRST_WEEKDAY)); +], nl_ok=yes, nl_ok=no) +AC_MSG_RESULT($nl_ok) +if test "$nl_ok" = "yes"; then + AC_DEFINE([HAVE__NL_TIME_FIRST_WEEKDAY], [1], + [Define if _NL_TIME_FIRST_WEEKDAY is available]) +fi + # ---------------------------------------------------------------------- AH_TOP([ @@ -617,13 +773,13 @@ AC_CONFIG_FILES([ plugins/symlink/Makefile plugins/rotate/Makefile plugins/ufraw/Makefile - plugins/import/Makefile plugins/geocode-parameters/Makefile plugins/export-jpeg/Makefile plugins/tethered-photography/Makefile plugins/camera-import/Makefile plugins/image-crop/Makefile plugins/random-image/Makefile + plugins/lens/Makefile geeqie.spec ]) @@ -653,7 +809,7 @@ Flags: Gtk: $GTK_CFLAGS Glib: $GLIB_CFLAGS Thread: $GTHREAD_LIBS - Others: $JPEG_LIBS $TIFF_LIBS $LCMS_LIBS $EXIV2_LIBS $CLUTTER_LIBS $CLUTTER_GTK_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS $LUA_LIBS + Others: $JPEG_LIBS $TIFF_LIBS $LCMS_LIBS $EXIV2_LIBS $CLUTTER_LIBS $CLUTTER_GTK_LIBS $LIBCHAMPLAIN_LIBS $LIBCHAMPLAIN_GTK_LIBS $LUA_LIBS $RAW_LIBS Localization: NLS support: $USE_NLS @@ -675,6 +831,11 @@ Support: Lua: $HAVE_LUA FFmpegthumbnailer: $HAVE_FFMPEGTHUMBNAILER Pdf: $HAVE_PDF + HEIF: $HAVE_HEIF + WebP: $HAVE_WEBP + DjVu: $HAVE_DJVU + J2K: $HAVE_J2K + LibRaw: $HAVE_RAW Documentation: Doxygen: $DX_DOXYGEN