X-Git-Url: https://git.donarmstrong.com/?p=lilypond.git;a=blobdiff_plain;f=configure.ac;h=11addfb70044067bb4966f864519f2113a2ffb1f;hp=a403e35c18e41aabd9aa5a094721be0c28fc57a4;hb=a6a51abfd0195a3cf7d6ea095cf69808852f21ce;hpb=e8d5061834a5a658c5ffd078237e9cd660069a7d diff --git a/configure.ac b/configure.ac index a403e35c18..11addfb700 100644 --- a/configure.ac +++ b/configure.ac @@ -32,11 +32,17 @@ AC_ARG_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=""]) +AC_ARG_WITH(texgyre-dir, + [AS_HELP_STRING([--with-texgyre-dir=DIR], + [location of TeX Gyre fonts.])], + [TEXGYRE_DIR=$withval], + [TEXGYRE_DIR=""]) + +AC_ARG_WITH(urwotf-dir, + [AS_HELP_STRING([--with-urwotf-dir=DIR], + [location of URW++ OTF fonts.])], + [URWOTF_DIR=$withval], + [URWOTF_DIR=""]) reloc_b=no AC_ARG_ENABLE(relocation, @@ -61,104 +67,86 @@ AC_SUBST(LINK_GXX_STATICALLY) STEPMAKE_COMPILE AC_CHECK_PROG(FCLIST, fc-list, fc-list) -AC_MSG_CHECKING([for Century Schoolbook L PFB files]) -AC_SUBST(NCSB_SOURCE_FILES) -AC_SUBST(NCSB_DIR) -if test "$NCSB_DIR" = ""; then +AC_MSG_CHECKING([for TeX Gyre fonts OTF files]) +AC_SUBST(TEXGYRE_DIR) +AC_SUBST(TEXGYRE_FILES) +if test "$TEXGYRE_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)` + TEXGYRE_FILE=`$FCLIST "TeX Gyre Schola:fontformat=CFF" file | head -n 1` + if test "$TEXGYRE_FILE" != ""; then + TEXGYRE_FILE=`echo $TEXGYRE_FILE | sed 's/\(:.*\)$//g'` + TEXGYRE_FILE=`$PYTHON "$srcdir/scripts/auxiliar/readlink.py" $TEXGYRE_FILE` + TEXGYRE_DIR=`AS_DIRNAME($TEXGYRE_FILE)` fi fi fi -if test "$NCSB_DIR" != "" ; then - 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" +if test "$TEXGYRE_DIR" != "" ; then + for f in texgyreschola-regular.otf texgyreschola-italic.otf \ + texgyreschola-bold.otf texgyreschola-bolditalic.otf \ + texgyreheros-regular.otf texgyreheros-italic.otf \ + texgyreheros-bold.otf texgyreheros-bolditalic.otf \ + texgyrecursor-regular.otf texgyrecursor-italic.otf \ + texgyrecursor-bold.otf texgyrecursor-bolditalic.otf; do + if test ! -f "$TEXGYRE_DIR/$f"; then + MISSING_TEXGYRE_FILES="$MISSING_TEXGYRE_FILES $f" else - 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 + TEXGYRE_FILES="$TEXGYRE_FILES $f" fi done fi -if test "$NCSB_DIR" = "" -o "$MISSING_NCSB_SOURCE_FILES" != "$INCOMPLETE_NCSB_SOURCE_FILES"; then +if test "$TEXGYRE_DIR" = "" -o "$MISSING_TEXGYRE_FILES" != ""; then AC_MSG_RESULT(no) - STEPMAKE_ADD_ENTRY(REQUIRED,International Century Schoolbook L fonts) - if test "$NCSB_DIR" = ""; then + STEPMAKE_ADD_ENTRY(REQUIRED,TeX Gyre fonts OTF) + if test "$TEXGYRE_DIR" = ""; then if test "$FCLIST" = ""; then - STEPMAKE_ADD_ENTRY(REQUIRED,'(install the fc-list utility from FontConfig, or use --with-fonts-dir)') + STEPMAKE_ADD_ENTRY(REQUIRED,'(install the fc-list utility from FontConfig, or use --with-texgyre-dir)') else - STEPMAKE_ADD_ENTRY(REQUIRED,'(make sure the fc-list utility can see them, or use --with-fonts-dir)') + STEPMAKE_ADD_ENTRY(REQUIRED,"(make sure the fc-list utility can see them, e.g. 'sudo apt-get install fonts-texgyre', or use --with-texgyre-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)') + else + STEPMAKE_ADD_ENTRY(REQUIRED,'(these files are missing: $MISSING_TEXGYRE_FILES)') fi else 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 +AC_MSG_CHECKING([for URW++ OTF files]) +AC_SUBST(URWOTF_DIR) +AC_SUBST(URWOTF_FILES) +if test "$URWOTF_DIR" = ""; then + if test "$FCLIST" != ""; then + URWOTF_FILE=`$FCLIST "C059:fontformat=CFF" file | head -n 1` + if test "$URWOTF_FILE" != ""; then + URWOTF_FILE=`echo $URWOTF_FILE | sed 's/\(:.*\)$//g'` + URWOTF_FILE=`$PYTHON "$srcdir/scripts/auxiliar/readlink.py" $URWOTF_FILE` + URWOTF_DIR=`AS_DIRNAME($URWOTF_FILE)` 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" +if test "$URWOTF_DIR" != "" ; then + for f in C059-BdIta.otf C059-Bold.otf \ + C059-Italic.otf C059-Roman.otf \ + NimbusMonoPS-Bold.otf NimbusMonoPS-BoldItalic.otf \ + NimbusMonoPS-Italic.otf NimbusMonoPS-Regular.otf \ + NimbusSans-Bold.otf NimbusSans-BoldOblique.otf \ + NimbusSans-Oblique.otf NimbusSans-Regular.otf; do + if test ! -f "$URWOTF_DIR/$f"; then + MISSING_URWOTF_FILES="$MISSING_URWOTF_FILES $f" 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 + URWOTF_FILES="$URWOTF_FILES $f" fi done fi -if test "$NCSB_DIR" = "" -o "$MISSING_COUR_SOURCE_FILES" != "$INCOMPLETE_COUR_SOURCE_FILES"; then +if test "$URWOTF_DIR" = "" -o "$MISSING_URWOTF_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)') + STEPMAKE_ADD_ENTRY(OPTIONAL,URW++ OTF fonts) + if test "$URWOTF_DIR" = ""; then + if test "$FCLIST" = ""; then + STEPMAKE_ADD_ENTRY(OPTIONAL,'(install the fc-list utility from FontConfig, or use --with-urwotf-dir)') + else + STEPMAKE_ADD_ENTRY(OPTIONAL,"(download OTF files from 'http://git.ghostscript.com/?p=urw-core35-fonts.git;a=commit;h=79bcdfb34fbce12b592cce389fa7a19da6b5b018' and put them under '~/.local/share/fonts' etc., or use --with-urwotf-dir)") + fi + else + STEPMAKE_ADD_ENTRY(OPTIONAL,'(these files are missing: $MISSING_URWOTF_FILES)') fi else AC_MSG_RESULT(yes) @@ -193,7 +181,7 @@ STEPMAKE_TEXMF(REQUIRED) STEPMAKE_TEXMF_DIRS(REQUIRED) if test "$GUILEv2" = "yes" then - STEPMAKE_GUILE_DEVEL(REQUIRED, 2.0.7, 2.2.0) + STEPMAKE_GUILE_DEVEL(REQUIRED, 2.0.7, 2.3.0) else STEPMAKE_GUILE_DEVEL(REQUIRED, 1.8.2, 1.9.0) fi @@ -272,14 +260,22 @@ AC_MSG_RESULT($rpath_b) HOST_ARCH=`$CC -dumpmachine` AC_SUBST(HOST_ARCH) -STEPMAKE_PANGO_FT2(pangoft2, REQUIRED, 1.6.0) +STEPMAKE_PANGO_FT2_WITH_OTF_FEATURE(pangoft2, OPTIONAL, 1.38.0) +if test "$have_pangoft2_with_otf_feature" != yes ; then + STEPMAKE_PANGO_FT2(pangoft2, REQUIRED, 1.6.0) +fi STEPMAKE_FONTCONFIG(fontconfig, REQUIRED, 2.4.0) STEPMAKE_FREETYPE2(freetype2, REQUIRED, 2.1.10) STEPMAKE_WINDOWS # guile executable for some scripts -STEPMAKE_GUILE(OPTIONAL, 1.8.2, 1.9.0) +if test "$GUILEv2" = "yes" +then + STEPMAKE_GUILE(OPTIONAL, 2.0.7, 2.3.0) +else + STEPMAKE_GUILE(OPTIONAL, 1.8.2, 1.9.0) +fi # perl for help2man and for mf2pt1.pl STEPMAKE_PERL(REQUIRED) @@ -293,12 +289,45 @@ fi STEPMAKE_PATH_PROG(GHOSTSCRIPT, gs, $DOCUMENTATION_REQUIRED, 8.60) +AC_SUBST(GS920) +AC_SUBST(EXTRACTPDFMARK) +AC_SUBST(USE_EXTRACTPDFMARK) +STEPMAKE_PROGS(GS920, gs, OPTIONAL, 9.20) +STEPMAKE_PROGS(EXTRACTPDFMARK, extractpdfmark, OPTIONAL) +req=`STEPMAKE_NUMERIC_VERSION(9.20)` +USE_EXTRACTPDFMARK=yes +if test "$GS920_VERSION" -lt "$req"; then + GS920= + USE_EXTRACTPDFMARK=no +fi +if test "$EXTRACTPDFMARK" != "extractpdfmark"; then + EXTRACTPDFMARK= + USE_EXTRACTPDFMARK=no +fi +if test "$USE_EXTRACTPDFMARK" != "yes"; then + STEPMAKE_ADD_ENTRY(OPTIONAL, + ["(Optionally using Ghostscript >= 9.20 together with"]) + STEPMAKE_ADD_ENTRY(OPTIONAL, + [" Extract PDFmark can significantly reduce the disk space required"]) + STEPMAKE_ADD_ENTRY(OPTIONAL, + [" for building the documentation and the final PDF files.)"]) +fi + STEPMAKE_PROGS(MAKEINFO, makeinfo, REQUIRED, 4.11) STEPMAKE_PROGS(TEXI2HTML, texi2html, $DOCUMENTATION_REQUIRED, 1.82) STEPMAKE_PROGS(DBLATEX, dblatex, $DOCUMENTATION_REQUIRED, 0.1.4) STEPMAKE_PROGS(BIBTEX, bibtex, $DOCUMENTATION_REQUIRED) -STEPMAKE_PROGS(PDFLATEX, pdflatex, $DOCUMENTATION_REQUIRED) -STEPMAKE_PROGS(PDFTEX, pdfetex pdftex etex, $DOCUMENTATION_REQUIRED) +STEPMAKE_PROGS(PDFLATEX, xelatex pdflatex, $DOCUMENTATION_REQUIRED) +if test "$PDFLATEX" = "xelatex"; then + STEPMAKE_PROGS(PDFTEX, xetex, $DOCUMENTATION_REQUIRED) + if test "$PDFTEX" = "xetex"; then + # For avoiding PDF destination name replacement. + PDFTEX=$ugh_ugh_autoconf250_builddir/scripts/build/out$CONFIGSUFFIX/xetex-with-options + PDFLATEX=$ugh_ugh_autoconf250_builddir/scripts/build/out$CONFIGSUFFIX/xelatex-with-options + fi +else + STEPMAKE_PROGS(PDFTEX, pdfetex pdftex etex, $DOCUMENTATION_REQUIRED) +fi STEPMAKE_PROGS(TEXI2PDF, texi2pdf, $DOCUMENTATION_REQUIRED) STEPMAKE_PROGS(TEXINDEX, texindex, $DOCUMENTATION_REQUIRED) AC_MSG_CHECKING(for epsf.tex)