Rev 2311 | Rev 2314 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | RSS feed
# Original Author was Kalle@kde.org
# I lifted it in some mater. (Stephan Kulow)
# I used much code from Janos Farkas
dnl Process this file with autoconf to produce a configure script.
AC_INIT(acinclude.m4) dnl a source file from your sub dir
dnl This is so we can use kde-common
AC_CONFIG_AUX_DIR(admin)
AC_CANONICAL_SYSTEM
AC_ARG_PROGRAM
dnl Automake doc recommends to do this only here. (Janos)
AM_INIT_AUTOMAKE(scribus,1.3.0cvs)
dnl KDE_SET_PREFIX
AC_PREFIX_DEFAULT(/usr/local)
if test "x$prefix" = "xNONE"; then
prefix=$ac_default_prefix
ac_configure_args="$ac_configure_args --prefix $prefix"
fi
dnl Look for pkg-config, which we use to find fontconfig and
dnl will probably need for other things in future.
PKG_CONFIG=""
AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
LIBART_LIBS=""
LIBART_CFLAGS=""
LIBART_CONFIG=""
AC_PATH_PROG(LIBART_CONFIG, libart2-config,[AC_MSG_ERROR([Could not find libart anywhere, check http://www.levien.com/libart/], [$PATH ${prefix}/bin ${exec_prefix}/bin /usr/local/bin /usr/nekoware/bin /opt/local/bin])
])
if test -n "$LIBART_CONFIG"; then
vers=`$LIBART_CONFIG --version 2>/dev/null | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
if test -n "$vers" && test "$vers" -ge 2003008
then
LIBART_LIBS="`$LIBART_CONFIG --libs`"
LIBART_CFLAGS="`$LIBART_CONFIG --cflags`"
AC_DEFINE_UNQUOTED(HAVE_LIBART, 1, [Defines if your system has the libart library])
else
AC_MSG_ERROR([You need at least libart 2.3.8])
fi
fi
AC_SUBST(LIBART_LIBS)
AC_SUBST(LIBART_CFLAGS)
AC_C_BIGENDIAN
dnl Check for freetype, which Scribus *requires* to build
LIBFREETYPE_LIBS=""
LIBFREETYPE_CFLAGS=""
FREETYPE_CONFIG=""
AC_PATH_PROG(FREETYPE_CONFIG, freetype-config, [AC_MSG_ERROR([Could not find libfreetype anywhere, check http://www.freetype.org/])], [$PATH ${prefix}/bin ${exec_prefix}/bin /usr/local/bin /opt/local/bin /usr/bin /usr/nekoware/bin /usr/X11/bin])
hafree=no
hafree_post219=
if test -n "$FREETYPE_CONFIG"; then
LIBFREETYPE_LIBS="`$FREETYPE_CONFIG --libs`"
LIBFREETYPE_CFLAGS="`$FREETYPE_CONFIG --cflags`"
AC_CHECK_LIB(freetype, FT_Get_First_Char, [hafree=yes],[hafree=no], "$LIBFREETYPE_LIBS")
AC_CHECK_LIB(freetype, FT_Get_Next_Char, [hafree=yes],[hafree=no], "$LIBFREETYPE_LIBS")
if test $hafree = yes; then
AC_DEFINE_UNQUOTED(HAVE_FREETYPE, 1, [Defines if your system has the libfreetype library])
else
AC_MSG_ERROR([You need at least freetype 2.1.0])
fi
dnl Warn the user if they have less than freetype 2.1.9
dnl Changed to fatal error
AC_MSG_CHECKING(freetype version > 2.1.9)
SAVE_CFLAGS="${CFLAGS}"
CFLAGS=" ${LIBFREETYPE_CFLAGS} "
AC_TRY_COMPILE([
#include <ft2build.h>
#include FT_FREETYPE_H
],[
#if FREETYPE_MAJOR == 2 && FREETYPE_MINOR == 1 && FREETYPE_PATCH < 9
#error freetype 2.1 older than 2.1.9
#endif
], [hafree_post219=yes], [hafree_post219=no])
CFLAGS="${SAVE_CFLAGS}"
AC_MSG_RESULT($hafree_post219)
if test hafree_post219 = no; then
AC_MSG_WARN([Your libfreetype is too old - version 2.1.9 or newer strongly recommended])
fi
dnl Export the includes and lib path settings required to build with freetype.
AC_SUBST(LIBFREETYPE_LIBS)
AC_SUBST(LIBFREETYPE_CFLAGS)
else
AC_MSG_ERROR([You need at least freetype 2.1.0])
fi
dnl Try to find fontconfig using fontconfig-config or pkg-config.
hafontconfig=no
LIBFONTCONFIG_LIBS=""
LIBFONTCONFIG_CFLAGS=""
FONTCONFIG_CONFIG=""
dnl Try to find fontconfig with pkg-config if we have pkg-config
AC_MSG_CHECKING([Checking for fontconfig with pkg-config])
if test -n "$PKG_CONFIG"; then
LIBFONTCONFIG_LIBS="`$PKG_CONFIG fontconfig --libs`"
LIBFONTCONFIG_CFLAGS="`$PKG_CONFIG fontconfig --cflags`"
if test -n "$LIBFONTCONFIG_LIBS" || test -n "$LIBFONTCONFIG_CFLAGS"; then
AC_MSG_RESULT([found])
else
AC_MSG_RESULT([not found])
fi
else
AC_MSG_RESULT([failed: pkg-config not found])
fi
dnl If fontconfig not found with pkg-config, try to find fontconfig-config
dnl and use that to look for fontconfig.
if test -z "$LIBFONTCONFIG_LIBS" && test -z "$LIBFONTCONFIG_CFLAGS"; then
dnl Seems we didn't find fontconfig with pkg-config...
AC_PATH_PROG(FONTCONFIG_CONFIG, fontconfig-config, [], [$PATH ${prefix}/bin ${exec_prefix}/bin /usr/local/bin /opt/local/bin /usr/bin /usr/nekoware/bin /usr/X11/bin])
if test -n "$FONTCONFIG_CONFIG"; then
dnl found fontconfig-config, use it's results
LIBFONTCONFIG_LIBS="`$FONTCONFIG_CONFIG --libs`"
LIBFONTCONFIG_CFLAGS="`$FONTCONFIG_CONFIG --cflags`"
else
AC_MSG_WARN([Couldn't find fontconfig-config or find fontconfig with pkg-config])
fi
fi
dnl Check to see if we can compile fontconfig
SAVE_CFLAGS="${CFLAGS}"
SAVE_LDFLAGS="${LDFLAGS}"
CFLAGS="${CFLAGS} ${LIBFONTCONFIG_CFLAGS}"
LDFLAGS="${LDFLAGS} ${LIBFONTCONFIG_LIBS}"
AC_CHECK_LIB(fontconfig, FcPatternBuild, [hafontconfig=yes],[hafontconfig=no])
CFLAGS="${SAVE_CFLAGS}"
LDFLAGS="${SAVE_LDFLAGS}"
if test $hafontconfig = yes; then
AC_DEFINE_UNQUOTED(HAVE_FONTCONFIG, 1, [Defines if your system has the libfontconfig library])
else
AC_MSG_WARN([Couldn't find a usable libfontconfig])
fi
AC_SUBST(LIBFONTCONFIG_LIBS)
AC_SUBST(LIBFONTCONFIG_CFLAGS)
XML_LIBS=""
XML_CFLAGS=""
XML_CONFIG=""
AC_PATH_PROG(XML_CONFIG, xml2-config, [AC_MSG_ERROR([Could not find libxml2 anywhere, check http://www.xmlsoft.org/])], [${PATH} ${prefix}/bin ${exec_prefix}/bin /usr/local/bin /opt/local/bin /usr/bin /usr/nekoware/bin /usr/X11/bin])
dnl check for LibXML2
haxml=no
if test -n "$XML_CONFIG"; then
XML_LIBS="`$XML_CONFIG --libs`"
XML_CFLAGS="`$XML_CONFIG --cflags`"
AC_CHECK_LIB(xml2, attribute, [haxml=yes],[haxml=no])
if test $haxml = yes; then
AC_DEFINE_UNQUOTED(HAVE_XML, 1, [Defines if your system has the libxml2 library])
AC_SUBST(XML_LIBS)
AC_SUBST(XML_CFLAGS)
fi
vers=`$XML_CONFIG --version 2>/dev/null | awk 'BEGIN { FS = "."; } { printf "%d", ($1 * 1000 + $2) * 1000 + $3;}'`
if test -n "$vers" && test "$vers" -ge 2006000
then
AC_DEFINE_UNQUOTED(HAVE_XML26, 1, [Defines if your system has the libxml2 library6])
fi
fi
dnl check for -lsocket
AC_CHECK_LIB(socket,socket,
if test "$uname" != "IRIX"; then
LIBS="-lsocket $LIBS"
else
echo "Not using -lsocket since you are running IRIX."
fi)
AC_CHECK_LIB(nsl,gethostbyaddr,
if test "$uname" != "IRIX"; then
LIBS="-lnsl $LIBS"
else
echo "Not using -lnsl since you are running IRIX."
fi)
dnl Check for lcms
dnl TODO look for lcms using pkg-config too
dnl TODO: convert to use --with-lcms= and AC_ARG_WITH(...)
LIBLCMS=""
hacms=
AC_ARG_ENABLE(lcms, [ --disable-lcms Don't use colour management (default=no)], [disable_lcms="yes"])
# If lcms hasn't been explicitly disabled, look for it and see
# if we can use it.
if test "$disable_lcms" != "yes"; then
# See if liblcms.so is on our search path and looks vaguely valid
AC_CHECK_LIB(lcms, _cmsChannelsOf, [LIBLCMS="-llcms";hacms=yes],[LIBLCMS="";hacms=no],[-lm])
hacmsh=
lcms_h=
# and search for lcms.h, which may or may not be in an lcms/ subdir
AC_CHECK_HEADER(lcms.h, [hacmsh=yes],[hacmsh=no])
if test $hacmsh = no; then
AC_CHECK_HEADER(lcms/lcms.h, [hacmsh=yes],[hacmsh=no])
if test $hacmsh = yes; then
AC_DEFINE_UNQUOTED(CMS_INC, "lcms/lcms.h", [ColorManagementInclude])
lcms_h="lcms/lcms.h"
fi
else
AC_DEFINE_UNQUOTED(CMS_INC, "lcms.h", [ColorManagementInclude])
lcms_h="lcms.h"
fi
if test $hacmsh = no; then
# There's not much point finding -llcms if we can't find the header file...
hacms=no
fi
fi
dnl Attempt to check that lcms is new enough
if test $hacms = yes; then
AC_MSG_CHECKING(liblcms version > 1.1.2)
AC_TRY_COMPILE([
#include "$lcms_h"
],[
#if LCMS_VERSION < 112
#error liblcms is too old, need LittleCMS 1.1.2 or newer
#endif
], [], [hacms=pre112])
AC_MSG_RESULT($hacms)
fi
AC_SUBST(LIBLCMS)
if test $hacms = yes && test $hacmsh = yes; then
AC_DEFINE_UNQUOTED(HAVE_CMS, 1, [ColorManagement])
fi
dnl Checks for libtiff - library exists, tiffvers.h can be found, and new enough.
LIBTIFF=""
hastif=
dnl Check if we have libtiff
AC_CHECK_LIB(tiff, TIFFOpen, [LIBTIFF="-ltiff";hastif=yes],[LIBTIFF="";hastif=no],[-lm])
if test $hastif = yes; then
dnl Check for tiffvers.h
AC_CHECK_HEADER(tiffvers.h, [], [LIBTIFF="";hastif=no])
if test $hastif = yes; then
dnl Now attempt to check if libtiff is new enough
AC_MSG_CHECKING(libtiff version > 3.6.0)
AC_TRY_COMPILE([
#include "tiffvers.h"
],[
#if TIFFLIB_VERSION < 20031007
#error libtiff is too old, need libtiff 3.6.0 or newer.
#endif
], [], [LIBTIFF="";hastif=pre36])
AC_MSG_RESULT($hastif)
fi
fi
AC_SUBST(LIBTIFF)
if test $hastif = yes; then
AC_DEFINE_UNQUOTED(HAVE_TIFF, 1, [Tifflib])
fi
LIBDL2=""
AC_CHECK_LIB(c, dlopen, [LIBDL2="-lc"],[LIBDL2=""])
AC_SUBST(LIBDL2)
dnl generate the config header
AM_CONFIG_HEADER(config.h) dnl at the distribution this done
dnl Checks for programs.
AC_CHECK_COMPILERS
AC_ENABLE_SHARED(yes)
AC_ENABLE_STATIC(no)
KDE_PROG_LIBTOOL
hapython=yes
kde_python_link_found=no
KDE_CHECK_PYTHON(1.5)
COMPILE_PYTHON=no
AC_ARG_WITH(python, [ --without-python Do not compile the Scripter Plugin],[ COMPILE_PYTHON=no ],[ COMPILE_PYTHON=yes ])
if test $kde_python_link_found = no; then
COMPILE_PYTHON=no
fi
if test $kde_python_link_found = yes; then
AC_CHECK_HEADER(python2.3/Python.h, [foo=""],[hapython=no])
if test $hapython = yes; then
AC_DEFINE_UNQUOTED(HAVE_PYTHON_23, 1, [Python])
fi
fi
AM_CONDITIONAL(COMPILE_PYTHON, test x$COMPILE_PYTHON = xyes)
AC_ARG_ENABLE(cups, [ --disable-cups Do not compile support for CUPS printing],[disable_cups=yes])
LIBCUPS=""
hacups=no
if test "$disable_cups" != "yes" ; then
# Look for cups.h
AC_CHECK_HEADER(cups/cups.h, [hacups_h=yes],[hacups_h=no])
AC_CHECK_PROG(hacups_cfg, cups-config, yes, no)
echo "'$hacups_cfg' '$hacups_h'" >/tmp/cfg
if test "x$hacups_h" = "xyes" && test "x$hacups_cfg" = "xyes"; then
# We have the CUPS libs and headers, so enable
# the use of CUPS and tell the build where to
# find it.
LIBCUPS="`cups-config --libs`"
AC_DEFINE_UNQUOTED(HAVE_CUPS, 1, [Cups])
AC_SUBST(LIBCUPS)
hacups=yes
else
AC_MSG_WARN([libcups could not be found. Printing functionality will be limited.])
hacups=no
fi
else
hacups=no
fi
COMPILE_DEBUG=no
AC_ARG_ENABLE(debug, [ --enable-debug Enables debugging information (recommended for snapshots)],
[if test "x$enable_debug" = "xyes" || test "x$enable_debug" = "xfull"; then
COMPILE_DEBUG=yes
CXXFLAGS="$CXXFLAGS -g3 -fno-inline -O0 "
CFLAGS="$CFLAGS -g3 -fno-inline -O0 "
fi])
AM_CONDITIONAL(COMPILE_DEBUG, test x$COMPILE_DEBUG = xyes)
dnl Compile and link the gdk-pixbuf sources unless building
dnl a Mac-native build.
AM_CONDITIONAL(LINK_PIXBUF, test "$enable_mac" != "yes" )
build_mac_bundle=no
AC_ARG_ENABLE(bundle, [ --enable-bundle Make an executable suitable for use in a .app bundle (INCOMPLETE)],
[if test "$enable_bundle" = "yes"; then
build_mac_bundle=yes
AC_DEFINE_UNQUOTED(BUILD_MAC_BUNDLE, 1, [Are we building an executable to be included in MacOS/X .app bundle?])
fi])
AM_CONDITIONAL(BUILD_MAC_BUNDLE, test "$build_mac_bundle" = "yes")
dnl Some platforms require special libtool flags to build dynamically loadable
dnl modules or plugins correctly. While libtool should take care of this with
dnl a fixed set of arguments, in case we need to change it later this is being
dnl made a configure-time substitution.
MODULE_LINK_FLAGS=" -module "
AC_SUBST(MODULE_LINK_FLAGS)
all_libraries="$all_libraries $USER_LDFLAGS"
all_includes="$all_includes $USER_INCLUDES"
AC_SUBST(all_includes)
AC_SUBST(all_libraries)
AC_PATH_QT