dnl Process with autoconf to generate configure script -*- sh -*-
-AC_INIT(LyX,2.2.0dev,[lyx-devel@lists.lyx.org],[lyx])
+AC_INIT(LyX,2.3.0dev,[lyx-devel@lists.lyx.org],[lyx])
AC_PRESERVE_HELP_ORDER
# Use ISO format only. The frontend needs to parse this
-AC_SUBST(LYX_DATE, ["2015-11-27"])
+AC_SUBST(LYX_DATE, ["2016-04-16"])
AC_PREREQ(2.60)
AC_CONFIG_SRCDIR(src/main.cpp)
AC_CONFIG_HEADERS([config.h])
dnl which are the versions where subdir-objects can beused.
dnl see: https://www.mail-archive.com/lyx-devel@lists.lyx.org/msg181023.html
m4_define([LYX_OBJECTS_LAYOUT], m4_ifdef([_AM_PROG_CC_C_O],[subdir-objects],))
-AM_INIT_AUTOMAKE([foreign dist-bzip2 no-define 1.8] LYX_OBJECTS_LAYOUT)
+# Automake is pulling the historical V7 format. This tar format supports
+# file names only up to 99 characters. tar-ustar selects the ustar format defined
+# by POSIX 1003.1-1988. This format is believed to be old enough to be portable.
+AM_INIT_AUTOMAKE([foreign dist-bzip2 no-define 1.8 tar-ustar] LYX_OBJECTS_LAYOUT)
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
PACKAGE=$save_PACKAGE
# Tools for creating libraries (note that we do not use libtool)
m4_ifdef([AM_PROG_AR], [AM_PROG_AR]) dnl AM_PROG_AR requires automake 1.12
AC_PROG_RANLIB
+dnl Recent debian/ubuntu (at least) have built 'ar' so that deterministic mode is the default.
+dnl This means that it does not make sense to use the 'u' flag (default ARFLAGS is 'cru').
+AC_SUBST([ARFLAGS], [cr])
### Check for a C++ compiler
dnl We have to do weird tricks so that autoconf does not touch CXXFLAGS even
AC_CHECK_LIB(psapi, main, [LIBPSAPI=-lpsapi])
AC_SUBST(LIBPSAPI)
AC_CHECK_LIB(gdi32, main)
+AC_CHECK_LIB(ole32, main)
LYX_USE_INCLUDED_BOOST
LYX_USE_INCLUDED_MYTHES
# Nice to have when an assertion triggers
LYX_CHECK_CALLSTACK_PRINTING
+# C++14 only
+LYX_CHECK_DEF(make_unique, memory, [using std::make_unique;])
+
# Needed for our char_type
AC_CHECK_SIZEOF(wchar_t)
-### We need iconv for unicode support (Qt4 frontend requires it too)
-AM_ICONV
-if test "$am_cv_func_iconv" = no; then
- AC_MSG_ERROR([cannot find required library iconv.])
+# Taken from gettext, needed for libiconv
+AC_CACHE_CHECK([for wchar_t], [gt_cv_c_wchar_t],
+ [AC_TRY_COMPILE([#include <stddef.h>
+ wchar_t foo = (wchar_t)'\0';], ,
+ [gt_cv_c_wchar_t=yes], [gt_cv_c_wchar_t=no])])
+if test $gt_cv_c_wchar_t = yes; then
+ AC_DEFINE([HAVE_WCHAR_T], [1], [Define if you have the 'wchar_t' type.])
+ HAVE_WCHAR_T=1
else
- LIBS="$LIBS $LIBICONV"
+ HAVE_WCHAR_T=0
+fi
+AC_SUBST([HAVE_WCHAR_T])
+
+# Needed for Mingw-w64
+AC_TYPE_LONG_LONG_INT
+if test "$ac_cv_type_long_long_int" = yes; then
+ AC_CHECK_SIZEOF(long)
+ AC_CHECK_SIZEOF(long long)
fi
+### We need iconv for unicode support (Qt4 frontend requires it too)
+LYX_USE_INCLUDED_ICONV
+
### check for compression support
-AC_CHECK_HEADERS(zlib.h,
- [AC_CHECK_LIB(z, gzopen, [LIBS="$LIBS -lz"], LYX_LIB_ERROR(libz,zlib))],
- [LYX_LIB_ERROR(zlib.h,zlib)])
+LYX_USE_INCLUDED_ZLIB
### check for file magic support (currently optional)
AC_CHECK_HEADERS(magic.h,
AC_TYPE_PID_T
AC_TYPE_SIZE_T
AC_TYPE_UID_T
-# Taken from gettext
-AC_CACHE_CHECK([for wchar_t], [gt_cv_c_wchar_t],
- [AC_TRY_COMPILE([#include <stddef.h>
- wchar_t foo = (wchar_t)'\0';], ,
- [gt_cv_c_wchar_t=yes], [gt_cv_c_wchar_t=no])])
-if test $gt_cv_c_wchar_t = yes; then
- AC_DEFINE([HAVE_WCHAR_T], [1], [Define if you have the 'wchar_t' type.])
-fi
LYX_CHECK_DEF(PATH_MAX, limits.h, [int n = PATH_MAX;])
lyx_win_res=false;
case ${host} in
*mingw*|*cygwin*) lyx_win_res=true;;
+ *freebsd*) AC_SEARCH_LIBS(backtrace_symbols, [execinfo])
esac
+if test "x$lyx_win_res" = "xtrue"; then
+ AC_CHECK_TOOL(RC, windres,)
+ if test -z "$RC"; then
+ AC_ERROR([Could not find a resource compiler])
+ fi
+fi
AM_CONDITIONAL(LYX_WIN_RESOURCE, $lyx_win_res)
LYX_SET_VERSION_INFO
/************************************************************
** You should not need to change anything beyond this point */
-#if __cplusplus >= 201103L || defined(__GXX_EXPERIMENTAL_CXX0X__)
-#define LYX_USE_CXX11
-#endif
-
#ifndef HAVE_STRERROR
#if defined(__cplusplus)
extern "C"
char * strerror(int n);
#endif
-#if defined(HAVE_OSTREAM) && defined(HAVE_LOCALE) && defined(HAVE_SSTREAM)
-# define USE_BOOST_FORMAT 1
-#else
-# define USE_BOOST_FORMAT 0
-#endif
-
#define BOOST_USER_CONFIG <config.h>
#if !defined(ENABLE_ASSERTIONS)
#define BOOST_DISABLE_THREADS 1
#define BOOST_NO_WREGEX 1
#define BOOST_NO_WSTRING 1
-#define BOOST_SIGNALS_NO_DEPRECATION_WARNING 1
#ifdef __CYGWIN__
# define NOMINMAX
# define USE_WCHAR_T
#endif
+#ifdef HAVE_LONG_LONG_INT
+#if SIZEOF_LONG_LONG > SIZEOF_LONG
+#define LYX_USE_LONG_LONG
+#endif
+#endif
+
#endif
])
AC_CONFIG_FILES([Makefile \
lyx.1:lyx.1in \
- boost/Makefile \
+ 3rdparty/Makefile \
+ 3rdparty/boost/Makefile \
+ 3rdparty/hunspell/Makefile \
+ 3rdparty/libiconv/Makefile \
+ $ICONV_ICONV_H_IN \
+ 3rdparty/zlib/Makefile \
+ autotests/Makefile \
config/Makefile \
development/Makefile \
development/MacOSX/Makefile \