[DOCUMENTATION=$enableval])
AC_SUBST(DOCUMENTATION)
-AC_ARG_WITH(ncsb-dir,
- [AS_HELP_STRING([--with-ncsb-dir=DIR],
- [location of Century Schoolbook fonts.])],
+GUILEv2=no
+AC_ARG_ENABLE(guile2,
+ [AS_HELP_STRING([--enable-guile2],
+ [highly experimental GUILE 2 support. Default: off])],
+ [GUILEv2=$enableval])
+
+AC_ARG_WITH(fonts-dir,
+ [AS_HELP_STRING([--with-fonts-dir=DIR],
+ [location of URW++ fonts.])],
[NCSB_DIR=$withval],
[NCSB_DIR=""])
STEPMAKE_COMPILE
AC_CHECK_PROG(FCLIST, fc-list, fc-list)
-AC_MSG_CHECKING([New Century Schoolbook PFB files])
+AC_MSG_CHECKING([for Century Schoolbook L PFB files])
AC_SUBST(NCSB_SOURCE_FILES)
AC_SUBST(NCSB_DIR)
-UNCHECKED_NCSB_SOURCE_FILES=""
+if test "$NCSB_DIR" = ""; then
+ if test "$FCLIST" != ""; then
+ NCSB_FILE=`$FCLIST "Century Schoolbook L:foundry=urw:fontformat=Type 1:lang=ru" file \
+ | head -n 1`
+ if test "$NCSB_FILE" != ""; then
+ NCSB_FILE=`echo $NCSB_FILE | sed 's/\(:.*\)$//g'`
+ NCSB_FILE=`$PYTHON "$srcdir/scripts/auxiliar/readlink.py" $NCSB_FILE`
+ NCSB_DIR=`AS_DIRNAME($NCSB_FILE)`
+ fi
+ fi
+fi
if test "$NCSB_DIR" != "" ; then
- for f in c059013l c059016l c059033l c059036l; do
- if test ! -f "$NCSB_DIR/$f.pfb"; then
- STEPMAKE_WARN($NCSB_DIR does not contain $f.pfb.)
+ for f in c059013l.pfb c059016l.pfb c059033l.pfb c059036l.pfb; do
+ if test ! -f "$NCSB_DIR/$f"; then
+ MISSING_NCSB_SOURCE_FILES="$f $MISSING_NCSB_SOURCE_FILES"
else
- UNCHECKED_NCSB_SOURCE_FILES="$NCSB_DIR/$f.pfb $UNCHECKED_NCSB_SOURCE_FILES"
+ if test "`grep Cyrillic "$NCSB_DIR/$f"`" = ""; then
+ INCOMPLETE_NCSB_SOURCE_FILES="$f $INCOMPLETE_NCSB_SOURCE_FILES"
+ else
+ NCSB_SOURCE_FILES="$NCSB_DIR/$f $NCSB_SOURCE_FILES"
+ fi
fi
done
+fi
+if test "$NCSB_DIR" = "" -o "$MISSING_NCSB_SOURCE_FILES" != "$INCOMPLETE_NCSB_SOURCE_FILES"; then
+ AC_MSG_RESULT(no)
+ STEPMAKE_ADD_ENTRY(REQUIRED,International Century Schoolbook L fonts)
+ if test "$NCSB_DIR" = ""; then
+ if test "$FCLIST" = ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(install the fc-list utility from FontConfig, or use --with-fonts-dir)')
+ else
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(make sure the fc-list utility can see them, or use --with-fonts-dir)')
+ fi
+ fi
+ if test "$MISSING_NCSB_SOURCE_FILES" != ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(these files are missing: $MISSING_NCSB_SOURCE_FILES)')
+ fi
+ if test "$INCOMPLETE_NCSB_SOURCE_FILES" != ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(these files do not contain Cyrillic characters: $INCOMPLETE_NCSB_SOURCE_FILES)')
+ fi
else
- if test "$FCLIST" != ""; then
- for style in Roman Italic "Bold Italic" Bold; do
- NCSB_FILE=`$FCLIST "Century Schoolbook L:style=$style:foundry=urw:fontformat=Type 1" file \
- | head -n 1`
- NCSB_FILE=`echo $NCSB_FILE | sed 's/\(:.*\)$//g'`
- NCSB_FILE=`$PYTHON "$srcdir/scripts/auxiliar/readlink.py" $NCSB_FILE`
- UNCHECKED_NCSB_SOURCE_FILES="$NCSB_FILE $UNCHECKED_NCSB_SOURCE_FILES"
- done
- NCSB_DIR=`AS_DIRNAME($NCSB_FILE)`
- else
- AC_MSG_RESULT(not found)
- echo "Can't find Century Schoolbook files. Install FontConfig's fc-list,"
- echo "or use --with-ncsb-dir"
- STEPMAKE_ADD_ENTRY(REQUIRED,International New Century Schoolbook fonts)
+ AC_MSG_RESULT(yes)
+fi
+
+AC_MSG_CHECKING([for Nimbus Sans L (Helvetica) PFB files])
+AC_SUBST(HELV_SOURCE_FILES)
+if test "$NCSB_DIR" != "" ; then
+ for f in n019003l.pfb n019004l.pfb n019023l.pfb n019024l.pfb; do
+ if test ! -f "$NCSB_DIR/$f"; then
+ MISSING_HELV_SOURCE_FILES="$f $MISSING_HELV_SOURCE_FILES"
+ else
+ if test "`grep Cyrillic "$NCSB_DIR/$f"`" = ""; then
+ INCOMPLETE_HELV_SOURCE_FILES="$f $INCOMPLETE_HELV_SOURCE_FILES"
+ else
+ HELV_SOURCE_FILES="$NCSB_DIR/$f $HELV_SOURCE_FILES"
+ fi
+ fi
+ done
+fi
+if test "$NCSB_DIR" = "" -o "$MISSING_HELV_SOURCE_FILES" != "$INCOMPLETE_HELV_SOURCE_FILES"; then
+ AC_MSG_RESULT(no)
+ STEPMAKE_ADD_ENTRY(REQUIRED,International Nimbus Sans L fonts)
+ if test "$MISSING_HELV_SOURCE_FILES" != ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(these files are missing: $MISSING_HELV_SOURCE_FILES)')
fi
+ if test "$INCOMPLETE_HELV_SOURCE_FILES" != ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(these files do not contain Cyrillic characters: $INCOMPLETE_HELV_SOURCE_FILES)')
+ fi
+else
+ AC_MSG_RESULT(yes)
+fi
+
+AC_MSG_CHECKING([for Nimbus Mono L (Courier) PFB files])
+AC_SUBST(COUR_SOURCE_FILES)
+if test "$NCSB_DIR" != "" ; then
+ for f in n022003l.pfb n022004l.pfb n022023l.pfb n022024l.pfb; do
+ if test ! -f "$NCSB_DIR/$f"; then
+ MISSING_COUR_SOURCE_FILES="$f $MISSING_COUR_SOURCE_FILES"
+ else
+ if test "`grep Cyrillic "$NCSB_DIR/$f"`" = ""; then
+ INCOMPLETE_COUR_SOURCE_FILES="$f $INCOMPLETE_COUR_SOURCE_FILES"
+ else
+ COUR_SOURCE_FILES="$NCSB_DIR/$f $COUR_SOURCE_FILES"
+ fi
+ fi
+ done
fi
-NCSB_SOURCE_FILES=""
-for f in $UNCHECKED_NCSB_SOURCE_FILES; do
- if test "`grep Cyrillic "$f"`" = ""; then
- STEPMAKE_WARN($f does not have Cyrillic characters.)
- STEPMAKE_ADD_ENTRY(REQUIRED,International New Century Schoolbook fonts)
- else
- NCSB_SOURCE_FILES="$f $NCSB_SOURCE_FILES"
+if test "$NCSB_DIR" = "" -o "$MISSING_COUR_SOURCE_FILES" != "$INCOMPLETE_COUR_SOURCE_FILES"; then
+ AC_MSG_RESULT(no)
+ STEPMAKE_ADD_ENTRY(REQUIRED,International Nimbus Mono L fonts)
+ if test "$MISSING_COUR_SOURCE_FILES" != ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(these files are missing: $MISSING_COUR_SOURCE_FILES)')
+ fi
+ if test "$INCOMPLETE_COUR_SOURCE_FILES" != ""; then
+ STEPMAKE_ADD_ENTRY(REQUIRED,'(these files do not contain Cyrillic characters: $INCOMPLETE_COUR_SOURCE_FILES)')
fi
-done
-AC_MSG_RESULT($NCSB_SOURCE_FILES)
+else
+ AC_MSG_RESULT(yes)
+fi
AC_LANG([C++])
-STEPMAKE_PYTHON(REQUIRED, 2.4)
+STEPMAKE_PYTHON(REQUIRED, 2.4, 3.0)
# this checks if we have GNU C by compiling a program with
# __GNUC__, but that macro now unofficially means "the compiler
# supports the GNU C extensions" -- the intel C compiler and clang
STEPMAKE_DLOPEN
# Do not use bison 1.50 and 1.75.
# 1.29 is required fr %locations, but I'm not sure it's enough --ns
-STEPMAKE_BISON(OPTIONAL, 1.29)
+STEPMAKE_BISON(REQUIRED, 1.29)
STEPMAKE_FLEX(REQUIRED)
STEPMAKE_FLEXLEXER(REQUIRED)
STEPMAKE_FLEXLEXER_LOCATION
STEPMAKE_MSGFMT(REQUIRED)
STEPMAKE_TEXMF(REQUIRED)
STEPMAKE_TEXMF_DIRS(REQUIRED)
-STEPMAKE_GUILE_DEVEL(REQUIRED, 1.8.2)
+if test "$GUILEv2" = "yes"
+then
+ STEPMAKE_GUILE_DEVEL(REQUIRED, 2.0.7, 2.2.0)
+else
+ STEPMAKE_GUILE_DEVEL(REQUIRED, 1.8.2, 1.9.0)
+fi
# check for 3 typedefs added in Guile 1.9
save_CXXFLAGS="$CXXFLAGS"
CPPFLAGS="$save_CPPFLAGS"
-STEPMAKE_PYTHON_DEVEL(REQUIRED)
+STEPMAKE_PYTHON_DEVEL(REQUIRED, 2.4, 3.0)
STEPMAKE_PATH_PROG(FONTFORGE, fontforge, REQUIRED, 20110222)
STEPMAKE_WINDOWS
# guile executable for some scripts
-STEPMAKE_GUILE(OPTIONAL)
+STEPMAKE_GUILE(OPTIONAL, 1.8.2, 1.9.0)
-# perl for help2man.
-STEPMAKE_PERL(OPTIONAL)
+# perl for help2man and for mf2pt1.pl
+STEPMAKE_PERL(REQUIRED)
## Optional tools for building documentation, website, extra fonts.
if test "$DOCUMENTATION" = "yes"; then