]> git.wh0rd.org - fontconfig.git/blobdiff - configure.in
Add share/doc directory. Add Fc*.3 man pages.
[fontconfig.git] / configure.in
index ed03f1afb8c33bc32edaaf2170a841107feed9db..76e8d44ebc651e900c1d4887d5dd516f7c2a126d 100644 (file)
@@ -23,41 +23,61 @@ dnl  PERFORMANCE OF THIS SOFTWARE.
 dnl
 dnl Process this file with autoconf to create configure.
 
+AC_INIT(fonts.dtd)
+
 dnl ==========================================================================
 dnl                               Versioning              
 dnl ==========================================================================
 
-dnl The version number is also in fontconfig/fontconfig.h
-AC_INIT(ChangeLog,1.0.3,fontconfig@fontconfig.org)
+dnl This is the package version number, not the shared library
+dnl version.  This same version number must appear in fontconfig/fontconfig.h
+dnl Yes, it is a pain to synchronize version numbers.  Unfortunately, it's
+dnl not possible to extract the version number here from fontconfig.h
+AM_INIT_AUTOMAKE(fontconfig, 2.2.90)
 
-FONTCONFIG_HEADER=fontconfig/fontconfig.h
-FONTCONFIG_MAJOR=`awk '/^#define FC_MAJOR/ { print $3 }' $FONTCONFIG_HEADER`
-FONTCONFIG_MINOR=`awk '/^#define FC_MINOR/ { print $3 }' $FONTCONFIG_HEADER`
-FONTCONFIG_REVISION=`awk '/^#define FC_REVISION/ { print $3 }' $FONTCONFIG_HEADER`
-FONTCONFIG_VERSION="$FONTCONFIG_MAJOR.$FONTCONFIG_MINOR.$FONTCONFIG_REVISION"
+dnl libtool versioning
 
-AC_SUBST(FONTCONFIG_MAJOR)
-AC_SUBST(FONTCONFIG_MINOR)
-AC_SUBST(FONTCONFIG_REVISION)
-AC_SUBST(FONTCONFIG_VERSION)
+LT_CURRENT=1
+LT_REVISION=4
+AC_SUBST(LT_CURRENT)
+AC_SUBST(LT_REVISION)
+LT_AGE=0
 
-dnl libtool versioning
+LT_VERSION_INFO="$LT_CURRENT:$LT_REVISION:$LT_AGE"
+AC_SUBST(LT_VERSION_INFO)
 
-LT_VERSION_NUMBER="$FONTCONFIG_MAJOR:$FONTCONFIG_MINOR:$FONTCONFIG_REVISION"
-AC_SUBST(LT_VERSION_NUMBER)
+LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
+AC_SUBST(LT_CURRENT_MINUS_AGE)
 
 dnl ==========================================================================
 
-AM_INIT_AUTOMAKE(fontconfig, $FONTCONFIG_VERSION)
-
 AM_CONFIG_HEADER(config.h)
 
 AC_PROG_CC
 AC_PROG_INSTALL
 AC_PROG_LN_S
+AC_LIBTOOL_WIN32_DLL
 AM_PROG_LIBTOOL
 AC_PROG_MAKE_SET
 
+dnl ==========================================================================
+
+case "$host" in
+  *-*-mingw*)
+    os_win32=yes
+    ;;
+  *)
+    os_win32=no
+esac
+AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
+
+if test "$os_win32" = "yes"; then
+  AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
+fi
+AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
+
+dnl ==========================================================================
+
 # Checks for header files.
 AC_HEADER_DIRENT
 AC_HEADER_STDC
@@ -69,13 +89,13 @@ AC_TYPE_PID_T
 
 # Checks for library functions.
 AC_FUNC_VPRINTF
-AC_CHECK_FUNCS([memmove memset strchr strrchr strtol getopt getopt_long])
+AC_CHECK_FUNCS([geteuid getuid link memmove memset mkstemp strchr strrchr strtol getopt getopt_long])
 
 #
 # Checks for FreeType
 #
 
-AC_ARG_WITH(freetype_config, [ --with-freetype-config=PROG Use FreeType configuration program PROG], freetype_config=$withval, freetype_config=yes)
+AC_ARG_WITH(freetype-config, [  --with-freetype-config=PROG   Use FreeType configuration program PROG], freetype_config=$withval, freetype_config=yes)
 
 if test "$freetype_config" = "yes"; then 
        AC_PATH_PROG(ft_config,freetype-config,no)
@@ -86,8 +106,8 @@ else
        ft_config="$freetype_config"
 fi
 
