]> git.lyx.org Git - features.git/blobdiff - config/lyxinclude.m4
Fix page range without page format
[features.git] / config / lyxinclude.m4
index 46b56171e41e56ce27695f87ebef36f0863b9a92..e6cab08e3baa054548b361c16b3940c3e4199cb7 100644 (file)
@@ -63,7 +63,16 @@ AC_MSG_RESULT([$withval])
 ])
 
 
-dnl Check whether to configure for Qt4 or Qt5. Default is Qt5.
+dnl Check whether to configure for Qt4, Qt5, or Qt6. Default is Qt5.
+dnl
+AC_DEFUN([LYX_CHECK_QT6],[
+AC_MSG_CHECKING([whether Qt6 is requested])
+AC_ARG_ENABLE([qt6],
+  [AS_HELP_STRING([--enable-qt6],[use Qt6 for building])],
+  USE_QT6=$enableval, USE_QT6=no)
+AC_MSG_RESULT([$USE_QT6])
+AC_SUBST([USE_QT6])
+])
 dnl
 AC_DEFUN([LYX_CHECK_QT5],[
 AC_MSG_CHECKING([whether Qt5 is disabled])
@@ -270,8 +279,8 @@ AC_REQUIRE([AC_PROG_CXXCPP])
 
 ### We might want to force the C++ standard.
 AC_ARG_ENABLE(cxx-mode,
-  AS_HELP_STRING([--enable-cxx-mode],[choose C++ standard (default: 14, then 11)]),,
-  [enable_cxx_mode={14,11}]
+  AS_HELP_STRING([--enable-cxx-mode],[choose C++ standard (default: 17, 14, then 11)]),,
+  [enable_cxx_mode={17,14,11}]
 )
 
 AC_LANG_PUSH(C++)
@@ -372,7 +381,7 @@ if test x$GXX = xyes; then
     AM_CXXFLAGS="$AM_CXXFLAGS -fno-omit-frame-pointer"
   fi
 
-  if test x$USE_QT5 = xyes ; then
+  if test x$USE_QT5 = xyes -o x$USE_QT6 = xyes; then
       AS_CASE([$host], [*mingw*|*cygwin*], [], [AM_CXXFLAGS="-fPIC $AM_CXXFLAGS"])
   fi
   dnl Warnings are for preprocessor too
@@ -381,12 +390,12 @@ if test x$GXX = xyes; then
       dnl Shut off warning -Wdeprecated-copy, which triggers too much
       dnl note that g++ always accepts -Wno-xxx, even when -Wxxx is an error.
       AC_LANG_PUSH(C++)
-      AX_CHECK_COMPILE_FLAG([-Wno-deprecated-copy],
+      AX_CHECK_COMPILE_FLAG([-Wdeprecated-copy],
        [AM_CXXFLAGS="$AM_CXXFLAGS -Wno-deprecated-copy"], [], [-Werror])
       AC_LANG_POP(C++)
     fi
   case $gxx_version in
-      2.*|3.*|4.@<:@0-6@:>@) AC_MSG_ERROR([gcc >= 4.7 is required]);;
+      2.*|3.*|4.@<:@0-8@:>@*) AC_MSG_ERROR([gcc >= 4.9 is required]);;
   esac
   if test x$enable_stdlib_debug = xyes ; then
     dnl FIXME: for clang/libc++, one should define _LIBCPP_DEBUG2=0
@@ -416,68 +425,63 @@ if test x$GXX = xyes; then
 fi
 ])
 
