dnl $Id: configure.ac,v 1.128 2005/07/15 00:31:54 rlk Exp $ dnl Copyright (C) 2001-2004 Roger Leigh dnl dnl This program is free software; you can redistribute it and/or modify dnl it under the terms of the GNU General Public License as published by dnl the Free Software Foundation; either version 2, or (at your option) dnl any later version. dnl dnl This program is distributed in the hope that it will be useful, dnl but WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the dnl GNU General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with this program; if not, write to the Free Software dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. dnl Process this file with autoconf to produce a configure script. dnl MAKING RELEASES (a step-by-step guide!) dnl =============== dnl dnl Since the last release: dnl 1. if only source code (not the interface) has changed, set dnl GUTENPRINT_MICRO_VERSION += 1; dnl GUTENPRINT_INTERFACE_AGE += 1; dnl 2. if any functions have been added, removed, or changed, set dnl GUTENPRINT_INTERFACE_AGE = 0; dnl GUTENPRINT_CURRENT_INTERFACE += 1; dnl 3. if interfaces have been added, set dnl GUTENPRINT_BINARY_AGE += 1; dnl 4. if interfaces have been removed, set dnl GUTENPRINT_BINARY_AGE = 0; dnl dnl For more detailed information, see the libtool info documentation. dnl pushdef([GUTENPRINT_NAME], [gutenprint]) pushdef([GUTENPRINT_MAJOR_VERSION], [5]) pushdef([GUTENPRINT_MINOR_VERSION], [0]) pushdef([GUTENPRINT_MICRO_VERSION], [0]) pushdef([GUTENPRINT_EXTRA_VERSION], [-rc1]) pushdef([GUTENPRINT_CURRENT_INTERFACE], [2]) pushdef([GUTENPRINT_INTERFACE_AGE], [0]) pushdef([GUTENPRINT_BINARY_AGE], [0]) pushdef([GUTENPRINTUI_CURRENT_INTERFACE], [1]) pushdef([GUTENPRINTUI_INTERFACE_AGE], [0]) pushdef([GUTENPRINTUI_BINARY_AGE], [0]) pushdef([GUTENPRINTUI2_CURRENT_INTERFACE], [1]) pushdef([GUTENPRINTUI2_INTERFACE_AGE], [0]) pushdef([GUTENPRINTUI2_BINARY_AGE], [0]) pushdef([GUTENPRINT_VERSION], GUTENPRINT_MAJOR_VERSION.GUTENPRINT_MINOR_VERSION.GUTENPRINT_MICRO_VERSION[]GUTENPRINT_EXTRA_VERSION) AC_INIT(GUTENPRINT_NAME, GUTENPRINT_VERSION, [gimp-print-devel@lists.sourceforge.net]) AC_PREREQ(2.53) AC_REVISION($Revision: 1.128 $) AC_CONFIG_SRCDIR(src/main/print-vars.c) AC_CONFIG_AUX_DIR(scripts) STP_INIT AC_COPYRIGHT( [ Parts of this configure script come from the 'configure.ac' file, and are not based on freely-redistributable m4 macros; you can redistribute them and/or modify them under the terms of the GNU General Public as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ]) [GUTENPRINT_MAJOR_VERSION]=GUTENPRINT_MAJOR_VERSION [GUTENPRINT_MINOR_VERSION]=GUTENPRINT_MINOR_VERSION [GUTENPRINT_MICRO_VERSION]=GUTENPRINT_MICRO_VERSION [GUTENPRINT_EXTRA_VERSION]=GUTENPRINT_EXTRA_VERSION [GUTENPRINT_CURRENT_INTERFACE]=GUTENPRINT_CURRENT_INTERFACE [GUTENPRINT_INTERFACE_AGE]=GUTENPRINT_INTERFACE_AGE [GUTENPRINT_BINARY_AGE]=GUTENPRINT_BINARY_AGE [GUTENPRINT_VERSION]=GUTENPRINT_VERSION [GUTENPRINTUI_CURRENT_INTERFACE]=GUTENPRINTUI_CURRENT_INTERFACE [GUTENPRINTUI_INTERFACE_AGE]=GUTENPRINTUI_INTERFACE_AGE [GUTENPRINTUI_BINARY_AGE]=GUTENPRINTUI_BINARY_AGE [GUTENPRINTUI2_CURRENT_INTERFACE]=GUTENPRINTUI2_CURRENT_INTERFACE [GUTENPRINTUI2_INTERFACE_AGE]=GUTENPRINTUI2_INTERFACE_AGE [GUTENPRINTUI2_BINARY_AGE]=GUTENPRINTUI2_BINARY_AGE popdef([GUTENPRINT_MAJOR_VERSION]) popdef([GUTENPRINT_MINOR_VERSION]) popdef([GUTENPRINT_MICRO_VERSION]) popdef([GUTENPRINT_EXTRA_VERSION]) popdef([GUTENPRINT_CURRENT_INTERFACE]) popdef([GUTENPRINT_INTERFACE_AGE]) popdef([GUTENPRINT_BINARY_AGE]) popdef([GUTENPRINTUI_CURRENT_INTERFACE]) popdef([GUTENPRINTUI_INTERFACE_AGE]) popdef([GUTENPRINTUI_BINARY_AGE]) popdef([GUTENPRINTUI2_CURRENT_INTERFACE]) popdef([GUTENPRINTUI2_INTERFACE_AGE]) popdef([GUTENPRINTUI2_BINARY_AGE]) AC_SUBST([GUTENPRINT_MAJOR_VERSION]) AC_SUBST([GUTENPRINT_MINOR_VERSION]) AC_SUBST([GUTENPRINT_MICRO_VERSION]) AC_SUBST([GUTENPRINT_CURRENT_INTERFACE]) AC_SUBST([GUTENPRINT_INTERFACE_AGE]) AC_SUBST([GUTENPRINT_BINARY_AGE]) AC_SUBST([GUTENPRINT_VERSION]) AC_SUBST([GUTENPRINTUI_CURRENT_INTERFACE]) AC_SUBST([GUTENPRINTUI_INTERFACE_AGE]) AC_SUBST([GUTENPRINTUI_BINARY_AGE]) AC_SUBST([GUTENPRINTUI2_CURRENT_INTERFACE]) AC_SUBST([GUTENPRINTUI2_INTERFACE_AGE]) AC_SUBST([GUTENPRINTUI2_BINARY_AGE]) dnl Initialize automake stuff. AM_INIT_AUTOMAKE(GUTENPRINT_NAME, GUTENPRINT_VERSION) popdef([GUTENPRINT_NAME]) popdef([GUTENPRINT_VERSION]) dnl In the following script, there are a the following variants dnl of cflags and variables dnl dnl *_CFLAGS: cflags for compiling libraries and example progs dnl *_LIBS: libraries for linking programs. ONLY to be used dnl to generate ${gutenprint_libs} dnl *_LIBDEPS: libraries for linking libraries against dnl *_libdeps: library dependencies for pkg-config dnl *_cflags: cflags for pkg-config dnl *_libs: libs for pkg-config GUTENPRINT_LIBS="-lgutenprint" GUTENPRINTUI_LIBS="-lgutenprintui" GUTENPRINTUI2_LIBS="-lgutenprintui2" gutenprint_version=${GUTENPRINT_VERSION} gutenprintui_version=${GUTENPRINT_VERSION} gutenprintui2_version=${GUTENPRINT_VERSION} GUTENPRINTUI_LIBDEPS="${GUTENPRINTUI_LIBDEPS} \$(GUTENPRINT_LIBS)" GUTENPRINTUI2_LIBDEPS="${GUTENPRINTUI2_LIBDEPS} \$(GUTENPRINT_LIBS)" dnl Specify a configuration file. AM_CONFIG_HEADER([config.h]) dnl Available languages (translations) ALL_LINGUAS="cs da de el en_GB es fr ja nb nl pl pt sk sv" AC_SUBST(ALL_LINGUAS) dnl Set up libtool scripts. dnl Disable static library building to speed up the build AC_LIBTOOL_DLOPEN # We need static libraries for CUPS genppd program for now, for bug 865265 # --rlk 20031223 AC_ENABLE_STATIC(yes) #AC_DISABLE_SHARED AM_PROG_LIBTOOL AC_SUBST(LIBTOOL_DEPS) dnl define HAVE_GNU_LD if GNU ld is present if test "$ac_cv_prog_gnu_ld" = "yes" ; then AC_DEFINE(HAVE_GNU_LD,, [Define if GNU ld is present.]) fi dnl Set up maintainer mode AM_MAINTAINER_MODE if test x${USE_MAINTAINER_MODE} = xyes ; then MAINTAINER_MODE="true" BUILD_TEST="yes" AC_DEFINE(HAVE_MAINTAINER_MODE,, [Define if maintainer-mode is to be used.]) fi dnl Check canonical system/host (a kludge: replace me with something better). if test x${host_os} = xlinux-gnu ; then OSTYPE="linux" elif test "`echo ${host_os} | sed 's/^\(linux\).*$/\1/'`" = "linux" ; then OSTYPE="linux" elif test "`echo ${host_os} | sed 's/^\(irix\).*$/\1/'`" = "irix" ; then OSTYPE="irix" else OSTYPE="${host_os}" fi AC_DEFINE_UNQUOTED(OSTYPE, ["${OSTYPE}"], [The operating system to build for]) dnl Command line options. AC_PATH_PROG(CUPS_CONFIG, cups-config) if test -z "${CUPS_CONFIG}" ; then BUILD_CUPS="no" else BUILD_CUPS="yes" fi STP_ARG_WITH_DETAILED( [cups], [=PREFIX], [whether to build CUPS driver], [(default PREFIX=/usr)], [BUILD_CUPS], [(automatic)], [ yes) [BUILD_CUPS]="yes" ; AC_MSG_RESULT([yes]) ; cups_prefix="/usr" ;; no) [BUILD_CUPS]="no" ; AC_MSG_RESULT([no]) ; cups_prefix="/usr" ;; *) if test -d ${withval} ; then [BUILD_CUPS]="yes" AC_MSG_RESULT([yes (using specified prefix)]) cups_prefix="${withval}" else AC_MSG_RESULT([unknown]) AC_MSG_ERROR([${withval}: no such directory for --with-cups]) fi ;; ],[ cups_prefix="${prefix}" ]) BUILD_CUPS_PPDS="${BUILD_CUPS}" BUILD_TRANSLATED_CUPS_PPDS="${BUILD_CUPS}" STP_ARG_ENABLE([cups-ppds], [build CUPS PPD files], [BUILD_CUPS_PPDS], [(automatic)]) STP_ARG_ENABLE([translated-cups-ppds], [build translated CUPS PPD files], [BUILD_TRANSLATED_CUPS_PPDS], [yes]) USE_LEVEL3_PS=no if test -n "${CUPS_CONFIG}" -a "${BUILD_CUPS}" = "yes" ; then cups_version=`${CUPS_CONFIG} --version` dnl Quote to protect sed regexes [cups_major=`echo $cups_version | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\1/'`] [cups_minor=`echo $cups_version | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\2/'`] [cups_point=`echo $cups_version | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\3/'`] dnl There was no CUPS 1.0.15 or the like if test "$cups_major" -gt 1 -o "$cups_minor" -gt 1 -o "$cups_point" -gt 14 ; then USE_LEVEL3_PS=yes fi fi STP_ARG_ENABLE([cups-ppds-at-top-level], [place CUPS PPD files at top level], [CUPS_PPDS_AT_TOP_LEVEL], [no]) STP_ARG_ENABLE([cups-level3-ppds], [generate PostScript level 3 PPD files], [USE_LEVEL3_PS], [(automatic)]) STATIC_GENPPD="$enable_static" STP_ARG_ENABLE([static-genppd], [build a statically-linked cups-genppd and rastertogutenprint], [STATIC_GENPPD], [(automatic)]) AC_PATH_PROG(FOOMATIC_CONFIGURE, foomatic-configure) if test -z "${FOOMATIC_CONFIGURE}" ; then BUILD_FOOMATIC="no" else BUILD_FOOMATIC="yes" fi STP_ARG_WITH([foomatic], [build foomatic data files], [BUILD_FOOMATIC], [(automatic)]) AC_PATH_PROG(FOOMATIC_PPDFILE, foomatic-ppdfile) if test -z "${FOOMATIC_PPDFILE}" ; then BUILD_FOOMATIC_3="no" else BUILD_FOOMATIC_3="yes" fi STP_ARG_WITH([foomatic3], [make use of foomatic 3 extra features], [BUILD_FOOMATIC_3], [(automatic)]) AC_PATH_PROG(IJS_CONFIG, ijs-config) if test -z "${IJS_CONFIG}" ; then BUILD_GHOSTSCRIPT="no" else BUILD_GHOSTSCRIPT="yes" fi STP_ARG_WITH([ghostscript], [build Ghostscript driver], [BUILD_GHOSTSCRIPT], [(automatic)]) STP_ARG_WITH_DETAILED([modules], [], [enable loadable modules], [(options: ltdl, dlopen, static)], [WITH_MODULES], [(automatic)],[ yes) [WITH_MODULES]="yes"; AC_MSG_RESULT([yes]) ;; no) [WITH_MODULES]="no"; AC_MSG_RESULT([no]) ;; ltdl) [WITH_MODULES]="ltdl"; AC_MSG_RESULT([ltdl]) ;; dlopen) [WITH_MODULES]="dlopen"; AC_MSG_RESULT([dlopen]) ;; static) [WITH_MODULES]="static"; AC_MSG_RESULT([static]) ;; *) AC_MSG_ERROR([${withval}: not a valid module loader]) ;; ],[ # if static libraries are enabled, modules must be static if test x$enable_static = xyes; then [WITH_MODULES]="static" else [WITH_MODULES]="yes"] fi) # Abort if a broken configuration was required if test x$enable_static = xyes; then if test $WITH_MODULES = no; then : elif test $WITH_MODULES = static; then : else AC_MSG_ERROR([--disable-static must be used with --with-modules]) fi fi STP_ARG_ENABLE([debug], [turn on debugging in build], [ENABLE_DEBUG], [no]) STP_ARG_ENABLE([profile], [turn on profiling in build], [ENABLE_PROFILE], [no]) STP_ARG_WITH_DETAILED([readline], , [use readline], [(default tries -lncurses, -lcurses, -ltermcap)], [USE_READLINE], [yes],[ yes) [USE_READLINE]="yes" ; AC_MSG_RESULT([yes]) ;; no) [USE_READLINE]="no" ; AC_MSG_RESULT([no]) ;; only) [USE_READLINE]="yes" [EXTRA_LIBREADLINE_DEPS]=" " AC_MSG_RESULT([yes (using only readline)]) ;; *) [USE_READLINE]="yes" [EXTRA_LIBREADLINE_DEPS]="${withval}" AC_MSG_RESULT([yes (using extra libraries ${withval})]) ;; ]) dnl if test -z "${[EXTRA_LIBREADLINE_DEPS]}" ; then dnl [EXTRA_LIBREADLINE_DEPS]="" dnl fi AC_PATH_PROGS([GIMPTOOL_CHECK], [gimptool-1.2 gimptool]) if test -z "${GIMPTOOL_CHECK}" ; then BUILD_GIMP="no" else # Check we have version 1.2 gimptool_check_version=`${GIMPTOOL_CHECK} --version` dnl Quote to protect sed regexes [gimptool_check_major=`echo "$gimptool_check_version" | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\1/'`] [gimptool_check_minor=`echo "$gimptool_check_version" | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\2/'`] if test "$gimptool_check_major" -eq 1 -a "$gimptool_check_minor" -eq 2; then BUILD_GIMP="yes" else BUILD_GIMP="no" fi fi AM_PATH_GTK(1.2.0, BUILD_LIBGUTENPRINTUI="yes" GUTENPRINTUI_LIBDEPS="${GUTENPRINTUI_LIBDEPS} ${GTK_LIBS}", BUILD_LIBGUTENPRINTUI="no") STP_ARG_WITH([gimp], [build GIMP 1.2 Print plugin], [BUILD_GIMP], [(automatic)]) STP_ARG_ENABLE([libgutenprintui], [build Gutenprint GTK+-1.2 user interface library], [BUILD_LIBGUTENPRINTUI], [(automatic)]) AC_PATH_PROGS([GIMPTOOL2_CHECK], [gimptool-2.0 gimptool]) if test -z "${GIMPTOOL2_CHECK}" ; then BUILD_GIMP2="no" else # Check we have version 2.0 gimptool_check_version=`${GIMPTOOL2_CHECK} --version` dnl Quote to protect sed regexes [gimptool_check_major=`echo "$gimptool_check_version" | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\1/'`] [gimptool_check_minor=`echo "$gimptool_check_version" | sed -e 's/\([0-9][0-9]*\).\([0-9][0-9]*\).\([0-9][0-9]*\).*/\2/'`] if test "$gimptool_check_major" -eq 2; then BUILD_GIMP2="yes" else BUILD_GIMP2="no" fi fi PKG_CHECK_MODULES([GTK2], [gtk+-2.0], [HAVE_GTK2=yes BUILD_LIBGUTENPRINTUI2=yes GUTENPRINTUI2_LIBDEPS="${GUTENPRINTUI2_LIBDEPS} ${GTK2_LIBS}"], [HAVE_GTK2=no BUILD_LIBGUTENPRINTUI2=no]) # Require both gimptool and pkg-config to succeed if test x$BUILD_GIMP2 = xyes; then PKG_CHECK_MODULES([GIMP2], [gimpui-2.0], [BUILD_GIMP2=yes], [BUILD_GIMP2=no]) fi STP_ARG_WITH([gimp2], [build GIMP 2.0 Print plugin], [BUILD_GIMP2], [(automatic)]) STP_ARG_ENABLE([libgutenprintui2], [build Gutenprint GTK+-2.0 user interface library], [BUILD_LIBGUTENPRINTUI2], [(automatic)]) STP_ARG_ENABLE([samples], [install sample images], [INSTALL_SAMPLES], [yes]) STP_ARG_ENABLE([user-guide], [install user guide], [INSTALL_USER_GUIDE], [yes]) STP_ARG_ENABLE([escputil], [build escputil], [BUILD_ESCPUTIL], [yes]) STP_ARG_ENABLE([test], [build test programs], [BUILD_TEST], [yes]) if test "$BUILD_TEST" = "yes" ; then BUILD_TESTPATTERN="yes" else BUILD_TESTPATTERN="no" fi STP_ARG_ENABLE([testpattern], [build testpattern generator], [BUILD_TESTPATTERN], [(automatic)]) STP_ARG_ENABLE([user-install], [install GIMP plugin in home directory], [USER_INSTALL], [no]) if test x$USER_INSTALL = xyes ; then PLUG_IN_PATH="bin" else PLUG_IN_PATH="admin-bin" fi dnl aclocal flags. dnl AM_ACLOCAL_INCLUDE(m4 m4local) dnl Checks for programs. AC_ISC_POSIX AC_PROG_AWK AC_PROG_CC AM_PROG_CC_STDC AC_PROG_INSTALL AC_PROG_LN_S AM_PROG_LEX AC_PROG_YACC AC_PATH_PROG([FIND], [find]) AC_PATH_PROG([PERL], [perl]) AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums]) AC_PATH_PROG([CONVERT], [convert]) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${CONVERT} = x ; then AC_MSG_WARN([PostScript user's guide cannot be regenerated!]) fi fi AC_PATH_PROG(TEXI2HTML, texi2html) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${TEXI2HTML} = x ; then AC_MSG_WARN([HTML documentation cannot be regenerated!]) fi fi AC_PATH_PROG(DVIPS, dvips) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${DVIPS} = x ; then AC_MSG_WARN([PostScript documentation cannot be regenerated!]) fi fi AC_PATH_PROG(DB2PDF, db2pdf) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${DB2PDF} = x ; then AC_MSG_WARN([PDF user's guide cannot be regenerated!]) fi fi AC_PATH_PROGS(DVIPDF, dvipdf dvipdfm) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${DVIPDF} = x ; then AC_MSG_WARN([PDF documentation cannot be regenerated!]) fi fi AC_PATH_PROG(DB2PS, db2ps) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${DB2PS} = x ; then AC_MSG_WARN([PostScript user's guide cannot be regenerated!]) fi fi AC_PATH_PROG(DB2HTML, db2html) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${DB2HTML} = x ; then AC_MSG_WARN([HTML user's guide cannot be regenerated!]) fi fi AC_PATH_PROG(DOXYGEN, doxygen) if test x${USE_MAINTAINER_MODE} = xyes ; then if test x${DOXYGEN} = x ; then AC_MSG_WARN([HTML user's guide cannot be regenerated!]) fi fi dnl CUPS checks STP_CUPS_PROGS dnl foomatic checks if test x${BUILD_FOOMATIC} = xyes ; then PATH_SBIN=$PATH:/usr/sbin:/usr/local/sbin AC_PATH_PROG(FOOMATIC_KITLOAD, foomatic-kitload, , [$PATH_SBIN]) if test -z "$FOOMATIC_KITLOAD" ; then AC_MSG_WARN(Cannot find foomatic-kitload; attempt to install foomatic will fail) fi fi dnl ijs checks if test x${BUILD_GHOSTSCRIPT} = xyes ; then if test -z "$IJS_CONFIG" ; then AC_MSG_ERROR(Cannot find ijs-config; please ensure Ghostscript 6.53 or above is installed); fi IJS_CFLAGS=`$IJS_CONFIG --cflags` IJS_LIBS=`$IJS_CONFIG --libs` fi dnl GNU gettext checks. AM_GNU_GETTEXT_VERSION([0.11.5]) AM_GNU_GETTEXT([external]) GUTENPRINT_RELEASE_VERSION=${GUTENPRINT_MAJOR_VERSION}.${GUTENPRINT_MINOR_VERSION} AH_TEMPLATE(GUTENPRINT_RELEASE_VERSION,, [Gutenprint release version]) AC_DEFINE_UNQUOTED(GUTENPRINT_RELEASE_VERSION, "${GUTENPRINT_RELEASE_VERSION}") dnl Set PACKAGE_LOCALE_DIR in config.h AH_TEMPLATE(PACKAGE_LOCALE_DIR,, [Package locale directory]) if test "x${prefix}" = "xNONE"; then AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, ["${ac_default_prefix}/share/locale"]) else AC_DEFINE_UNQUOTED(PACKAGE_LOCALE_DIR, ["${prefix}/share/locale"]) fi dnl Set PACKAGE_DATA_DIR in config.h. AH_TEMPLATE(PACKAGE_DATA_DIR,, [Package data directory]) if test "x${datadir}" = 'x${prefix}/share'; then if test "x${prefix}" = "xNONE"; then PACKAGE_DATA_DIR="${ac_default_prefix}/share/${PACKAGE}" else PACKAGE_DATA_DIR="${prefix}/share/${PACKAGE}" fi else PACKAGE_DATA_DIR="${datadir}/${PACKAGE}" fi AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, "${PACKAGE_DATA_DIR}") dnl Set PACKAGE_LIB_DIR in config.h. AH_TEMPLATE(PACKAGE_LIB_DIR,, [Package lib directory]) if test "x${libdir}" = 'x${exec_prefix}/lib'; then if test "x${exec_prefix}" = "xNONE"; then if test "x${prefix}" = "xNONE"; then PACKAGE_LIB_DIR="${ac_default_prefix}/lib/${PACKAGE}" else PACKAGE_LIB_DIR="${prefix}/lib/${PACKAGE}" fi else PACKAGE_LIB_DIR="${exec_prefix}/lib/${PACKAGE}" fi else PACKAGE_LIB_DIR="${libdir}/${PACKAGE}" fi AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, "${PACKAGE_LIB_DIR}") AH_TEMPLATE(PKGXMLDATADIR,, [Package XML data directory]) PKGXMLDATADIR="${PACKAGE_DATA_DIR}/${PACKAGE_VERSION}/xml" AC_DEFINE_UNQUOTED(PKGXMLDATADIR, ["$PKGXMLDATADIR"], ) AH_TEMPLATE(PKGMODULEDIR,, [Package module directory]) PKGMODULEDIR="${PACKAGE_LIB_DIR}/${PACKAGE_VERSION}/modules" AC_DEFINE_UNQUOTED(PKGMODULEDIR, ["$PKGMODULEDIR"]) dnl Compiler flags if test x$ac_compiler_gnu = "xyes"; then STP_ADD_COMPILER_ARGS([-Wall -Wcast-align -Wstrict-prototypes -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wwrite-strings -Werror-implicit-function-declaration -Winline -finline-limit=1048576],, [GNUCFLAGS]) if test x${USE_MAINTAINER_MODE} = xyes ; then STP_ADD_COMPILER_ARGS([-pedantic -Waggregate-return -Wcast-qual -Wshadow -Wredundant-decls],, [GNUCFLAGS]) fi else if test x$ENABLE_DEBUG = xyes ; then STP_ADD_COMPILER_ARG([-g]) else STP_ADD_FIRST_COMPILER_ARG([-O6 -O3 -O2 -O1 -O]) fi fi if test x$ENABLE_PROFILE = xyes ; then STP_ADD_COMPILER_ARG([-pg]) fi AC_SUBST(GNUCFLAGS) dnl Checks for libraries. dnl When checking readline, check using extra libraries first. dnl We want to protect against the link somehow succeeding, but only dnl failing at runtime, as seems to happen on some BSD systems. AH_TEMPLATE(HAVE_LIBREADLINE, [Is libreadline present?]) if test "$USE_READLINE" = yes ; then if test "$EXTRA_LIBREADLINE_DEPS" = "" ; then unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, -lncurses) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline -lncurses" EXTRA_LIBREADLINE_DEPS=-lncurses AC_DEFINE(HAVE_LIBREADLINE, [1]) else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, -lcurses) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline -lcurses" EXTRA_LIBREADLINE_DEPS=-lcurses AC_DEFINE(HAVE_LIBREADLINE, [1]) else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, -ltermcap) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline -ltermcap" EXTRA_LIBREADLINE_DEPS=-ltermcap AC_DEFINE(HAVE_LIBREADLINE, [1]) else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false) if test x${HAVE_LIBREADLINE} = xtrue ; then AC_DEFINE(HAVE_LIBREADLINE, [1]) else AC_DEFINE(HAVE_LIBREADLINE, [0]) fi fi fi fi else unset ac_cv_lib_readline_readline AC_CHECK_LIB(readline, readline, HAVE_LIBREADLINE=true, HAVE_LIBREADLINE=false, ${EXTRA_LIBREADLINE_DEPS}) if test x${HAVE_LIBREADLINE} = xtrue ; then echo " Using -lreadline ${EXTRA_LIBREADLINE_DEPS}" AC_DEFINE(HAVE_LIBREADLINE, [1]) else AC_DEFINE(HAVE_LIBREADLINE, [0]) fi fi else HAVE_LIBREADLINE=false AC_DEFINE(HAVE_LIBREADLINE, [0]) fi dnl libltdl, used for dynamic module loading AC_CHECK_LIB(ltdl, lt_dlopen, [LTDL_LIBS="-lltdl"]) AC_CHECK_LIB(dl, dlopen, [DLOPEN_LIBS="-ldl"]) AC_CHECK_LIB(m,pow, GUTENPRINT_LIBDEPS="${GUTENPRINT_LIBDEPS} -lm" gutenprint_libdeps="${gutenprint_libdeps} -lm") STP_CUPS_LIBS if test x$BUILD_LEXMARKUTIL = xyes -o x$BUILD_GUTENPRINTUI = xyes ; then AM_PATH_GTK(1.2.0, , AC_MSG_ERROR(Cannot find GTK: Is gtk-config in path?)) fi STP_GIMP_LIBS STP_GIMP_PLUG_IN_DIR STP_GIMP2_LIBS dnl STP_GIMP2_PLUG_IN_DIR is obsolete dnl Checks for header files. AC_HEADER_STDC AC_CHECK_HEADERS(getopt.h) AC_CHECK_HEADER(readline/readline.h, HAVE_READLINE_READLINE_H=true, HAVE_READLINE_READLINE_H=false) if test x${HAVE_READLINE_READLINE_H} = xtrue ; then AC_DEFINE(HAVE_READLINE_READLINE_H,, [Define if libreadline header is present.]) if test x${HAVE_LIBREADLINE} = xtrue ; then LIBREADLINE_DEPS="-lreadline $EXTRA_LIBREADLINE_DEPS" fi fi AC_CHECK_HEADERS(dlfcn.h, [HAVE_DLFCN_H=true]) AC_CHECK_HEADERS(fcntl.h) AC_CHECK_HEADERS(limits.h) AC_CHECK_HEADERS(locale.h) AC_CHECK_HEADERS(ltdl.h, [HAVE_LTDL_H=true]) AC_CHECK_HEADERS(stdarg.h stdlib.h string.h) AC_CHECK_HEADERS(sys/time.h sys/types.h) AC_CHECK_HEADERS(time.h) AC_CHECK_HEADERS(unistd.h) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST AC_C_INLINE AC_TYPE_OFF_T AC_TYPE_SIZE_T AC_TYPE_SIGNAL dnl Checks for library functions. AC_CHECK_FUNCS([nanosleep poll usleep]) AC_CHECK_FUNC([getopt_long]) dnl Define what has to be built AM_CONDITIONAL(BUILD_FOOMATIC, test x${BUILD_FOOMATIC} = xyes) AM_CONDITIONAL(BUILD_FOOMATIC_3, test x${BUILD_FOOMATIC_3} = xyes) AM_CONDITIONAL(BUILD_GHOSTSCRIPT, test x${BUILD_GHOSTSCRIPT} = xyes) AM_CONDITIONAL(BUILD_CUPS, test x${BUILD_CUPS} = xyes) AM_CONDITIONAL(BUILD_CUPS_PPDS, test x${BUILD_CUPS_PPDS} = xyes) AM_CONDITIONAL(CUPS_PPDS_AT_TOP_LEVEL, test x${CUPS_PPDS_AT_TOP_LEVEL} = xyes) AM_CONDITIONAL(BUILD_TRANSLATED_CUPS_PPDS, test x${BUILD_TRANSLATED_CUPS_PPDS} = xyes) if test x${USE_LEVEL3_PS} = xno ; then CUPS_PPD_PS_LEVEL=2 else CUPS_PPD_PS_LEVEL=3 fi AM_CONDITIONAL(USE_LEVEL3_PS, test x${USE_LEVEL3_PS} = xyes) AM_CONDITIONAL(BUILD_ESCPUTIL, test x${BUILD_ESCPUTIL} = xyes) AM_CONDITIONAL(BUILD_TEST, test x${BUILD_TEST} = xyes) AM_CONDITIONAL(BUILD_TESTPATTERN, test x${BUILD_TESTPATTERN} = xyes) AM_CONDITIONAL(BUILD_LIBGUTENPRINTUI, test x${BUILD_LIBGUTENPRINTUI} = xyes) AM_CONDITIONAL(BUILD_LIBGUTENPRINTUI2, test x${BUILD_LIBGUTENPRINTUI2} = xyes) AM_CONDITIONAL(BUILD_GIMP, test x${BUILD_GIMP} = xyes) AM_CONDITIONAL(BUILD_GIMP2, test x${BUILD_GIMP2} = xyes) AM_CONDITIONAL(INSTALL_SAMPLES, test x${INSTALL_SAMPLES} = xyes) AM_CONDITIONAL(INSTALL_USER_GUIDE, test x${INSTALL_USER_GUIDE} = xyes) STP_CUPS_PATH AM_CONDITIONAL(USE_NLS, test x${USE_NLS} = xyes) # loadable modules # portable sh has no AND test... if test -n "$HAVE_LTDL_H"; then if test -n "$LTDL_LIBS"; then LTDL_POSSIBLE="true" fi fi if test -n "$HAVE_DLFCN_H"; then if test -n "$DLOPEN_LIBS"; then DLOPEN_POSSIBLE="true" fi fi # define what the user chose to build, if possible. # Prefer dlopen over ltdl. if test x$WITH_MODULES = xyes; then if test x$DLOPEN_POSSIBLE = xtrue; then USE_DLOPEN="true" elif test x$LDTL_POSSIBLE = xtrue; then USE_LTDL="true" fi elif test x$WITH_MODULES = xltdl; then if test x$LTDL_POSSIBLE = xtrue; then USE_LTDL="true" fi elif test x$WITH_MODULES = xdlopen; then if test x$DLOPEN_POSSIBLE = xtrue; then USE_DLOPEN="true" fi fi # define what module system is to be used AC_MSG_CHECKING([which module system will be used]) if test x$USE_LTDL = xtrue; then MODULE="true" AC_DEFINE(MODULE, "1", [Build a modular libgutenprint]) AC_DEFINE(USE_LTDL, "1", [Use GNU libltdl as module loader]) GUTENPRINT_LIBDEPS="${GUTENPRINT_LIBDEPS} ${LTDL_LIBS}" gutenprint_libdeps="${gutenprint_libdeps} ${LTDL_LIBS}" AC_MSG_RESULT([ltdl]) elif test x$USE_DLOPEN = xtrue; then MODULE="true" AC_DEFINE(MODULE, "1", [Build a modular libgutenprint]) AC_DEFINE(USE_DLOPEN, "1", [Use libdl/dlopen as module loader]) GUTENPRINT_LIBDEPS="${GUTENPRINT_LIBDEPS} ${DLOPEN_LIBS}" gutenprint_libdeps="${gutenprint_libdeps} ${DLOPEN_LIBS}" AC_MSG_RESULT([dlopen]) else MODULE="false" AC_MSG_RESULT([static]) fi AM_CONDITIONAL(BUILD_MODULES, test x$MODULE = xtrue) AM_CONDITIONAL(BUILD_GENPPD_STATIC, test x"$STATIC_GENPPD" = xyes) if test "$enable_static" = no -a "$BUILD_CUPS" = yes ; then AC_MSG_WARN([--enable-static is disabled, but CUPS is being built.]) AC_MSG_WARN([This may result in a *SILENTLY* incorrect build.]) AC_MSG_WARN([Please read the release notes carefully!]) fi dnl Define LTLIBOBJS AC_CONFIG_COMMANDS_PRE( [LTLIBOBJS=`echo "$LIB@&t@OBJS" | sed 's/\.o/.lo/g'` AC_SUBST(LTLIBOBJS) LTALLOCA=`echo "$ALLOCA" | sed 's/\.o/.lo/g'` AC_SUBST(LTALLOCA)]) dnl Definitions AC_DEFINE_UNQUOTED(CUPS_DATADIR, "${cups_conf_datadir}", [CUPS data directory.]) AH_TEMPLATE(CUPS_MODELDIR,, [CUPS PPD file directory]) if test "${CUPS_PPDS_AT_TOP_LEVEL}" = yes ; then AC_DEFINE_UNQUOTED(CUPS_MODELDIR, "${cups_conf_datadir}/model/") else AC_DEFINE_UNQUOTED(CUPS_MODELDIR, "${cups_conf_datadir}/model/${PACKAGE}/${GUTENPRINT_RELEASE_VERSION}/") fi AH_TEMPLATE(CUPS_PPD_NICKNAME_STRING,, [CUPS PPD Nickname string]) AC_DEFINE_UNQUOTED(CUPS_PPD_NICKNAME_STRING, [" - CUPS+Gutenprint v"]) AC_DEFINE_UNQUOTED(CUPS_PPD_PS_LEVEL, ${CUPS_PPD_PS_LEVEL}, [CUPS PPD PostScript level]) STP_RELEASE_DATE dnl Some versions of make get very grouchy about $(RM) RM='rm' dnl Substitutions AC_SUBST(cups_prefix) AC_SUBST(cups_exec_prefix) AC_SUBST(cups_bindir) AC_SUBST(cups_sbindir) AC_SUBST(cups_conf_datadir) AC_SUBST(cups_conf_serverbin) AC_SUBST(cups_conf_serverroot) AC_SUBST(CUPS_CFLAGS) AC_SUBST(CUPS_LIBS) AC_SUBST(CUPS_PPD_PS_LEVEL) AC_SUBST(FOOMATIC_KITLOAD) AC_SUBST(GENPPD_LIBS) AC_SUBST(IJS_CFLAGS) AC_SUBST(IJS_LIBS) AC_SUBST(RM) AC_SUBST(GIMP_CFLAGS) AC_SUBST(GIMP_LIBS) AC_SUBST(GIMP2_CFLAGS) AC_SUBST(GIMP2_LIBS) AC_SUBST(gimp_plug_indir) AC_SUBST(gimp2_plug_indir) AC_SUBST(GUTENPRINT_CFLAGS) AC_SUBST(GUTENPRINT_LIBS) AC_SUBST(GUTENPRINT_LIBDEPS) AC_SUBST(GUTENPRINT_VERSION) AC_SUBST(GUTENPRINTUI_CFLAGS) AC_SUBST(GUTENPRINTUI_LIBS) AC_SUBST(GUTENPRINTUI_LIBDEPS) AC_SUBST(GUTENPRINTUI_VERSION) AC_SUBST(GUTENPRINTUI2_CFLAGS) AC_SUBST(GUTENPRINTUI2_LIBS) AC_SUBST(GUTENPRINTUI2_LIBDEPS) AC_SUBST(GUTENPRINTUI2_VERSION) AC_SUBST(gutenprint_cflags) gutenprint_libs="${GUTENPRINT_LIBS} ${gutenprint_libdeps}" AC_SUBST(gutenprint_libs) AC_SUBST(gutenprintui_cflags) gutenprintui_libs="${GUTENPRINTUI_LIBS} ${gutenprintui_libdeps}" AC_SUBST(gutenprintui_libs) AC_SUBST(gutenprintui2_cflags) gutenprintui2_libs="${GUTENPRINTUI2_LIBS} ${gutenprintui2_libdeps}" AC_SUBST(gutenprintui2_libs) AC_SUBST(LIBREADLINE_DEPS) AC_SUBST(MAINTAINER_CFLAGS) AC_SUBST(PLUG_IN_PATH) dnl Output files AC_CONFIG_FILES([Makefile]) AC_CONFIG_FILES([doc/Makefile]) AC_CONFIG_FILES([doc/gutenprint.dox]) AC_CONFIG_FILES([doc/gutenprintui2.dox]) AC_CONFIG_FILES([doc/developer/Makefile]) AC_CONFIG_FILES([doc/users_guide/Makefile]) AC_CONFIG_FILES([include/Makefile]) AC_CONFIG_FILES([include/gutenprint/Makefile]) AC_CONFIG_FILES([include/gutenprintui/Makefile]) AC_CONFIG_FILES([include/gutenprintui2/Makefile]) AC_CONFIG_FILES([include/gutenprint/gutenprint-version.h]) AC_CONFIG_FILES([man/Makefile]) AC_CONFIG_FILES([man/cups-calibrate.8]) AC_CONFIG_FILES([man/cups-genppd.8]) AC_CONFIG_FILES([man/cups-genppdconfig.8]) AC_CONFIG_FILES([man/cups-genppdupdate.8]) AC_CONFIG_FILES([man/escputil.1]) AC_CONFIG_FILES([man/ijsgutenprint.1]) AC_CONFIG_FILES([po/Makefile.in]) AC_CONFIG_FILES([samples/Makefile]) AC_CONFIG_FILES([src/Makefile]) AC_CONFIG_FILES([src/cups/Makefile]) AC_CONFIG_FILES([src/cups/cups-genppdconfig], [chmod +x src/cups/cups-genppdconfig; mv src/cups/cups-genppdconfig src/cups/cups-genppdconfig.${GUTENPRINT_RELEASE_VERSION}]) AC_CONFIG_FILES([src/cups/cups-genppdupdate], [chmod +x src/cups/cups-genppdupdate; mv src/cups/cups-genppdupdate src/cups/cups-genppdupdate.${GUTENPRINT_RELEASE_VERSION}]) AC_CONFIG_FILES([src/escputil/Makefile]) AC_CONFIG_FILES([src/foomatic/Makefile]) AC_CONFIG_FILES([src/foomatic/foomatic-generator], [chmod +x src/foomatic/foomatic-generator]) AC_CONFIG_FILES([src/foomatic/mk_printerlist], [chmod +x src/foomatic/mk_printerlist]) AC_CONFIG_FILES([src/ghost/Makefile]) AC_CONFIG_FILES([src/testpattern/Makefile]) AC_CONFIG_FILES([src/gimp/Makefile]) AC_CONFIG_FILES([src/gimp2/Makefile]) AC_CONFIG_FILES([src/main/Makefile]) AC_CONFIG_FILES([src/main/gutenprint.pc]) AC_CONFIG_FILES([src/gutenprintui/Makefile]) AC_CONFIG_FILES([src/gutenprintui/gutenprintui.pc]) AC_CONFIG_FILES([src/gutenprintui2/Makefile]) AC_CONFIG_FILES([src/gutenprintui2/gutenprintui2.pc]) AC_CONFIG_FILES([cups-gutenprint.list]) AC_CONFIG_FILES([test/Makefile]) AC_CONFIG_FILES([scripts/Makefile]) AC_CONFIG_COMMANDS([default], [ echo "Finished configuring." echo "Type 'make' to build the package" echo "then 'make install' to install it." ], [GUTENPRINT_RELEASE_VERSION=${GUTENPRINT_RELEASE_VERSION}] ) AC_OUTPUT