summaryrefslogtreecommitdiff
path: root/Build/source/texk/lcdf-typetools/configure.ac
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2008-05-04 22:49:23 +0000
committerKarl Berry <karl@freefriends.org>2008-05-04 22:49:23 +0000
commit704a83857729bdf1546dfc8a61775587105ddaf8 (patch)
treee66e13f28e68de2d903d2cf6eaea7ac747fa2766 /Build/source/texk/lcdf-typetools/configure.ac
parenta21cea774cf2565cd734a49359f7e3dc3bd0179b (diff)
missed commit of new file
git-svn-id: svn://tug.org/texlive/trunk@7851 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/lcdf-typetools/configure.ac')
-rw-r--r--Build/source/texk/lcdf-typetools/configure.ac484
1 files changed, 484 insertions, 0 deletions
diff --git a/Build/source/texk/lcdf-typetools/configure.ac b/Build/source/texk/lcdf-typetools/configure.ac
new file mode 100644
index 00000000000..8abb3e8764e
--- /dev/null
+++ b/Build/source/texk/lcdf-typetools/configure.ac
@@ -0,0 +1,484 @@
+dnl Process this file with autoconf to produce a configure script.
+AC_INIT(NEWS)
+AM_INIT_AUTOMAKE(lcdf-typetools, 2.68)
+AM_CONFIG_HEADER(config.h)
+AM_MAINTAINER_MODE
+
+AC_PROG_MAKE_SET
+
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_CXX
+AC_PROG_CXXCPP
+if test -n "$GCC" ; then CC="$CC -W -Wall" ; CXX="$CXX -W -Wall" ; fi
+
+dnl AN_MAKEVAR([AR], [AC_PROG_AR])
+dnl AN_PROGRAM([ar], [AC_PROG_AR])
+dnl AC_DEFUN([AC_PROG_AR], [AC_CHECK_TOOL(AR, ar, :)])
+dnl AC_PROG_AR
+
+AC_PROG_RANLIB
+
+
+dnl Available from the GNU Autoconf Macro Archive at:
+dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_template_objs.html
+dnl
+AC_DEFUN([AC_CXX_TEMPLATE_OBJS],
+[AC_CACHE_CHECK(where template objects are stored, ac_cv_cxx_templobjs,
+ [ ac_cv_cxx_templobjs='unknown'
+ if test "$GXX" = yes; then
+ ac_cv_cxx_templobjs='nowhere'
+ else
+ case $CXX in
+ CC|*/CC)
+ cat > conftest.cc <<EOF
+template<class T> class A { public : A () {} };
+template<class T> void f (const A<T>&) {}
+main()
+{ A<double> d;
+ A<int> i;
+ f (d);
+ f (i);
+ return 0;
+}
+EOF
+ if test "$ac_cv_cxx_templobjs" = 'unknown' ; then
+ if test -d Templates.DB ; then
+ rm -fr Templates.DB
+ fi
+ if $CXX $CXXFLAGS -ptr. -c conftest.cc 1> /dev/null 2>&1; then
+ if test -d Templates.DB ; then
+# this should be Sun CC <= 4.2
+ CXXFLAGS="$CXXFLAGS -ptr."
+ if test x"$LIBTOOL" = x ; then
+ ac_cv_cxx_templobjs='Templates.DB/*.o'
+ else
+ ac_cv_cxx_templobjs='Templates.DB/*.lo'
+ fi
+ rm -fr Templates.DB
+ fi
+ fi
+ fi
+ if test "$ac_cv_cxx_templobjs" = 'unknown' ; then
+ if test -d SunWS_cache ; then
+ rm -fr SunWS_cache
+ fi
+ if $CXX $CXXFLAGS -c conftest.cc 1> /dev/null 2>&1; then
+ if test -d SunWS_cache ; then
+# this should be Sun WorkShop C++ compiler 5.x
+# or Sun Forte C++ compiler >= 6.x
+ if test x"$LIBTOOL" = x ; then
+ ac_cv_cxx_templobjs='SunWS_cache/*/*.o'
+ else
+ ac_cv_cxx_templobjs='SunWS_cache/*/*.lo'
+ fi
+ rm -fr SunWS_cache
+ fi
+ fi
+ fi
+ rm -f conftest* ;;
+ esac
+ fi
+ case "x$ac_cv_cxx_templobjs" in
+ xunknown|xnowhere)
+ TEMPLATE_OBJS="" ;;
+ *)
+ TEMPLATE_OBJS="$ac_cv_cxx_templobjs" ;;
+ esac
+ AC_SUBST(TEMPLATE_OBJS)])])
+
+AC_CXX_TEMPLATE_OBJS
+
+
+dnl
+dnl directory searching
+dnl
+
+AC_HEADER_DIRENT
+
+
+dnl
+dnl select programs to be compiled
+dnl
+
+AC_ARG_ENABLE(cfftot1, [ --disable-cfftot1 do not build the cfftot1 program], :, enable_cfftot1=yes)
+AC_ARG_ENABLE(mmafm, [ --disable-mmafm do not build the mmafm program], :, enable_mmafm=yes)
+AC_ARG_ENABLE(mmpfb, [ --disable-mmpfb do not build the mmpfb program], :, enable_mmpfb=yes)
+AC_ARG_ENABLE(otfinfo, [ --disable-otfinfo do not build the otfinfo program], :, enable_otfinfo=yes)
+AC_ARG_ENABLE(otftotfm, [ --disable-otftotfm do not build the otftotfm program], :, enable_otftotfm=yes)
+AC_ARG_ENABLE(t1lint, [ --disable-t1dotlessj do not build the t1dotlessj program], :, enable_t1dotlessj=yes)
+AC_ARG_ENABLE(t1lint, [ --disable-t1lint do not build the t1lint program], :, enable_t1lint=yes)
+AC_ARG_ENABLE(t1reencode, [ --disable-t1reencode do not build the t1reencode program], :, enable_t1reencode=yes)
+AC_ARG_ENABLE(t1testpage, [ --disable-t1testpage do not build the t1testpage program], :, enable_t1testpage=yes)
+AC_ARG_ENABLE(ttftotype42, [ --disable-ttftotype42 do not build the ttftotype42 program], :, enable_ttftotype42=yes)
+
+SELECTED_SUBDIRS=''
+for i in cfftot1 mmafm mmpfb otfinfo otftotfm t1dotlessj t1lint t1reencode t1testpage ttftotype42; do
+ y=`eval 'echo $enable_'"$i"`
+ if test "x$y" != xno; then SELECTED_SUBDIRS="$SELECTED_SUBDIRS $i"; fi
+done
+AC_SUBST(SELECTED_SUBDIRS)
+
+
+dnl
+dnl kpathsea, auto-cfftot1
+dnl
+
+AC_ARG_ENABLE(tetex-build, [ --enable-tetex-build build as part of a teTeX installation], :, enable_tetex_build=no)
+AC_ARG_WITH(kpathsea, [ --with-kpathsea=PREFIX Kpathsea is installed (under PREFIX)],
+ [kpathsea=$withval], [kpathsea=])
+
+if test "x$kpathsea" = xno; then
+ KPSEINTERFACE_O=
+ LIBKPATHSEA=
+else
+ if test "x$enable_tetex_build" = xyes; then
+ if test ! -d $srcdir/../../texk/kpathsea; then
+ AC_MSG_ERROR([
+=========================================
+
+You specified --enable-tetex-build, but I can't find the kpathsea
+directory. I expected it to be in $srcdir/../../texk/kpathsea.
+
+=========================================])
+ fi
+ CPPFLAGS="$CPPFLAGS -I\$(top_builddir)/../../texk -I\$(top_srcdir)/../../texk"
+ LDFLAGS="$LDFLAGS -L\$(top_builddir)/../../texk/kpathsea/.libs"
+ AC_MSG_NOTICE([tetex build of lcdf-typetools, CPPFLAGS now: $CPPFLAGS])
+ elif test "x$kpathsea" != x -a "x$kpathsea" != xyes; then
+ CPPFLAGS="$CPPFLAGS -I$kpathsea/include"
+ LDFLAGS="$LDFLAGS -L$kpathsea/lib"
+ else
+ kpathsea=yes
+ fi
+
+ dnl check for kpathsea/kpathsea.h
+ if test "x$enable_tetex_build" = xyes; then
+ kpse_header=yes
+ else
+ AC_CHECK_HEADER(kpathsea/kpathsea.h, [kpse_header=yes], [kpse_header=no])
+ fi
+
+ dnl if not found and kpathsea prefix not set, check /usr/local
+ if test "x$kpse_header" != xyes -a "x$kpathsea" = xyes -a -r /usr/local/include/kpathsea/tex-file.h; then
+ CPPFLAGS="$CPPFLAGS -I/usr/local/include"
+ LDFLAGS="$LDFLAGS -L/usr/local/lib"
+ AC_CHECK_HEADER(kpathsea/tex-file.h, [kpse_header=yes], [kpse_header=no])
+ fi
+
+ dnl check for -lkpathsea
+ if test "x$enable_tetex_build" = xyes; then
+ kpse_library=yes
+ else
+ AC_CHECK_LIB(kpathsea, kpse_set_program_name, [kpse_library=yes], [kpse_library=no])
+ fi
+
+ dnl bail out if not found
+ if test "x$kpse_header" != xyes -o "x$kpse_library" != xyes; then
+ AC_MSG_ERROR([
+=========================================
+
+I can't find the kpathsea library and/or header files. Tell me where to look
+using the --with-kpathsea=PREFIX option (header files should be under
+PREFIX/include/kpathsea, and library under PREFIX/lib), or disable support
+using --without-kpathsea.
+
+=========================================])
+ fi
+
+ dnl OK, found
+ AC_DEFINE(HAVE_KPATHSEA, 1, [Define if you want to use kpathsea.])
+ KPSEINTERFACE_O='kpseinterface.$(OBJEXT)'
+ if test "x$enable_tetex_build" = xyes; then
+ LIBKPATHSEA='$(top_builddir)/../../texk/kpathsea/.libs/libkpathsea.a'
+ LIBKPATHSEA_DEP="$LIBKPATHSEA"
+ else
+ LIBKPATHSEA='-lkpathsea'
+ LIBKPATHSEA_DEP=''
+ fi
+
+ dnl does it have opentype support?
+ if test "x$enable_tetex_build" = xyes; then
+ AC_DEFINE(HAVE_DECL_KPSE_OPENTYPE_FORMAT)
+ else
+ AC_CHECK_DECLS(kpse_opentype_format, :, :, [#include <kpathsea/kpathsea.h>])
+ fi
+fi
+AC_SUBST([KPSEINTERFACE_O])
+AC_SUBST([LIBKPATHSEA])
+AC_SUBST([LIBKPATHSEA_DEP])
+
+AC_ARG_ENABLE(selfauto-set, [ --disable-selfauto-set disable setting SELFAUTO variables from kpsewhich], :, enable_selfauto_set=yes)
+
+if test "x$enable_selfauto_set" = xyes -a "x$kpathsea" != xno -a "x$enable_tetex_build" != xyes; then
+ kpsewhich='kpsewhich'
+ test "x$kpathsea" != xyes -a -x "$kpathsea/bin/kpsewhich" && kpsewhich="$kpathsea/bin/kpsewhich"
+ SELFAUTOLOC=`$kpsewhich --expand-var='$SELFAUTOLOC' 2>/dev/null`
+ SELFAUTODIR=`$kpsewhich --expand-var='$SELFAUTODIR' 2>/dev/null`
+ SELFAUTOPARENT=`$kpsewhich --expand-var='$SELFAUTOPARENT' 2>/dev/null`
+ if test -z "$SELFAUTODIR"; then
+ AC_MSG_WARN([
+=========================================
+
+Could not extract SELFAUTO variables from $kpsewhich.
+Either supply the correct PREFIX to --with-kpathsea, or supply
+--disable-selfauto-loc.
+
+=========================================])
+ fi
+ AC_DEFINE_UNQUOTED(SELFAUTOLOC, "$SELFAUTOLOC", [kpsewhich's $SELFAUTOLOC variable])
+ AC_DEFINE_UNQUOTED(SELFAUTODIR, "$SELFAUTODIR", [kpsewhich's $SELFAUTODIR variable])
+ AC_DEFINE_UNQUOTED(SELFAUTOPARENT, "$SELFAUTOPARENT", [kpsewhich's $SELFAUTOPARENT variable])
+fi
+
+AC_ARG_ENABLE(auto-cfftot1, [ --disable-auto-cfftot1 disable running cfftot1 from otftotfm], :, enable_auto_cfftot1=yes)
+AC_ARG_ENABLE(auto-t1dotlessj, [ --disable-auto-t1dotlessj disable running t1dotlessj from otftotfm], :, enable_auto_t1dotlessj=yes)
+AC_ARG_ENABLE(auto-updmap, [ --disable-auto-updmap disable running updmap from otftotfm], :, enable_auto_updmap=yes)
+
+if test "x$enable_auto_cfftot1" = xyes; then
+ AC_DEFINE(HAVE_AUTO_CFFTOT1, 1, [Define to run cfftot1 automatically from otftotfm.])
+fi
+if test "x$enable_auto_t1dotlessj" = xyes; then
+ AC_DEFINE(HAVE_AUTO_T1DOTLESSJ, 1, [Define to run t1dotlessj automatically from otftotfm.])
+fi
+if test "x$enable_auto_updmap" = xyes; then
+ AC_DEFINE(HAVE_AUTO_UPDMAP, 1, [Define to run system updmap automatically from otftotfm.])
+fi
+
+
+dnl
+dnl <new> and/or <new.h>
+dnl
+
+AC_LANG_CPLUSPLUS
+AC_CACHE_CHECK([whether <new> works], ac_cv_good_new_hdr,
+[AC_TRY_LINK([#include <new>], [
+ int a;
+ int *b = new(&a) int;
+ return 0;
+], ac_cv_good_new_hdr=yes, ac_cv_good_new_hdr=no)])
+if test "$ac_cv_good_new_hdr" = yes; then
+ AC_DEFINE(HAVE_NEW_HDR, 1, [Define if <new> exists and works.])
+fi
+AC_CHECK_HEADERS(new.h)
+
+
+dnl
+dnl functions such as strerror, working strtod, strtoul, time
+dnl headers such as unistd.h
+dnl
+
+AC_LANG_C
+FIXLIBC_O=''
+AC_CHECK_FUNCS(strerror, :, FIXLIBC_O='fixlibc.o')
+
+AC_CACHE_CHECK(whether strtod works, ac_cv_working_strtod,
+[AC_TRY_RUN([#include <stdio.h>
+#include <stdlib.h>
+int main(int c, char **v) {
+ char s[] = "12 ";
+ char *endp;
+ double d = strtod(s, &endp);
+ exit(*endp == 0 ? 1 : 0);
+}], ac_cv_working_strtod=yes, ac_cv_working_strtod=no,
+ac_cv_working_strtod=yes)])
+if test $ac_cv_working_strtod = no; then
+ FIXLIBC_O='fixlibc.o'
+ AC_DEFINE(BROKEN_STRTOD, 1, [Define if strtod is broken.])
+fi
+
+AC_CHECK_FUNCS(strtoul ctime mkstemp ftruncate sigaction waitpid)
+AC_CHECK_FUNC(floor, :, [AC_CHECK_LIB(m, floor)])
+AC_CHECK_FUNC(fabs, :, [AC_CHECK_LIB(m, fabs)])
+AC_CHECK_HEADERS(unistd.h fcntl.h sys/time.h sys/wait.h)
+
+AC_SUBST(FIXLIBC_O)
+
+
+dnl
+dnl integer types
+dnl
+
+AC_CHECK_HEADERS(inttypes.h, have_inttypes_h=yes, have_inttypes_h=no)
+AC_CHECK_HEADERS(sys/types.h, have_sys_types_h=yes, have_sys_types_h=no)
+
+if test $have_inttypes_h = no -a $have_sys_types_h = yes; then
+ AC_CACHE_CHECK([for uintXX_t typedefs], ac_cv_uint_t,
+ [AC_EGREP_HEADER(dnl
+changequote(<<,>>)<<(^|[^a-zA-Z_0-9])uint32_t[^a-zA-Z_0-9]>>changequote([,]),
+ sys/types.h, ac_cv_uint_t=yes, ac_cv_uint_t=no)])
+fi
+if test $have_inttypes_h = no -a $have_sys_types_h = yes -a "$ac_cv_uint_t" = no; then
+ AC_CACHE_CHECK([for u_intXX_t typedefs], ac_cv_u_int_t,
+ [AC_EGREP_HEADER(dnl
+changequote(<<,>>)<<(^|[^a-zA-Z_0-9])u_int32_t[^a-zA-Z_0-9]>>changequote([,]),
+ sys/types.h, ac_cv_u_int_t=yes, ac_cv_u_int_t=no)])
+fi
+if test $have_inttypes_h = yes -o "$ac_cv_uint_t" = yes; then
+ :
+elif test "$ac_cv_u_int_t" = yes; then
+ AC_DEFINE(HAVE_U_INT_TYPES, 1, [Define if you have u_intXX_t types but not uintXX_t types.])
+else
+ AC_MSG_WARN([
+=========================================
+
+Neither uint32_t nor u_int32_t defined by <inttypes.h> or <sys/types.h>!
+Assuming "short" has 16 bits and "int" has 32 bits.
+
+=========================================])
+ AC_DEFINE(HAVE_FAKE_INT_TYPES, 1, [Define if intXX_t types are not available.])
+fi
+
+AC_CHECK_TYPES(uintptr_t, [], [],
+[#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#endif
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+])
+
+AC_CHECK_SIZEOF(void *)
+AC_CHECK_SIZEOF(unsigned long)
+AC_CHECK_SIZEOF(unsigned int)
+
+
+dnl
+dnl ntohs, ntohl (need them in C++ code)
+dnl
+
+AC_LANG_CPLUSPLUS
+AC_CHECK_HEADERS(byteorder.h netinet/in.h sys/param.h)
+AC_MSG_CHECKING([whether ntohs and ntohl are defined])
+ac_ntoh_defined=no
+AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#if HAVE_BYTEORDER_H
+# include <byteorder.h>
+#elif HAVE_NETINET_IN_H
+# include <netinet/in.h>
+#elif HAVE_SYS_PARAM_H
+# include <sys/param.h>
+#endif
+]], [[(void) ntohs(0x0020), (void) ntohl(0x03040020);]])],
+ [AC_MSG_RESULT(yes)
+ac_ntoh_defined=yes],
+ [AC_MSG_RESULT(no)])
+if test $ac_ntoh_defined = no; then
+ AC_CHECK_HEADERS([arpa/inet.h], [have_arpa_inet_h=yes], [have_arpa_inet_h=no])
+ if test $have_arpa_inet_h = yes; then
+ AC_MSG_CHECKING([whether ntohs and ntohl are defined in <arpa/inet.h>])
+ AC_COMPILE_IFELSE(
+ [AC_LANG_PROGRAM([[#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#include <arpa/inet.h>
+]], [[(void) ntohs(0x0020), (void) ntohl(0x03040020);]])],
+ [AC_MSG_RESULT(yes)
+AC_DEFINE(NEED_ARPA_INET_H, 1, [Define to 1 if you must include <arpa/inet.h> to get `ntohl'.])
+ac_ntoh_defined=yes],
+ [AC_MSG_RESULT(no)])
+ fi
+fi
+if test $ac_ntoh_defined = no; then
+ AC_MSG_ERROR([
+=========================================
+
+Cannot find a definition for ntohs and/or ntohl!
+
+=========================================])
+fi
+AC_LANG_C
+
+
+dnl
+dnl is va_list addressable?
+dnl
+
+AC_LANG_CPLUSPLUS
+AC_CACHE_CHECK([for addressable va_list type],
+ ac_cv_va_list_addr,
+ [AC_TRY_COMPILE([#include <stdarg.h>
+void f(va_list *) {
+}
+void g(va_list val) {
+ f(&val);
+}
+void h(int a, ...) {
+ va_list val;
+ va_start(val, a);
+ g(val);
+ va_end(val);
+}], [h(2, 3, 4);], ac_cv_va_list_addr=yes, ac_cv_va_list_addr=no)])
+if test "x$ac_cv_va_list_addr" = xyes; then
+ AC_DEFINE(HAVE_ADDRESSABLE_VA_LIST, 1, [Define if the va_list type is addressable.])
+fi
+
+
+dnl
+dnl verbatim portions of the header
+dnl
+
+AC_DEFINE(HAVE_PERMSTRING, 1, [Define if PermStrings are available.])
+AC_DEFINE(MMAFM_RUN_MMPFB, 1, [Define to 0 if you don't want mmafm to run mmpfb when it needs to get an intermediate master conversion program.])
+dnl PATHNAME_SEPARATOR?
+
+AH_TOP([#ifndef LCDF_TYPETOOLS_CONFIG_H
+#define LCDF_TYPETOOLS_CONFIG_H])
+
+AH_BOTTOM([/* Allow compilation on Windows (thanks, Fabrice Popineau). */
+#ifdef WIN32
+# include <win32lib.h>
+#else
+# define CDECL /* nothing */
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/* Prototype strerror if we don't have it. */
+#if !HAVE_STRERROR
+char *strerror(int errno);
+#endif
+
+/* Prototype good_strtod if we need it. */
+#if BROKEN_STRTOD
+double good_strtod(const char *nptr, char **endptr);
+#endif
+
+#ifdef __cplusplus
+}
+/* Get rid of a possible inline macro under C++. */
+# define inline inline
+#endif
+
+#endif /* LCDF_TYPETOOLS_CONFIG_H */])
+
+
+dnl
+dnl set path variables
+dnl
+
+shell_expand () {
+ val=`eval echo '$'"$1"`
+ while echo "x$val" | fgrep '$' >/dev/null 2>&1; do val=`eval echo "$val"`; done
+ eval "$1='$val'"
+}
+
+dnl Preset $prefix and $exec_prefix.
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+shell_expand datadir
+
+AC_DEFINE_UNQUOTED(SHAREDIR, "$datadir/lcdf-typetools", [Data directory.])
+
+
+dnl
+dnl Output
+dnl
+
+AC_OUTPUT(Makefile liblcdf/Makefile libefont/Makefile cfftot1/Makefile mmafm/Makefile mmpfb/Makefile otfinfo/Makefile otftotfm/Makefile t1dotlessj/Makefile t1lint/Makefile t1reencode/Makefile t1testpage/Makefile ttftotype42/Makefile)