X-Git-Url: https://git.tokkee.org/?a=blobdiff_plain;f=configure.ac;h=aaef9dda4ce56548c3490f1a190073fd49a448dc;hb=1a208a2a4f1a5193deb85f877e19ca2c9c824185;hp=eaa420af72a0e8f897f572cd80153f2ca7a63480;hpb=252718e90e039822c5883e0271f9fcfb5f7c8c80;p=inkscape.git diff --git a/configure.ac b/configure.ac index eaa420af7..aaef9dda4 100644 --- a/configure.ac +++ b/configure.ac @@ -1,14 +1,16 @@ dnl Process this file with autoconf to produce a configure script. -AC_PREREQ(2.50) +AC_PREREQ(2.53) + +# Always use 0.xx+devel instead of 0.xxdevel for the version, e.g. 0.46+devel. +# Rationale: (i) placate simple version comparison software such as +# `dpkg --compare-versions'. (ii) We don't always know what the next +# version is going to be called until about the time we release it +# (whereas we always know what the previous version was called). AC_INIT(inkscape, 0.46+devel) -dnl N.B. After 0.40, please change to `0.40+cvs' instead of `0.41cvs'. -dnl Rationale: (i) placate simple version comparison software such as -dnl `dpkg --compare-versions'. (ii) We don't always know what the next -dnl version is going to be called until about the time we release it -dnl (whereas we always know what the previous version was called). + AC_CANONICAL_HOST -AC_CONFIG_SRCDIR(src/main.cpp) +AC_CONFIG_SRCDIR([src/main.cpp]) AM_INIT_AUTOMAKE([dist-zip dist-bzip2 tar-pax]) AC_ARG_ENABLE([lsb], AS_HELP_STRING([--enable-lsb], [LSB-compatible build configuration]), [ @@ -21,14 +23,15 @@ AC_ARG_ENABLE([lsb], AS_HELP_STRING([--enable-lsb], [LSB-compatible build config AM_CONFIG_HEADER(config.h) -AC_PROG_INTLTOOL(0.22) - AC_LANG(C++) AC_ISC_POSIX AC_PROG_CXX AM_PROG_CC_STDC AM_PROG_AS +AC_PROG_RANLIB +AC_PROG_INTLTOOL(0.22) AC_HEADER_STDC +INK_SVN_SNAPSHOT_BUILD dnl These next few lines are needed only while libcroco is in our source tree. AC_PROG_CC @@ -94,8 +97,6 @@ fi dnl Honor aclocal flags ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS" -AC_PROG_RANLIB - dnl Verify our GCC version if test "x$GXX" = "xyes"; then AC_MSG_CHECKING([GNU compiler version]) @@ -140,6 +141,17 @@ dnl Find msgfmt. Without this, po/Makefile fails to set MSGFMT on some platform AC_PATH_PROG(MSGFMT, msgfmt, msgfmt) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) +dnl ****************************** +dnl Check for OpenMP +dnl Replace this with AC_OPENMP once Autoconf 2.62 is widespread +dnl ****************************** +AX_OPENMP([openmp_ok=yes],[openmp_ok=no]) +if test "x$openmp_ok" = "xyes"; then + dnl We have it, now set up the flags + CXXFLAGS="$CXXFLAGS $OPENMP_CXXFLAGS" + AC_CHECK_HEADER(omp.h) +fi + dnl ****************************** dnl Check for libpng dnl ****************************** @@ -192,7 +204,7 @@ AC_CHECK_HEADERS([gc.h gc/gc.h], break], [gc_ok=no], [$gc_libs]) break], [gc_ok=no]) -if test "x$gc_ok" = "xyes"; then +if test "x$gc_ok" = "xyes" && test "x$cross_compiling" = "xno" ; then AC_MSG_CHECKING([libgc version 6.4+]) AC_RUN_IFELSE( [AC_LANG_SOURCE([[ @@ -248,7 +260,7 @@ AC_MSG_CHECKING([for Win32 platform]) case "$host" in *-*-mingw*) platform_win32=yes - INKSCAPE_CFLAGS="$INKSCAPE_CFLAGS -mms-bitfields -DLIBXML_STATIC" + WIN32_CFLAGS="-mms-bitfields -DLIBXML_STATIC" ;; *) platform_win32=no @@ -256,20 +268,22 @@ case "$host" in esac AC_MSG_RESULT([$platform_win32]) AM_CONDITIONAL(PLATFORM_WIN32, test "$platform_win32" = "yes") +AC_SUBST(WIN32_CFLAGS) -AC_MSG_CHECKING([for Solaris 2.8 platform]) +AC_MSG_CHECKING([for Solaris platform]) case "$host" in - *-solaris2.8) - platform_solaris_2_8=yes - CFLAGS="$CFLAGS -DSOLARIS_2_8" - CXXFLAGS="$CXXFLAGS -DSOLARIS_2_8" + *-solaris2.*) + platform_solaris=yes + solaris_version=`echo $host|sed -e 's/^.*-solaris2\.//' -e s'/\..*$//'` + CFLAGS="$CFLAGS -DSOLARIS=$solaris_version" + CXXFLAGS="$CXXFLAGS -DSOLARIS=$solaris_version" ;; *) - platform_solaris_2_8=no + platform_solaris=no ;; esac -AC_MSG_RESULT([$platform_solaris_2_8]) -AM_CONDITIONAL(PLATFORM_SOLARIS_2_8, test "$platform_solaris_2_8" = "yes") +AC_MSG_RESULT([$platform_solaris]) +AM_CONDITIONAL(PLATFORM_SOLARIS, test "$platform_solaris" = "yes") dnl ****************************** dnl Xft checking @@ -281,10 +295,10 @@ AC_ARG_WITH(xft, if test "x$with_xft" != "xno" ; then dnl Test fontconfig package - PKG_CHECK_MODULES(XFT, xft, xft_ok=yes, xft_ok=no) + PKG_CHECK_MODULES(XFT, fontconfig, xft_ok=yes, xft_ok=no) if test "x$xft_ok" != "xyes"; then dnl test xft package - PKG_CHECK_MODULES(XFT, fontconfig, xft_ok=yes, xft_ok=no) + PKG_CHECK_MODULES(XFT, xft, xft_ok=yes, xft_ok=no) if test "x$xft_ok" != "xyes"; then dnl Have to test xft presence AC_CHECK_HEADER(X11/Xft/Xft.h, xft_ok=yes, xft_ok=no) @@ -550,6 +564,11 @@ fi AC_SUBST(POPPLER_CFLAGS) AC_SUBST(POPPLER_LIBS) +PKG_CHECK_MODULES(POPPLERNEW, poppler >= 0.8.3, popplernew=yes, popplernew=no) +if test "x$popplernew" = "xyes"; then + AC_DEFINE(POPPLER_NEW_GFXFONT, 1, [Poppler version of GfxFont to use (0.8.3 or higher versions of Poppler)]) +fi + dnl ****************************** dnl Inkboard dependency checking dnl ****************************** @@ -601,19 +620,25 @@ dnl ****************************** dnl Check for ImageMagick Magick++ dnl ****************************** -AC_CHECK_LIB(Magick++, InitializeMagick, [AC_CHECK_HEADER(Magick++.h, magick_ok=yes, magick_ok=no)], magick_ok=no, -llcms -lfreetype -ljpeg -lfontconfig -lXext -lSM -lICE -lX11 -lz -lpthread -lm -lpthread) - +PKG_CHECK_MODULES(IMAGEMAGICK, ImageMagick++, magick_ok=yes, magick_ok=no) if test "x$magick_ok" = "xyes"; then - AC_CHECK_PROG(MAGICKPP_CONFIG, Magick++-config, yes, no) - if test "x$MAGICKPP_CONFIG" = "xyes"; then - IMAGEMAGICK_LIBS=`Magick++-config --libs` - AC_SUBST(IMAGEMAGICK_LIBS) - AC_DEFINE(WITH_IMAGE_MAGICK,1,[Image Magick++ support for bitmap effects]) - fi + AC_DEFINE(WITH_IMAGE_MAGICK,1,[Image Magick++ support for bitmap effects]) fi - AM_CONDITIONAL(USE_IMAGE_MAGICK, test "x$magick_ok" = "xyes") +AC_SUBST(IMAGEMAGICK_LIBS) +AC_SUBST(IMAGEMAGICK_CFLAGS) + +dnl *********************************************************************************************************** +dnl Check for a Cairo version that implements user-fonts feature (with a stable API, that is cairo > 1.7.6), +dnl so that we conditionally add SVGFonts support +dnl *********************************************************************************************************** + +PKG_CHECK_MODULES(CAIRO_USER_FONTS, cairo > 1.7.6, cairouserfonts=yes, cairouserfonts=no) +if test "x$cairouserfonts" = "xyes"; then + AC_DEFINE(ENABLE_SVG_FONTS, 1, [SVG Fonts should be used]) +fi + dnl ****************************** dnl Unconditional dependencies dnl ****************************** @@ -624,7 +649,7 @@ if test $cc_vers_major -gt 3; then else min_sigc_version=2.0.11 fi -PKG_CHECK_MODULES(INKSCAPE, gdkmm-2.4 glibmm-2.4 gtkmm-2.4 >= 2.10.0 gtk+-2.0 libxml-2.0 >= 2.6.11 libxslt >= 1.0.15 cairo sigc++-2.0 >= $min_sigc_version $ink_spell_pkg gthread-2.0 >= 2.0 libpng >= 1.2) +PKG_CHECK_MODULES(INKSCAPE, gdkmm-2.4 glibmm-2.4 gtkmm-2.4 >= 2.10.0 gtk+-2.0 libxml-2.0 >= 2.6.11 libxslt >= 1.0.15 cairo sigc++-2.0 >= $min_sigc_version $ink_spell_pkg gthread-2.0 >= 2.0 libpng >= 1.2 gsl) # Check for Apple Mac OS X Carbon framework carbon_ok=no @@ -650,12 +675,27 @@ if test "x$cairo_pdf" = "xyes"; then fi dnl Shouldn't we test for libpng and libz? -INKSCAPE_LIBS="$INKSCAPE_LIBS -lpng -lz" +if test "x$openmp_ok" = "xyes"; then + INKSCAPE_LIBS="$INKSCAPE_LIBS -lpng -lz -lgomp" +else + INKSCAPE_LIBS="$INKSCAPE_LIBS -lpng -lz" +fi AC_CHECK_HEADER(popt.h, [INKSCAPE_LIBS="$INKSCAPE_LIBS -lpopt"], AC_MSG_ERROR([libpopt is required])) +dnl ************************** +dnl Check for aspell +dnl ****************************** +AC_CHECK_LIB(aspell, new_aspell_config, [AC_CHECK_HEADER(aspell.h, aspell_ok=yes, aspell_ok=no)], aspell_ok=no, -lz -lm) +if test "x$aspell_ok" = "xyes"; then + AC_DEFINE(HAVE_ASPELL, 1, [Use aspell for built-in spellchecker]) + INKSCAPE_LIBS="$INKSCAPE_LIBS -laspell" +else + AC_MSG_CHECKING([Aspell not found, spell checker will be disabled]) +fi + dnl Check for bind_textdomain_codeset, including -lintl if GLib brings it in. sp_save_LIBS=$LIBS LIBS="$LIBS $INKSCAPE_LIBS" @@ -809,8 +849,6 @@ if test "$GXX" = "yes"; then esac fi -AC_DEFINE(WITH_MODULES, 1, [Use experimental module support]) - dnl ****************************** dnl libinkscape dnl ****************************** @@ -878,33 +916,9 @@ fi AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes) -dnl Figure out where the datadir actually is -dnl http://autoconf-archive.cryp.to/ac_define_dir.html -prefix_NONE= -exec_prefix_NONE= -test "x$prefix" = xNONE && prefix_NONE=yes && prefix=$ac_default_prefix -test "x$exec_prefix" = xNONE && exec_prefix_NONE=yes && exec_prefix=$prefix -dnl In Autoconf 2.60, ${datadir} refers to ${datarootdir}, which in turn -dnl refers to ${prefix}. Thus we have to use `eval' twice. -eval runtime_datadir="${datadir}" -eval runtime_datadir="${runtime_datadir}" -test "$prefix_NONE" && prefix=NONE -test "$exec_prefix_NONE" && exec_prefix=NONE - -inkscape_sharedir="${runtime_datadir}/${PACKAGE_NAME}" - dnl Define our data paths for config.h -AC_SUBST(INKSCAPE_DATADIR) -AC_DEFINE_UNQUOTED([INKSCAPE_DATADIR], "${runtime_datadir}", - [Base data directory -- only path-prefix.h should use it!]) -AC_SUBST(PACKAGE_LOCALE_DIR) -AC_DEFINE_UNQUOTED([PACKAGE_LOCALE_DIR], "${runtime_datadir}/locale", - [Localization directory]) -AC_SUBST(INKSCAPE_LIBDIR) -AC_DEFINE_UNQUOTED([INKSCAPE_LIBDIR], "${prefix}/lib", - [Base library directory -- only path-prefix.h should use it!]) - -dnl Have to add module makefiles (lauris) +AC_DEFINE_DIR([INKSCAPE_DATADIR], [datadir], [Base data directory]) +AC_DEFINE_DIR([PACKAGE_LOCALE_DIR], [localedir], [Locatization directory]) AC_CONFIG_FILES([ Makefile @@ -921,6 +935,7 @@ src/extension/implementation/makefile src/extension/internal/makefile src/extension/makefile src/extension/script/makefile +src/filters/makefile src/helper/makefile src/inkjar/makefile src/io/makefile @@ -943,7 +958,6 @@ src/ui/dialog/makefile src/ui/makefile src/ui/view/makefile src/ui/widget/makefile -src/utest/makefile src/util/makefile src/widgets/makefile src/xml/makefile @@ -956,10 +970,17 @@ share/examples/Makefile share/extensions/Makefile share/extensions/alphabet_soup/Makefile share/extensions/Barcode/Makefile +share/extensions/Poly3DObjects/Makefile share/extensions/xaml2svg/Makefile +share/filters/Makefile share/fonts/Makefile share/gradients/Makefile share/icons/Makefile +share/icons/hicolor/Makefile +share/icons/hicolor/scalable/Makefile +share/icons/hicolor/scalable/actions/Makefile +share/icons/hicolor/scalable/places/Makefile +share/icons/hicolor/scalable/status/Makefile share/keys/Makefile share/markers/Makefile share/palettes/Makefile