summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorAlbert Astals Cid <aacid@kde.org>2005-12-18 17:12:28 +0000
committerAlbert Astals Cid <aacid@kde.org>2005-12-18 17:12:28 +0000
commit03e3d9164ffd71f03136b57a9941ea14fadb21aa (patch)
treecc8d9a26871788d93d9b670722611a7e153804fd /configure.ac
parent888d76a29c9c5ea6c90cc4299b230ca0c2c2944f (diff)
2005-12-18 Albert Astals Cid <aacid@kde.org>
* configure.ac: Better jpeg detection, refer to ml PCbsd problem
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac131
1 files changed, 114 insertions, 17 deletions
diff --git a/configure.ac b/configure.ac
index b7b5961b..b2eacc43 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,117 @@
dnl Based on Xpdf configure.in and evince configure.ac
+dnl Based on kde acinclude.m4.in, LGPL Licensed
+
+AC_DEFUN([AC_FIND_FILE],
+[
+$3=NO
+for i in $2;
+do
+ for j in $1;
+ do
+ echo "configure: __oline__: $i/$j" >&AC_FD_CC
+ if test -r "$i/$j"; then
+ echo "taking that" >&AC_FD_CC
+ $3=$i
+ break 2
+ fi
+ done
+done
+])
+
+AC_DEFUN([KDE_FIND_JPEG_HELPER],
+[
+AC_MSG_CHECKING([for libjpeg$2])
+AC_CACHE_VAL(ac_cv_lib_jpeg_$1,
+[
+ac_save_LIBS="$LIBS"
+LIBS="$all_libraries $USER_LDFLAGS -ljpeg$2 -lm"
+ac_save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS $all_includes $USER_INCLUDES"
+AC_TRY_LINK(
+[
+#ifdef __cplusplus
+extern "C" {
+#endif
+void jpeg_CreateDecompress();
+#ifdef __cplusplus
+}
+#endif
+],
+[jpeg_CreateDecompress();],
+ eval "ac_cv_lib_jpeg_$1=-ljpeg$2",
+ eval "ac_cv_lib_jpeg_$1=no")
+LIBS="$ac_save_LIBS"
+CFLAGS="$ac_save_CFLAGS"
+])
+
+if eval "test ! \"`echo $ac_cv_lib_jpeg_$1`\" = no"; then
+ enable_libjpeg=yes
+ LIBJPEG_LIBS="$ac_cv_lib_jpeg_$1"
+ AC_MSG_RESULT($ac_cv_lib_jpeg_$1)
+else
+ AC_MSG_RESULT(no)
+ $3
+fi
+
+])
+
+AC_DEFUN([AC_FIND_JPEG],
+[
+dnl first look for libraries
+KDE_FIND_JPEG_HELPER(6b, 6b,
+ KDE_FIND_JPEG_HELPER(normal, [],
+ [
+ LIBJPEG_LIBS=
+ ]
+ )
+)
+
+dnl then search the headers (can't use simply AC_TRY_xxx, as jpeglib.h
+dnl requires system dependent includes loaded before it)
+jpeg_incdirs="$includedir /usr/include /usr/local/include "
+AC_FIND_FILE(jpeglib.h, $jpeg_incdirs, jpeg_incdir)
+test "x$jpeg_incdir" = xNO && jpeg_incdir=
+
+dnl if headers _and_ libraries are missing, this is no error, and we
+dnl continue with a warning (the user will get no jpeg support)
+dnl if only one is missing, it means a configuration error, but we still
+dnl only warn
+if test -n "$jpeg_incdir" && test -n "$LIBJPEG_LIBS" ; then
+ AC_DEFINE_UNQUOTED(ENABLE_LIBJPEG, 1, [Define if you have libjpeg])
+else
+ if test -n "$jpeg_incdir" || test -n "$LIBJPEG_LIBS" ; then
+ AC_MSG_WARN([
+There is an installation error in jpeg support. You seem to have only one
+of either the headers _or_ the libraries installed. You may need to either
+provide correct --with-extra-... options, or the development package of
+libjpeg6b. You can get a source package of libjpeg from http://www.ijg.org/
+Disabling JPEG support.
+])
+ else
+ AC_MSG_WARN([libjpeg not found. disable JPEG support.])
+ fi
+ jpeg_incdir=
+ enable_libjpeg=no
+ LIBJPEG_LIBS=
+fi
+
+AC_SUBST(LIBJPEG_LIBS)
+AH_VERBATIM(_AC_CHECK_JPEG,
+[/*
+ * jpeg.h needs HAVE_BOOLEAN, when the system uses boolean in system
+ * headers and I'm too lazy to write a configure test as long as only
+ * unixware is related
+ */
+#ifdef _UNIXWARE
+#define HAVE_BOOLEAN
+#endif
+])
+])
+
+dnl Based on kde acinclude.m4.in, LGPL Licensed
+
+
AC_PREREQ(2.59)
AC_INIT(poppler, 0.5.0-cvs)
AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)
@@ -117,23 +229,8 @@ AC_ARG_ENABLE(libjpeg,
[Don't build against libjpeg.]),
enable_libjpeg=$enableval,
enable_libjpeg="try")
-if test x$enable_libjpeg = xyes; then
- AC_CHECK_LIB([jpeg], [jpeg_destroy_decompress],,
- AC_MSG_ERROR("*** libjpeg library not found ***))
- AC_CHECK_HEADERS([jpeglib.h],,
- AC_MSG_ERROR("*** libjpeg headers not found ***))
-elif test x$enable_libjpeg = xtry; then
- AC_CHECK_LIB([jpeg], [jpeg_destroy_decompress],
- [enable_libjpeg="yes"],
- [enable_libjpeg="no"])
- AC_CHECK_HEADERS([jpeglib.h],,
- [enable_libjpeg="no"])
-fi
-
-if test x$enable_libjpeg = xyes; then
- LIBJPEG_LIBS="-ljpeg"
- AC_SUBST(LIBJPEG_LIBS)
- AC_DEFINE(ENABLE_LIBJPEG)
+if test x$enable_libjpeg != xno; then
+ AC_FIND_JPEG
fi
AM_CONDITIONAL(BUILD_LIBJPEG, test x$enable_libjpeg = xyes)