+dnl Usage: LYX_USE_INCLUDED_NOD : select if the included nod should be used.
+AC_DEFUN([LYX_USE_INCLUDED_NOD],[
+       AC_MSG_CHECKING([whether to use included nod library])
+       AC_ARG_WITH(included-nod,
+           [AS_HELP_STRING([--without-included-nod], [do not use the nod lib supplied with LyX, try to find one in the system directories - compilation will abort if nothing suitable is found])],
+           [lyx_cv_with_included_nod=$withval],
+           [lyx_cv_with_included_nod=yes])
+       AM_CONDITIONAL(USE_INCLUDED_NOD, test x$lyx_cv_with_included_nod = xyes)
+       AC_MSG_RESULT([$lyx_cv_with_included_nod])
+       if test x$lyx_cv_with_included_nod = xyes ; then
+           lyx_included_libs="$lyx_included_libs nod"
+           NOD_INCLUDES='-I$(top_srcdir)/3rdparty/nod'
+       else
+           NOD_INCLUDES=
+           AC_LANG_PUSH(C++)
+           AC_MSG_CHECKING([for nod library])
+           AC_LINK_IFELSE(
+               [AC_LANG_PROGRAM([#include <nod.hpp>],
+                   [nod::scoped_connection conn;])],
+               [AC_MSG_RESULT([yes])],
+               [AC_MSG_RESULT([no])
+               AC_MSG_ERROR([cannot find suitable nod library (do not use --without-included-nod)])
+           ])
+           AC_LANG_POP(C++)
+       fi
+       AC_SUBST(NOD_INCLUDES)
+])
+
 dnl Usage: LYX_USE_INCLUDED_BOOST : select if the included boost should
 dnl        be used.
 AC_DEFUN([LYX_USE_INCLUDED_BOOST],[
        AC_MSG_CHECKING([whether to use included boost library])
        AC_ARG_WITH(included-boost,
-           [AS_HELP_STRING([--without-included-boost], [do not use the boost lib supplied with LyX, try to find one in the system directories - compilation will abort if nothing suitable is found])],
+           [AS_HELP_STRING([--with-included-boost], [use the boost lib supplied with LyX])],
            [lyx_cv_with_included_boost=$withval],
-           [lyx_cv_with_included_boost=yes])
+           [lyx_cv_with_included_boost=no])
        AM_CONDITIONAL(USE_INCLUDED_BOOST, test x$lyx_cv_with_included_boost = xyes)
        AC_MSG_RESULT([$lyx_cv_with_included_boost])
+       if test x$lyx_cv_with_included_boost = xno ; then
+           AC_LANG_PUSH(C++)
+           AC_MSG_CHECKING([for boost library])
+           AC_LINK_IFELSE(
+               [AC_LANG_PROGRAM([#include <boost/crc.hpp>],
+                   [boost::crc_32_type crc;])],
+               [AC_MSG_RESULT([yes])],
+               [AC_MSG_RESULT([no])
+               lyx_cv_with_included_boost=yes
+           ])
+           AC_LANG_POP(C++)
+       fi
        if test x$lyx_cv_with_included_boost = xyes ; then
            lyx_included_libs="$lyx_included_libs boost"
            BOOST_INCLUDES='-I$(top_srcdir)/3rdparty/boost'
-           if test $lyx_std_regex = yes ; then
-             BOOST_LIBS=""
-           else
-             BOOST_LIBS='$(top_builddir)/3rdparty/boost/liblyxboost.a'
-           fi
        else
            BOOST_INCLUDES=
-           if test $lyx_std_regex = yes ; then
-             BOOST_LIBS=""
-           else
-             AC_LANG_PUSH(C++)
-             save_LIBS=$LIBS
-
-             AC_MSG_CHECKING([for multithreaded boost libraries])
-             LIBS="$save_LIBS -lboost_regex-mt $LIBTHREAD"
-             AC_LINK_IFELSE(
-               [AC_LANG_PROGRAM([#include <boost/regex.hpp>],
-                       [boost::regex reg;])],
-               [AC_MSG_RESULT([yes])
-                BOOST_MT="-mt"],
-               [AC_MSG_RESULT([no])
-                AC_MSG_CHECKING([for plain boost libraries])
-                LIBS="$save_LIBS -lboost_regex"
-                AC_LINK_IFELSE(
-                    [AC_LANG_PROGRAM([#include <boost/regex.hpp>],
-                            [boost::regex reg;])],
-                    [AC_MSG_RESULT([yes])
-                     BOOST_MT=""],
-                    [AC_MSG_RESULT([no])
-                     AC_MSG_ERROR([cannot find suitable boost library (do not use --without-included-boost)])
-                ])
-             ])
-             LIBS=$save_LIBS
-             AC_LANG_POP(C++)
-
-             dnl In general, system boost libraries are incompatible with
-             dnl the use of stdlib-debug in libstdc++. See ticket #9736 for
-             dnl details.
-             if test $enable_stdlib_debug = "yes" ; then
-               LYX_WARNING([Compiling LyX with stdlib-debug and system boost libraries may lead to
-   crashes. Consider using --disable-stdlib-debug or removing
-   --without-included-boost.])
-             fi
-
-             BOOST_LIBS="-lboost_regex${BOOST_MT}"
-           fi
        fi
        AC_SUBST(BOOST_INCLUDES)
-       AC_SUBST(BOOST_LIBS)
 ])
 
 
@@ -670,6 +674,34 @@ AC_DEFUN([LYX_USE_INCLUDED_MYTHES],[
 ])
 
 
+dnl Usage: LYX_CHECK_MACOS_DEPLOYMENT_TARGET : select the macos deployment target
+dnl                       [default-auto-value])
+dnl  Assign the macosx-version-min value for compiler, linker and Info.plist.
+dnl  Default is dynamic - depends on used Qt library version.
+AC_DEFUN([LYX_CHECK_MACOS_DEPLOYMENT_TARGET],[
+  AC_ARG_WITH(macos-deployment-target,
+    [AS_HELP_STRING([--with-macos-deployment-target], [force the macos deployment target for LyX])],
+    [macos_deployment_target=$withval],
+    [macos_deployment_target=auto])
+  if test "${macos_deployment_target}" = "auto" ; then
+    macos_deployment_target="10.10"
+    case "$QTLIB_VERSION" in
+    5.12.*)
+      macos_deployment_target="10.12"
+      ;;
+    6.*)
+      macos_deployment_target="10.14"
+      ;;
+    esac
+  fi
+  AM_CPPFLAGS="-mmacosx-version-min=$macos_deployment_target $AM_CPPFLAGS"
+  AM_LDFLAGS="-mmacosx-version-min=$macos_deployment_target $AM_LDFLAGS"
+  AC_SUBST(macos_deployment_target,"${macos_deployment_target}")
+  AC_MSG_CHECKING([the macos deployment target for LyX])
+  AC_MSG_RESULT([$macos_deployment_target])
+])
+
+
 dnl Usage: LYX_WITH_DIR(dir-name,desc,dir-var-name,default-value,
 dnl                       [default-yes-value])
 dnl  Adds a --with-'dir-name' option (described by 'desc') and puts the
