diff options
author | Karl Berry <karl@freefriends.org> | 2006-08-24 21:19:46 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-08-24 21:19:46 +0000 |
commit | 9ff01d9320cfcd3a7309de56431b2fe981bd288c (patch) | |
tree | d857f7e7bd844672c8c67c351a4f7dd9dd289504 /Build/source/texk/dvipng/configure.ac | |
parent | e2cc8329f876fc8d761568fa2df397189e18a936 (diff) |
missed checkin
git-svn-id: svn://tug.org/texlive/trunk@2009 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/dvipng/configure.ac')
-rw-r--r-- | Build/source/texk/dvipng/configure.ac | 293 |
1 files changed, 293 insertions, 0 deletions
diff --git a/Build/source/texk/dvipng/configure.ac b/Build/source/texk/dvipng/configure.ac new file mode 100644 index 00000000000..bf04d46be1b --- /dev/null +++ b/Build/source/texk/dvipng/configure.ac @@ -0,0 +1,293 @@ +# configure.ac + +#************************************************************************ +# +# Part of the dvipng distribution +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, 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. +# +# Copyright (C) 2002-2006 Jan-Åke Larsson +# +#************************************************************************ + +# Process this file with autoconf to produce a configure script. +AC_INIT([dvipng], [1.8], [dvipng@nongnu.org]) +AC_CONFIG_SRCDIR([dvipng.c]) + +AC_ARG_ENABLE(debug, + AC_HELP_STRING([--disable-debug],[Compile without debug (-d) option]), + [ if test "$enableval" = yes ; then + AC_DEFINE(DEBUG, 1, [Define as 1 to get the debug (-d) option.]) + fi ], + [ enable_debug="yes"; + AC_DEFINE(DEBUG, 1, [Define as 1 to get the debug (-d) option.])]) +AC_ARG_ENABLE(timing, + AC_HELP_STRING([--enable-timing],[Output execution time of dvipng]), + [ if test "$enableval" = yes ; then + AC_DEFINE(TIMING, 1, [Define as 1 to get execution time output.]) + fi ]) +# Building inside teTeX or TeX Live? +AC_ARG_ENABLE(tetex-build, + AC_HELP_STRING([--enable-tetex-build],[build within teTeX/TeX Live]), + [ if test "$enableval" = yes ; then + AC_DEFINE(TETEX_BUILD, 1, [Define as 1 to build within teTeX/TeX Live.]) + fi ]) + +# Checks for programs. +AC_SET_MAKE +AC_PROG_CC +AC_PROG_INSTALL +AC_PROG_LN_S +AC_ARG_WITH(gs, + AC_HELP_STRING([--with-gs=/PATH/TO/gs],[Specify where GhostScript is located]), + [if test "x$withval" = xno ; then + GS=no + else + AC_PATH_PROG(GS,["$withval"]) + fi], + [AC_CHECK_PROG(GS,gs,gs) + if test -z "$GS"; then + GS="gs" + AC_MSG_WARN([Cannot find GhostScript in your PATH]) + fi +]) +AC_DEFINE_UNQUOTED(GS_PATH, "$GS", [Define as the path to GhostScript.]) +GS_WARN="" +AC_GS_HAS_DEVICE(pngalpha, + [GS_WARN="Your EPS inclusions will be cropped to the + boundingbox, and rendered on an opaque background. + Upgrade GhostScript to avoid this." + AC_GS_HAS_DEVICE(png16m, + [GS_WARN="Your EPS inclusions may not work. + Upgrade/install GhostScript to avoid this."])]) +if test -n "$GS_WARN"; then + AC_MSG_WARN([$GS_WARN]) +fi + +# Checks for libraries. +AC_CHECK_LIB(m, pow) +AC_CHECK_LIB(gen, basename) + +if test "x$enable_tetex_build" = xyes; then + # In teTeX and TeX Live, LDFLAGS is passed by texk/Makefile and + # reserved for the user. Therefore we need another variable for the + # loader flags to find the local kpathsea. We use dvipng_LDFLAGS. + dvipng_LDFLAGS= + AC_SUBST(dvipng_LDFLAGS) + + if test ! -d $srcdir/../../texk/kpathsea; then + AC_MSG_ERROR([ +--enable-tetex-build was specified, but the kpathsea +directory is not in in $srcdir/../../texk/kpathsea. + fi + + CPPFLAGS="$CPPFLAGS -I\$(top_builddir)/../../texk -I\$(top_srcdir)/../../texk" + dvipng_LDFLAGS="-L\$(top_builddir)/../../texk/kpathsea/.libs" + + # Get these libraries from the sources, too. +sinclude(../../libs/zlib/withenable.ac) +sinclude(../../libs/zlib/zlib.ac) +sinclude(../../libs/libpng/withenable.ac) +sinclude(../../libs/libpng/libpng.ac) +sinclude(../../libs/t1lib/withenable.ac) +sinclude(../../libs/t1lib/t1lib.ac) +sinclude(../../libs/gd/withenable.ac) +sinclude(../../libs/gd/gd.ac) +sinclude(../../libs/freetype2/withenable.ac) +sinclude(../../libs/freetype2/gd.ac) +sinclude(../kpathsea/withenable.ac) + AC_DEFINE(HAVE_KPATHSEA_KPATHSEA_H) + AC_DEFINE(HAVE_PNG_H) + + AC_DEFINE(HAVE_T1LIB_H) + ac_cv_lib_t1_T1_InitLib=yes + + AC_DEFINE(HAVE_FT2) + ac_have_freetype2=yes + PSFONTS_O="t1.o ft.o" + + AC_DEFINE(HAVE_GD_H) + ac_cv_func_gdImageCreateTrueColor=yes + ac_cv_func_gdImagePngEx=yes + ac_cv_func_gdImageGif=yes + + # tetex/tex live build; this always has kpathsea, xbasename, etc., + # as we're building from current sources. Do this stuff at the end so + # other configure tests don't try to link with kpathsea (which doesn't + # exist at configure time). + LIBS="-lkpathsea -lm $LIBS" + AC_MSG_NOTICE([tetex build enabled, LIBS now: $LIBS]) + +else + # normal standalone build, not within teTeX/TeX Live sources. +AC_CHECK_HEADERS([gd.h png.h kpathsea/kpathsea.h],, + [AC_MSG_ERROR([cannot find/use $ac_header])]) +AC_CHECK_HEADERS([t1lib.h]) +AC_CHECK_LIB(z, deflate) +AC_CHECK_LIB([gd], [gdImageCreate],, + [AC_MSG_ERROR([cannot find/use libgd +This drawing library can be downloaded at http://www.boutell.com/gd])]) +AC_CHECK_LIB([t1], [T1_InitLib]) +PSFONTS_O="" +if test "$ac_cv_lib_t1_T1_InitLib" = yes; then + PSFONTS_O="t1.o" +fi + +AC_CHECK_LIB([kpathsea], [kpse_set_progname],, + AC_MSG_ERROR([cannot find/use libkpathsea])) +AC_CHECK_LIB([png], [png_read_image],, + [AC_MSG_ERROR([cannot find/use libpng])]) +AC_CHECK_FT2(,[CFLAGS="$FT2_CFLAGS $CFLAGS" + LIBS="$FT2_LIBS $LIBS" + PSFONTS_O="$PSFONTS_O ft.o" + AC_DEFINE(HAVE_FT2, 1, [Define to 1 if you have freetype2]) + ac_have_freetype2="yes"], + [ac_have_freetype2="no"]) +AC_CHECK_FUNCS([gdImageCreateTrueColor gdImagePngEx gdImageGif FT_Library_Version]) +fi + +if test -n "$PSFONTS_O"; then + PSFONTS_O="$PSFONTS_O enc.o fontmap.o tfm.o" +fi +AC_SUBST(PSFONTS_O) + +# Checks for header files. +AC_HEADER_STDC +AC_HEADER_SYS_WAIT +AC_HEADER_TIME +AC_HEADER_STDBOOL +AC_CHECK_HEADERS([fcntl.h sys/time.h]) + +# Checks for typedefs, structures, and compiler characteristics. +AC_C_CONST +AC_TYPE_PID_T +AC_TYPE_SIZE_T +if test "$ac_cv_header_inttypes_h" = "yes"; then + # Sometimes we want to use gcc -ansi -pedantic as a portability test + # The typedef of int64_t is not in the system header file in that + # case. Then, #define int64_t as "long long", which is non-ansi, but + # is present in most modern compilers. Using a #define rather than a + # typedef can be a problem, but in dvipng int64_t is only used as + # typecast, and there are no problems. autoconf 2.13 equivalent: + # AC_CHECK_TYPE(int64_t, long long) + # AC_CHECK_TYPE(uint64_t, unsigned long long) + AC_CHECK_TYPE([int64_t],, + [AC_DEFINE_UNQUOTED([int64_t], [long long], + [Define to `long long' if + <inttypes.h> does not define it.])]) + AC_CHECK_TYPE([uint64_t],, + [AC_DEFINE_UNQUOTED([uint64_t], [unsigned long long], + [Define to `unsigned long long' if + <inttypes.h> does not define it.])]) +fi +AC_HAS_KPSE_ENC_FORMATS + + +# Checks for library functions. +AC_FUNC_ALLOCA +AC_FUNC_FORK +AC_FUNC_MALLOC +AC_FUNC_MMAP +AC_FUNC_STRTOD +AC_FUNC_VPRINTF +AC_CHECK_FUNCS([dup2 memset munmap pow putenv strchr strrchr strtol strstr]) +if test "$enable_timing" = "yes"; then + AC_CHECK_FUNCS([ftime gettimeofday]) +fi +if test "$ac_cv_func_gdImageGif" = "yes"; then + INSTALL_BIN_TARGET="install-dvigif" +else + INSTALL_BIN_TARGET="install-dvipng" +fi +AC_SUBST(INSTALL_BIN_TARGET) + +# Documentation-related checks +AC_PATH_PROG(MAKEINFO, makeinfo, :) +MAKEINFO_CHECK_MACROS(acronym env option) +AC_PATH_PROG(INSTALL_INFO, install-info, :, $PATH /usr/sbin /sbin) + +# SELFAUTO +AC_ARG_ENABLE(selfauto-set, + AC_HELP_STRING([--enable-selfauto-set], + [This option will make the final binary explicitly set the + $SELFAUTO... variables to make it look as dvipng is installed in the + main texmf tree, even if it isn't. This is necessary when texmf.cnf + uses $SELFAUTO... variables and dvipng is not installed in the texmf + tree. Otherwise, dvipng may not be able to find virtual fonts, or + psfonts.map.]), + [ if test "$enableval" = yes ; then + AC_MSG_CHECKING([for \$SELFAUTOLOC]) + SELFAUTOLOC=`kpsewhich -expand-var=\\\$SELFAUTOLOC` + AC_DEFINE_UNQUOTED(ENV_SELFAUTOLOC,["SELFAUTOLOC=$SELFAUTOLOC"], + [The environment setting for $SELFAUTOLOC]) + AC_MSG_RESULT([$SELFAUTOLOC]) + AC_MSG_CHECKING([for \$SELFAUTODIR]) + SELFAUTODIR=`kpsewhich -expand-var=\\\$SELFAUTODIR` + AC_DEFINE_UNQUOTED(ENV_SELFAUTODIR,["SELFAUTODIR=$SELFAUTODIR"], + [The environment setting for $SELFAUTODIR]) + AC_MSG_RESULT([$SELFAUTODIR]) + AC_MSG_CHECKING([for \$SELFAUTOPARENT]) + SELFAUTOPARENT=`kpsewhich -expand-var=\\\$SELFAUTOPARENT` + AC_DEFINE_UNQUOTED(ENV_SELFAUTOPARENT,["SELFAUTOPARENT=$SELFAUTOPARENT"], + [The environment setting for $SELFAUTOPARENT]) + AC_MSG_RESULT([$SELFAUTOPARENT]) + fi ], + [AC_MSG_CHECKING([for texmf.cnf]) + TEXMF_CNF=`kpsewhich texmf.cnf` + AC_MSG_RESULT([$TEXMF_CNF]) + AC_MSG_CHECKING([for psfonts.map]) + cp `which kpsewhich` . + PSFONTS_MAP=`./kpsewhich psfonts.map` + rm -f ./kpsewhich + if test -n "$PSFONTS_MAP"; then + AC_MSG_RESULT([$PSFONTS_MAP]) + else + AC_MSG_RESULT([not found from outside the texmf tree]) + AC_MSG_CHECKING([for \$SELFAUTO in texmf.cnf]) + if grep SELFAUTO "$TEXMF_CNF" > /dev/null 2> /dev/null; then + AC_MSG_RESULT([yes +*************************************************************** +texmf.cnf is using \$SELFAUTO... variables. If you are going to +install dvipng outside the texmf tree, you may need to use +--enable-selfauto-set, type ./configure --help for help. +***************************************************************]) + else + AC_MSG_RESULT([no]) + fi + fi]) + +AC_MSG_RESULT([ +** Configuration summary for $PACKAGE_STRING: + + The -d (debug) switch is enabled: $enable_debug + Your gd is new enough (>=2.0) to enable + the --truecolor switch, full alpha + transparency, proper rescaling of + included bitmaps, and jpeg inclusion: $ac_cv_func_gdImageCreateTrueColor + Your gd is new enough (>=2.0.12) to + enable transparent backgrounds for EPS + inclusion and the -z (compression) + switch: $ac_cv_func_gdImagePngEx + Your gd is new enough (>=2.0.28) to + enable gif inclusion and output + (dvigif): $ac_cv_func_gdImageGif + FreeType font rendering available: $ac_have_freetype2 + T1lib font rendering available: $ac_cv_lib_t1_T1_InitLib +]) + +AC_CONFIG_HEADER([config.h]) +AC_CONFIG_FILES([Makefile]) +AC_OUTPUT |