171 lines
4.1 KiB
Plaintext
Executable File
171 lines
4.1 KiB
Plaintext
Executable File
AC_INIT([xmlcopyeditor], [1.3.1.0])
|
|
AC_CONFIG_SRCDIR([src/xmlcopyeditor.cpp])
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
AM_INIT_AUTOMAKE([1.11 foreign])
|
|
|
|
AC_PATH_PROG([APPDATA_VALIDATE], [appdata-validate], [/bin/true])
|
|
AC_PATH_PROG([DESKTOP_FILE_VALIDATE], [desktop-file-validate], [/bin/true])
|
|
|
|
GETTEXT_PACKAGE=AC_PACKAGE_NAME
|
|
AC_SUBST(GETTEXT_PACKAGE)
|
|
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE",[The name of the gettext domain])
|
|
IT_PROG_INTLTOOL(0.40.0)
|
|
|
|
AC_PROG_CXX
|
|
AC_PROG_INSTALL
|
|
|
|
LT_INIT
|
|
|
|
PKG_PROG_PKG_CONFIG
|
|
|
|
CPPFLAGS="$CPPFLAGS -Wall -g -fexceptions"
|
|
CXXFLAGS?=
|
|
|
|
WXCONFIG=wx-config
|
|
|
|
AC_ARG_WITH(wx-config,
|
|
[[ --with-wx-config=FILE Use the given path to wx-config when determining
|
|
wxWidgets configuration; defaults to "wx-config"]],
|
|
[
|
|
if test "$withval" != "yes" -a "$withval" != ""; then
|
|
WXCONFIG=$withval
|
|
fi
|
|
])
|
|
|
|
wxversion=0
|
|
|
|
AC_DEFUN([WXTEST],
|
|
[
|
|
AC_REQUIRE([AC_PROG_AWK])
|
|
AC_MSG_CHECKING([wxWidgets version])
|
|
if wxversion=`$WXCONFIG --version`; then
|
|
AC_MSG_RESULT([$wxversion])
|
|
else
|
|
AC_MSG_RESULT([not found])
|
|
AC_MSG_ERROR([wxWidgets is required. Try --with-wx-config.])
|
|
fi])
|
|
|
|
# Call WXTEST func
|
|
WXTEST
|
|
|
|
# Verify minimus requires
|
|
vers=`echo $wxversion | $AWK 'BEGIN { FS = "."; } { printf "% d", ($1 * 1000 + $2) * 1000 + $3;}'`
|
|
if test -n "$vers" && test "$vers" -ge 2008000; then
|
|
WX_CPPFLAGS="`$WXCONFIG --cppflags`"
|
|
WX_CXXFLAGS="`$WXCONFIG --cxxflags | sed -e 's/-fno-exceptions//'`"
|
|
WX_LIBS="`$WXCONFIG --unicode --libs std stc aui richtext`"
|
|
else
|
|
AC_MSG_ERROR([wxWidgets 2.8.0 or newer is required])
|
|
fi
|
|
|
|
PKG_CHECK_MODULES([XML2], [libxml-2.0])
|
|
PKG_CHECK_MODULES([XSLT], [libxslt])
|
|
|
|
AC_ARG_ENABLE(debug,
|
|
[ --enable-debug, Enable debug build],
|
|
[
|
|
debugbuild="y"
|
|
CXXFLAGS="${CXXFLAGS} -ggdb -O0"
|
|
], [
|
|
CXXFLAGS="${CXXFLAGS} -DNDEBUG -DwxDEBUG_LEVEL=0"
|
|
])
|
|
|
|
# Check pcre is available
|
|
PKG_CHECK_MODULES([PCRE2], [libpcre2-8])
|
|
|
|
# Check boost::shared_ptr is available
|
|
AC_LANG(C++)
|
|
AC_CHECK_HEADER(boost/shared_ptr.hpp, ,
|
|
AC_MSG_ERROR([boost headers not found]))
|
|
|
|
# Check xercesc is available
|
|
AC_LANG(C++)
|
|
AC_CHECK_HEADER(xercesc/util/PlatformUtils.hpp, ,
|
|
AC_MSG_ERROR([Xerces-C headers not found]))
|
|
|
|
# Check unicode strings used in xercesc
|
|
AC_MSG_CHECKING([if we support the unicode strings used in xercesc])
|
|
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
|
#include <boost/static_assert.hpp>
|
|
#include <xercesc/util/XMLChar.hpp>
|
|
|
|
int main() {
|
|
BOOST_STATIC_ASSERT(sizeof(XMLCh) == 1 || sizeof(XMLCh) == 2 || sizeof(XMLCh) == 4);
|
|
return 0;
|
|
}
|
|
]])],
|
|
[AC_MSG_RESULT([yes])],
|
|
[AC_MSG_ERROR([no])
|
|
])
|
|
|
|
# Check expat is available
|
|
AC_LANG(C++)
|
|
AC_CHECK_HEADER(expat.h, ,
|
|
AC_MSG_ERROR([Expat headers not found]))
|
|
|
|
# Check enchant-2
|
|
PKG_CHECK_MODULES(ENCHANT, [enchant-2],
|
|
[AC_DEFINE([USE_ENCHANT]),
|
|
AC_DEFINE([HAVE_LIBENCHANT_2])
|
|
],
|
|
# Check enchant
|
|
PKG_CHECK_MODULES(ENCHANT, [enchant],
|
|
[AC_DEFINE([USE_ENCHANT])],
|
|
# otherwise Check ASPELL is available
|
|
[AC_CHECK_HEADER(aspell.h, [ASPELL_LIBS="-laspell"],
|
|
AC_MSG_ERROR([Aspell headers not found]))]
|
|
)
|
|
)
|
|
|
|
AC_SUBST(ASPELL_LIBS)
|
|
|
|
AC_MSG_CHECKING([the GTK version to use])
|
|
AC_ARG_WITH([gtk],
|
|
[AS_HELP_STRING([--with-gtk=2.0|3.0],
|
|
[the GTK version to compile against [default: 3.0].
|
|
It has to match the one that wxWidgets linked with.
|
|
GTK is needed to make single-instance-check work.
|
|
]
|
|
)],
|
|
[AS_CASE(["$with_gtk"],
|
|
[2.0|3.0], [],
|
|
[AC_MSG_ERROR([invalid GTK version specified])]
|
|
)],
|
|
[with_gtk=3.0]
|
|
)
|
|
AC_MSG_RESULT([$with_gtk])
|
|
AS_CASE(["$with_gtk"],
|
|
[2.0], [PKG_CHECK_MODULES(GTK, [gtk+-2.0],
|
|
[], [CXXFLAGS="$CXXFLAGS -D__NO_GTK__"])],
|
|
[3.0], [PKG_CHECK_MODULES(GTK, [gtk+-3.0],
|
|
[], [CXXFLAGS="$CXXFLAGS -D__NO_GTK__"])],
|
|
[]
|
|
)
|
|
|
|
#AC_SUBST(GTK2_CFLAGS)
|
|
#AC_SUBST(GTK2_LIBS)
|
|
|
|
CPPFLAGS="$CPPFLAGS $WX_CPPFLAGS"
|
|
CXXFLAGS="$CXXFLAGS $WX_CXXFLAGS"
|
|
|
|
AC_SUBST(WX_LIBS)
|
|
|
|
AC_CONFIG_FILES([Makefile data/Makefile m4/Makefile po/Makefile.in src/Makefile])
|
|
AC_OUTPUT
|
|
|
|
dnl Summarized output
|
|
echo
|
|
echo "***************************************"
|
|
echo
|
|
|
|
if [[ "$debugbuild" = "y" ]]; then
|
|
echo "Debug Enabled"
|
|
else
|
|
echo "Debug Disabled"
|
|
fi
|
|
if [[ "$GTK_LIBS" = "" ]]; then
|
|
echo "GTK No. There will be problems when single instance is enabled."
|
|
fi
|
|
|