@@ -935,3 +967,29 @@ AC_DEFUN([LYX_SET_VERSION_INFO],
  AC_SUBST(LYX_USERDIR_VER,"$lyx_userdir_ver")
 ])
 
+AC_DEFUN([LYX_CHECK_WITH_SAXON],
+[
+       lyx_use_saxon=true
+       AC_ARG_WITH(saxon, AS_HELP_STRING([--without-saxon],[do not install saxon library (epub export)]))
+       test "$with_saxon" = "no" && lyx_use_saxon=false
+
+       if $lyx_use_saxon ; then
+               AC_MSG_RESULT(Set to installing internal saxon.)
+       fi
+
+       AM_CONDITIONAL(SAXON_INSTALL, $lyx_use_saxon)
+    ])
+
+AC_DEFUN([LYX_CHECK_WITH_XSLT_SHEETS],
+[
+       lyx_use_xslt_stylesheets=true
+       AC_ARG_WITH(xslt-stylesheets, AS_HELP_STRING([--without-xslt-stylesheets],[do not install XSLT Stylesheets (epub export)]))
+       test "$with_xslt_stylesheets" = "no" && lyx_use_xslt_stylesheets=false
+
+       if $lyx_use_xslt_stylesheets ; then
+               AC_MSG_RESULT(Set to installing XSLT Stylesheets.)
+       fi
+
+       AM_CONDITIONAL(XSLT_SHEETS_INSTALL, $lyx_use_xslt_stylesheets)
+    ])
+