-FREETYPE_CFLAGS="$($ft_config --cflags)"
-FREETYPE_LIBS="$($ft_config --libs)"
+FREETYPE_CFLAGS="`$ft_config --cflags`"
+FREETYPE_LIBS="`$ft_config --libs`"
 
 AC_SUBST(FREETYPE_LIBS)
 AC_SUBST(FREETYPE_CFLAGS)
@@ -106,8 +126,8 @@ LIBS=$fontconfig_save_libs
 #
 
 AC_ARG_WITH(expat,             [  --with-expat=DIR              Use Expat in DIR], expat=$withval, expat=yes)
-AC_ARG_WITH(expat_includes,    [  --with-expat-includes=DIR     Use Expat includes in DIR], expat_includes=$withval, expat_includes=yes)
-AC_ARG_WITH(expat_lib,         [  --with-expat-lib=DIR          Use Expat library in DIR], expat_lib=$withval, expat_lib=yes)
+AC_ARG_WITH(expat-includes,    [  --with-expat-includes=DIR     Use Expat includes in DIR], expat_includes=$withval, expat_includes=yes)
+AC_ARG_WITH(expat-lib,         [  --with-expat-lib=DIR          Use Expat library in DIR], expat_lib=$withval, expat_lib=yes)
 
 case "$expat" in
 no)
@@ -170,22 +190,22 @@ no)
                expat=no
                ;;
        yes)
-               AC_CHECK_FUNCS(XML_ParserCreate)
-               case "$ac_cv_func_XML_ParserCreate" in
-               no)
-                       expat=no
-                       ;;
+               AC_CHECK_FUNCS(XML_SetDoctypeDeclHandler)
+               case "$ac_cv_func_XML_SetDoctypeDeclHandler" in
                yes)
                        HAVE_EXPAT=1
                        AC_SUBST(HAVE_EXPAT)
                        AC_DEFINE_UNQUOTED(HAVE_EXPAT,$HAVE_EXPAT,
                        [Found a useable expat library])
                        ;;
+               *)
+                       expat=no
+                       ;;
                esac
                ;;
        esac
-       CPPFLAGS="$saved_CPPFLAGS"
-       LIBS="$saved_LIBS"
+       CPPFLAGS="$expatsaved_CPPFLAGS"
+       LIBS="$expatsaved_LIBS"
        ;;
 esac
 AC_SUBST(EXPAT_LIBS)
@@ -193,7 +213,7 @@ AC_SUBST(EXPAT_CFLAGS)
        
 case "$expat" in
 no)
-       AC_MSG_ERROR([cannot find expat library])
+       AC_MSG_ERROR([Cannot find usable expat library. This could mean that your version is too old.])
        ;;
 esac
 
@@ -201,13 +221,19 @@ esac
 # Set default font directory
 #
 
-AC_ARG_WITH(default_fonts,     [  --with-default-fonts=DIR      Use fonts from DIR when config is busted], defaultfonts="$withval", default_fonts=yes)
+AC_ARG_WITH(default-fonts,     [  --with-default-fonts=DIR      Use fonts from DIR when config is busted], default_fonts="$withval", default_fonts=yes)
 
 case "$default_fonts" in
 yes)
-       FC_DEFAULT_FONTS="/usr/share/fonts"
-       AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts", 
-                          [System font directory])
+       if test "$os_win32" = "yes"; then
+               FC_DEFAULT_FONTS="WINDOWSFONTDIR"
+               AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "WINDOWSFONTDIR", 
+                                  [Windows font directory])
+       else
+               FC_DEFAULT_FONTS="/usr/share/fonts"
+               AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts", 
+                                  [System font directory])
+       fi
        ;;
 *)
        FC_DEFAULT_FONTS="$default_fonts"
@@ -219,42 +245,56 @@ esac
 AC_SUBST(FC_DEFAULT_FONTS)
 
 #
-# Add X fonts if available
+# Add more fonts if available.  By default, add only the directories
+# with outline fonts; those with bitmaps can be added as desired in
+# local.conf or ~/.fonts.conf
 #
-AC_ARG_WITH(x_fonts,           [  --with-x-fonts=DIR            Find X fonts in DIR ], x_fonts="$withval", x_fonts=yes)
+AC_ARG_WITH(add-fonts,        [  --with-add-fonts=DIR1,DIR2,...Find additional fonts in DIR1,DIR2,... ], add_fonts="$withval", add_fonts=yes)
 
-case "$x_fonts" in
+case "$add_fonts" in
 yes)
