commit 8cb021b32fffb92003da7cef9ef3cb711f5901eb
Author: Jean-Marc Lasgouttes <[email protected]>
Date: Mon Mar 6 16:03:32 2017 +0100
Rewrite detection of MyThes library
Now configure searches in this order
1. system-installed library
2. code bundled with LyX
If --with-included-mythes or if no mythes library is installed, then
the script selects the bundled version. There should be no cases
leading to error message.
---
config/lyxinclude.m4 | 67 ++++++++++++++++++++++++++++---------------------
configure.ac | 2 +-
2 files changed, 39 insertions(+), 30 deletions(-)
diff --git a/config/lyxinclude.m4 b/config/lyxinclude.m4
index 585cb7f..8287fb2 100644
--- a/config/lyxinclude.m4
+++ b/config/lyxinclude.m4
@@ -626,34 +626,42 @@ fi
dnl Usage: LYX_USE_INCLUDED_MYTHES : select if the included MyThes should
dnl be used.
AC_DEFUN([LYX_USE_INCLUDED_MYTHES],[
- AC_MSG_CHECKING([whether to use included MyThes library])
- AC_ARG_WITH(included-mythes,
- [AC_HELP_STRING([--without-included-mythes], [use the system MyThes
lib instead of the one supplied with LyX])],
- [lyx_cv_with_included_mythes=$withval],
- [lyx_cv_with_included_mythes=yes])
- AM_CONDITIONAL(USE_INCLUDED_MYTHES, test x$lyx_cv_with_included_mythes
= xyes)
- AC_MSG_RESULT([$lyx_cv_with_included_mythes])
- if test x$lyx_cv_with_included_mythes != xyes ; then
- AC_LANG_PUSH(C++)
- AC_CHECK_HEADER(mythes.hxx,[ac_cv_header_mythes_h=yes
lyx_cv_mythes_h_location="<mythes.hxx>"])
- if test x$ac_cv_header_mythes_h != xyes; then
-
AC_CHECK_HEADER(mythes/mythes.hxx,[ac_cv_header_mythes_h=yes
lyx_cv_mythes_h_location="<mythes/mythes.hxx>"])
- fi
- AC_CHECK_LIB(mythes, main, [MYTHES_LIBS="-lmythes"
lyx_mythes=yes], [lyx_mythes=no])
- if test x$lyx_mythes != xyes; then
- AC_CHECK_LIB(mythes-1.2, main,
[MYTHES_LIBS="-lmythes-1.2" lyx_mythes=yes], [lyx_mythes=no])
- fi
- AC_LANG_POP(C++)
- if test x$lyx_mythes != xyes -o x$ac_cv_header_mythes_h !=
xyes; then
- AC_MSG_ERROR([cannot find suitable MyThes library (do
not use --without-included-mythes)])
- fi
- AC_DEFINE(USE_EXTERNAL_MYTHES, 1, [Define as 1 to use an
external MyThes library])
-
AC_DEFINE_UNQUOTED(MYTHES_H_LOCATION,$lyx_cv_mythes_h_location,[Location of
mythes.hxx])
- AC_SUBST(MYTHES_LIBS)
- else
- lyx_included_libs="$lyx_included_libs mythes"
- fi
-
+ AC_ARG_WITH(included-mythes,
+ [AC_HELP_STRING([--with-included-mythes], [force to use the MyThes lib
supplied with LyX])],
+ [use_included_mythes=$withval],
+ [use_included_mythes=no])
+ if test x$use_included_mythes != xyes ; then
+ AC_LANG_PUSH(C++)
+ use_included_mythes=yes
+ AC_CHECK_HEADERS([mythes.hxx mythes/mythes.hxx],
+ [mythes_h_location="<$ac_header>"
+ save_LIBS=$LIBS
+ AC_MSG_CHECKING([checking for MyThes library])
+ for ac_lib in mythes mythes-1.2 ; do
+ LIBS="-l$ac_lib $save_LIBS"
+ AC_LINK_IFELSE(
+ [AC_LANG_PROGRAM([#include <cstdio>]
+ [#include $mythes_h_location], [MyThes dummy("idx","dat")])],
+ [MYTHES_LIBS=-l$ac_lib
+ AC_MSG_RESULT([$MYTHES_LIBS])
+ use_included_mythes=no])
+ done
+ if test $use_included_mythes != no ; then
+ AC_MSG_RESULT([not found])
+ fi
+ break])
+ AC_LANG_POP(C++)
+ fi
+ if test $use_included_mythes = no ; then
+ AC_DEFINE(USE_EXTERNAL_MYTHES, 1, [Define as 1 to use an external MyThes
library])
+ AC_DEFINE_UNQUOTED(MYTHES_H_LOCATION,$mythes_h_location,[Location of
mythes.hxx])
+ AC_SUBST(MYTHES_LIBS)
+ else
+ lyx_included_libs="$lyx_included_libs mythes"
+ fi
+ AM_CONDITIONAL(USE_INCLUDED_MYTHES, test x$use_included_mythes = xyes)
+ AC_MSG_CHECKING([whether to use included MyThes library])
+ AC_MSG_RESULT([$use_included_mythes])
])
@@ -670,7 +678,8 @@ AC_DEFUN([LYX_WITH_DIR],[
test "x$with_$3" = xyes && with_$3=$5
lyx_cv_$3="$with_$3"
fi
- AC_MSG_RESULT($lyx_cv_$3)])
+ AC_MSG_RESULT($lyx_cv_$3)
+])
dnl Usage: LYX_LOOP_DIR(value,action)
diff --git a/configure.ac b/configure.ac
index d203049..ce4eb96 100644
--- a/configure.ac
+++ b/configure.ac
@@ -122,7 +122,6 @@ AC_CHECK_LIB(gdi32, main)
AC_CHECK_LIB(ole32, main)
LYX_USE_INCLUDED_BOOST
-LYX_USE_INCLUDED_MYTHES
### we need to know the byte order for unicode conversions
AC_C_BIGENDIAN
@@ -220,6 +219,7 @@ AC_FUNC_MKDIR
AC_FUNC_SELECT_ARGTYPES
LYX_CHECK_SPELL_ENGINES
+LYX_USE_INCLUDED_MYTHES
lyx_client_subdir=true
dnl AC_LANG_PUSH(C)