]> git.lyx.org Git - lyx.git/blobdiff - config/xforms.m4
Much better performance when using natbib (bug 2460):
[lyx.git] / config / xforms.m4
index ee6003d7d8de5cab3756b8f631aa5b6cee69e181..23014445c87cdab1f11c4ebc7bc8aa64ab32b10e 100644 (file)
@@ -1,11 +1,10 @@
 dnl some macros to test for xforms-related functionality  -*- sh -*-
 
 dnl Usage LYX_PATH_XPM: Checks for xpm library and header
-AC_DEFUN(LYX_PATH_XPM,[
+AC_DEFUN([LYX_PATH_XPM],[
 ### Check for Xpm library
 AC_CHECK_LIB(Xpm, XpmCreateBufferFromImage, XPM_LIB="-lXpm",
        [LYX_LIB_ERROR(libXpm,Xpm)])
-AC_SUBST(XPM_LIB)
 ### Check for Xpm headers
 lyx_cv_xpm_h_location="<xpm.h>"
 AC_CHECK_HEADER(X11/xpm.h,[
@@ -13,9 +12,7 @@ AC_CHECK_HEADER(X11/xpm.h,[
   lyx_cv_xpm_h_location="<X11/xpm.h>"],[
 AC_CHECK_HEADER(xpm.h,[],[
 LYX_LIB_ERROR(xpm.h,Xpm)])])
-AC_DEFINE_UNQUOTED(XPM_H_LOCATION,$lyx_cv_xpm_h_location,
-  [define this to the location of xpm.h to be used with #include, e.g. <xpm.h>])
-
+AC_SUBST(XPM_H_LOCATION,$lyx_cv_xpm_h_location)
 ### Test for the header version
 if test $ac_cv_header_xpm_h = yes; then
   AC_CACHE_CHECK([xpm header version],lyx_cv_xpmversion,
@@ -23,7 +20,7 @@ if test $ac_cv_header_xpm_h = yes; then
 #line __oline__ "configure"
 #include "confdefs.h"
 
-#include XPM_H_LOCATION
+#include $lyx_cv_xpm_h_location
 "%%%"lyx_cv_xpmv=XpmVersion;lyx_cv_xpmr=XpmRevision"%%%"
 EOF
     eval `(eval "$ac_cpp conftest.$ac_ext") 2>&5 | \
@@ -55,13 +52,12 @@ fi])
 dnl Usage LYX_PATH_XFORMS: Checks for xforms library and flags
 dnl   If it is found, the variable XFORMS_LIB is set to the relevant -l flags,
 dnl and FORMS_H_LOCATION / FLIMAGE_H_LOCATION is also set
-AC_DEFUN(LYX_PATH_XFORMS,[
+AC_DEFUN([LYX_PATH_XFORMS],[
 AC_REQUIRE([LYX_PATH_XPM])
 
 AC_CHECK_LIB(forms, fl_initialize, XFORMS_LIB="-lforms",
   [AC_CHECK_LIB(xforms, fl_initialize, XFORMS_LIB="-lxforms",
     [LYX_LIB_ERROR(libforms or libxforms,xforms)], $XPM_LIB)], $XPM_LIB)
-AC_SUBST(XFORMS_LIB)
 
 ### Check for xforms headers
 lyx_cv_forms_h_location="<forms.h>"
@@ -70,8 +66,7 @@ AC_CHECK_HEADER(X11/forms.h,[
   lyx_cv_forms_h_location="<X11/forms.h>"],[
 AC_CHECK_HEADER(forms.h,[],[
 LYX_LIB_ERROR(forms.h,forms)])])
-AC_DEFINE_UNQUOTED(FORMS_H_LOCATION,$lyx_cv_forms_h_location,
-   [define this to the location of forms.h to be used with #include, e.g. <forms.h>])
+AC_SUBST(FORMS_H_LOCATION,$lyx_cv_forms_h_location)
 
 if test $ac_cv_header_forms_h = yes; then
   AC_CACHE_CHECK([xforms header version],lyx_cv_xfversion,
@@ -79,7 +74,7 @@ if test $ac_cv_header_forms_h = yes; then
 #line __oline__ "configure"
 #include "confdefs.h"
 
-#include FORMS_H_LOCATION
+#include $lyx_cv_forms_h_location
 #if ! defined(FL_INCLUDE_VERSION)
 "%%%"(unknown)"%%%"
 #else
@@ -109,7 +104,7 @@ fi
 
 
 dnl Check the details of the xforms image loader
-AC_DEFUN(LYX_CHECK_XFORMS_IMAGE_LOADER,
+AC_DEFUN([LYX_CHECK_XFORMS_IMAGE_LOADER],
 [AC_REQUIRE([LYX_PATH_XFORMS])
 save_LIBS=$LIBS
 LIBS="$XFORMS_LIB $XPM_LIB $LIBS"
@@ -120,24 +115,33 @@ AC_LANG_C
 
 dnl The image headers were split out of forms.h in xforms version 1.0.
 AC_CHECK_HEADERS(flimage.h X11/flimage.h, break,,[#include $lyx_cv_forms_h_location])
-AC_SEARCH_LIBS(flimage_dup, flimage,
-  [if test "$ac_cv_search_flimage_dup" != "none required" ; then
-     XFORMS_IMAGE_LIB="-lflimage"
-     LIBS="$XFORMS_IMAGE_LIB $LIBS"
-  fi])
 
 dnl Only enable native loading of jpeg images if the jpeg library is installed.
+dnl This test comes before that of flimage itself to ensure that the necessary
+dnl libraries are linked into the "flimage_dup" test program below.
+XFORMS_IMAGE_LIB=""
 AC_CHECK_LIB(jpeg, jpeg_read_header,
   [lyx_use_jpeg_image_loader=yes
-   XFORMS_IMAGE_LIB="$XFORMS_IMAGE_LIB -ljpeg"
-   LIBS="$LIBS -ljpeg"])
-AC_SUBST(XFORMS_IMAGE_LIB)
+   XFORMS_IMAGE_LIB="-ljpeg"
+   LIBS="-ljpeg $LIBS"])
+
+AC_SEARCH_LIBS(flimage_dup, flimage,
+  [if test "$ac_cv_search_flimage_dup" != "none required" ; then
+     XFORMS_IMAGE_LIB="-lflimage $XFORMS_IMAGE_LIB"
+  fi])
 
 if test $lyx_use_jpeg_image_loader = yes ; then
-  lyx_flags="$lyx_flags xforms-image-loader"
+  lyx_flags="$lyx_flags jpeg-image-loader"
   AC_DEFINE(USE_JPEG_IMAGE_LOADER, 1,
            [Define if you want to be able to load jpeg images natively])
 fi
 
 AC_LANG_RESTORE
 LIBS=$save_LIBS])
+
+dnl Do all check required to use xforms
+AC_DEFUN([XFORMS_DO_IT_ALL],
+[LYX_PATH_XPM
+LYX_PATH_XFORMS
+LYX_CHECK_XFORMS_IMAGE_LOADER
+AC_SUBST(XFORMS_LIBS, ["$XFORMS_IMAGE_LIB $XFORMS_LIB $XPM_LIB"])])