-       FC_X_FONTS=""
-       for dir in /usr/X11R6/lib /usr/X11/lib /usr/lib/X11; do
-               case x"$FC_X_FONTS" in
+       FC_ADD_FONTS=""
+       for dir in /usr/X11R6/lib/X11 /usr/X11/lib/X11 /usr/lib/X11; do
+               case x"$FC_ADD_FONTS" in
                x)
                        if test -d "$dir/fonts"; then
-                               FC_X_FONTS="$dir/fonts"
+                               for sub in "$dir"/fonts/*; do
+                                       if ls "$sub" | grep -q -i '\.pf\|\.tt\|\.ot'; then
+                                               case x$FC_ADD_FONTS in
+                                               x)
+                                                       FC_ADD_FONTS="$sub"
+                                                       ;;
+                                               *)
+                                                       FC_ADD_FONTS="$FC_ADD_FONTS,$sub"
+                                                       ;;
+                                               esac
+                                       fi
+                               done
                        fi
                        ;;
                esac
        done
-       AC_DEFINE_UNQUOTED(FC_X_FONTS,"$x_fonts",[X font directory])
+       AC_DEFINE_UNQUOTED(FC_ADD_FONTS,"$add_fonts",[Additional font directories])
        ;;
 no)
-       FC_X_FONTS=""
+       FC_ADD_FONTS=""
        ;;
 *)
-       FC_X_FONTS="$x_fonts"
-       AC_DEFINE_UNQUOTED(FC_X_FONTS,"$x_fonts",[X font directory])
+       FC_ADD_FONTS="$add_fonts"
+       AC_DEFINE_UNQUOTED(FC_ADD_FONTS,"$add_fonts",[Additional font directories])
        ;;
 esac
 
-AC_SUBST(FC_X_FONTS)
+AC_SUBST(FC_ADD_FONTS)
 
 FC_FONTPATH=""
 
-case "$FC_X_FONTS" in
+case "$FC_ADD_FONTS" in
 "")
        ;;
 *)
-       FC_FONTPATH="<dir>$FC_X_FONTS</dir>"
+       FC_FONTPATH=`echo $FC_ADD_FONTS | 
+                       sed -e 's/^/<dir>/' -e 's/$/<\/dir>/' -e 's/,/<\/dir> <dir>/g'`
        ;;
 esac
 
@@ -272,13 +312,13 @@ AC_ARG_WITH(confdir,           [  --with-confdir=DIR            Use DIR to store
 
 case "$confdir" in
 no|yes)
-       confdir=/etc/fonts
+       confdir='${sysconfdir}'/fonts
        ;;
 *)
        ;;
 esac
 AC_SUBST(confdir)
-CONFDIR='${confdir}'
+CONFDIR=${confdir}
 AC_DEFINE_UNQUOTED(CONFDIR, "$CONFDIR",[Font configuration directory])
 AC_SUBST(CONFDIR)
 
@@ -289,11 +329,27 @@ AC_SUBST(CONFDIR)
 ORTH_FILES=`cd fc-lang && echo *.orth`
 AC_SUBST(ORTH_FILES)
 
+#
+# Let people not build/install docs if they don't have docbook
+#
+
+AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
+
+AC_ARG_ENABLE(docs,           [  --disable-docs                Don't build and install documentation],,enable_docs=yes)
+
+if test "x$enable_docs" = xyes; then
+  if test "x$HASDOCBOOK" != xyes; then
+    enable_docs=no
+  fi
+fi
+
+AM_CONDITIONAL(ENABLE_DOCS, test "x$enable_docs" = xyes)
+
 #
 # Figure out where to install documentation
 #
 
-AC_ARG_WITH(docdir,           [  --with-docdir=DIR            Use DIR to store documentation files (default ${datadir}/doc/fontconfig)], confdir="$withval")
+AC_ARG_WITH(docdir,           [  --with-docdir=DIR             Use DIR to store documentation files (default ${datadir}/doc/fontconfig)], confdir="$withval")
 
 if test "x$with_docdir" = "x" ; then
   DOCDIR='${datadir}/doc/fontconfig'
@@ -307,11 +363,17 @@ AC_OUTPUT([
 Makefile 
 fontconfig/Makefile
 fc-lang/Makefile
+fc-glyphname/Makefile
 src/Makefile
+src/fontconfig.def
 fc-cache/Makefile
 fc-list/Makefile
+fc-match/Makefile
 doc/Makefile
+doc/version.sgml
+test/Makefile
 fontconfig.spec
 fontconfig.pc
 fonts.conf
+fontconfig-zip
 ])