Defaulting <cachedir> to LOCAL_APPDATA_FONTCONFIG_CACHE for Win32 build
[platform/upstream/fontconfig.git] / configure.ac
index a2b1c72..ff79698 100644 (file)
@@ -33,7 +33,7 @@ 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
-AC_INIT([fontconfig], [2.10.93], [https://bugs.freedesktop.org/enger_bug.cgi?product=fontconfig])
+AC_INIT([fontconfig], [2.11.0], [https://bugs.freedesktop.org/enter_bug.cgi?product=fontconfig])
 AM_INIT_AUTOMAKE([1.11 parallel-tests dist-bzip2])
 m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
 
@@ -42,11 +42,11 @@ dnl libtool versioning
 dnl bump revision when fixing bugs
 dnl bump current and age, reset revision to zero when adding APIs
 dnl bump current, leave age, reset revision to zero when changing/removing APIS
-LIBT_CURRENT=8
+LIBT_CURRENT=9
 LIBT_REVISION=0
 AC_SUBST(LIBT_CURRENT)
 AC_SUBST(LIBT_REVISION)
-LIBT_AGE=7
+LIBT_AGE=8
 
 LIBT_VERSION_INFO="$LIBT_CURRENT:$LIBT_REVISION:$LIBT_AGE"
 AC_SUBST(LIBT_VERSION_INFO)
@@ -54,6 +54,9 @@ AC_SUBST(LIBT_VERSION_INFO)
 LIBT_CURRENT_MINUS_AGE=`expr $LIBT_CURRENT - $LIBT_AGE`
 AC_SUBST(LIBT_CURRENT_MINUS_AGE)
 
+PKGCONFIG_REQUIRES=
+PKGCONFIG_REQUIRES_PRIVATELY=
+
 dnl ==========================================================================
 
 AC_CONFIG_HEADERS(config.h)
@@ -145,44 +148,35 @@ AC_TYPE_PID_T
 # Checks for library functions.
 AC_FUNC_VPRINTF
 AC_FUNC_MMAP
-AC_CHECK_FUNCS([link mkstemp mkostemp _mktemp_s getopt getopt_long getprogname getexecname rand random lrand48 random_r rand_r regcomp regerror regexec regfree fstatvfs fstatfs lstat])
+AC_CHECK_FUNCS([link mkstemp mkostemp _mktemp_s mkdtemp getopt getopt_long getprogname getexecname rand random lrand48 random_r rand_r regcomp regerror regexec regfree fstatvfs fstatfs lstat])
 
 dnl AC_CHECK_FUNCS doesn't check for header files.
 dnl posix_fadvise() may be not available in older libc.
-fc_saved_CFLAGS="$CFLAGS"
-CFLAGS="$CFLAGS $WARN_CFLAGS -Werror"
-AC_MSG_CHECKING([for posix_fadvise])
-AC_LINK_IFELSE([AC_LANG_SOURCE([[
-       #include <fcntl.h>
-       int main(void) {
-           return posix_fadvise(0, 0, 0, 0);
-       }
-       ]])],[
-               AC_MSG_RESULT([yes])
-               AC_DEFINE([HAVE_POSIX_FADVISE], [1], [Define to 1 if you have the 'posix_fadvise' function.])
-       ],[AC_MSG_RESULT([no])])
-AC_MSG_CHECKING([for scandir])
-AC_LINK_IFELSE([AC_LANG_SOURCE([[
-       #include <dirent.h>
-       int comp(const struct dirent **, const struct dirent **);
-       int comp(const struct dirent **a, const struct dirent **b) { return 0; }
-       int main(void) {
-           struct dirent **d;
-           return scandir(".", &d, 0, &comp) >= 0;
-       }
-       ]])],[
+AC_CHECK_SYMBOL([posix_fadvise], [fcntl.h], [fc_func_posix_fadvise=1], [fc_func_posix_fadvise=0])
+AC_DEFINE_UNQUOTED([HAVE_POSIX_FADVISE], [$fc_func_posix_fadvise], [Define to 1 if you have the 'posix_fadivse' function.])
+if test "$os_win32" = "no"; then
+       AC_MSG_CHECKING([for scandir])
+       fc_saved_CFLAGS="$CFLAGS"
+       CFLAGS="$CFLAGS $WARN_CFLAGS -Werror"
+       AC_TRY_COMPILE([
+               #include <dirent.h>
+               int main(void);
+       ], [
+               int (* comp) (const struct dirent **, const struct dirent **) = 0;
+               struct dirent **d;
+               return scandir(".", &d, 0, comp) >= 0;
+       ], [
                AC_MSG_RESULT([yes])
                AC_DEFINE([HAVE_SCANDIR], [1], [Define to 1 if you have the 'scandir' function.])
-       ],[
-               AC_LINK_IFELSE([AC_LANG_SOURCE([[
+       ], [
+               AC_TRY_COMPILE([
                        #include <dirent.h>
-                       int comp(const void *, const void *);
-                       int comp(const void *a, const void *b) { return 0; }
-                       int main(void) {
-                           struct dirent **d;
-                           return scandir(".", &d, 0, &comp) >= 0;
-                       }
-               ]])],[
+                       int main(void);
+               ], [
+                       int (* comp) (const void *, const void *) = 0;
+                       struct dirent **d;
+                       return scandir(".", &d, 0, comp) >= 0;
+               ], [
                        AC_MSG_RESULT([yes])
                        AC_DEFINE([HAVE_SCANDIR_VOID_P], [1], [Define to 1 if you have the 'scandir' function with int (* compar)(const void *, const void *)])
                ],[
@@ -190,6 +184,7 @@ AC_LINK_IFELSE([AC_LANG_SOURCE([[
 *** No scandir function available.])
                ])
        ])
+fi
 CFLAGS="$fc_saved_CFLAGS"
 
 #
@@ -280,13 +275,14 @@ if test "x$enable_iconv" != "xno"; then
                AC_TRY_LINK([#include <iconv.h>],
                        [iconv_open ("from", "to");],
                        [iconv_type="libiconv"
-                        use_iconv=1],
+                        use_iconv=1
+                        ICONV_CFLAGS="$libiconv_cflags"
+                        ICONV_LIBS="$libiconv_libs"
+                        ],
                        [use_iconv=0])
 
                CFLAGS="$iconvsaved_CFLAGS"
                LIBS="$iconvsaved_LIBS"
-               ICONV_CFLAGS="$libiconv_cflags"
-               ICONV_LIBS="$libiconv_libs"
        fi
        if test "x$use_iconv" = "x0"; then
                AC_TRY_LINK([#include <iconv.h>],
@@ -306,6 +302,7 @@ AC_DEFINE_UNQUOTED(USE_ICONV,$use_iconv,[Use iconv.])
 # Checks for FreeType
 #
 PKG_CHECK_MODULES(FREETYPE, freetype2)
+PKGCONFIG_REQUIRES="$PKGCONFIG_REQUIRES freetype2"
 
 AC_SUBST(FREETYPE_LIBS)
 AC_SUBST(FREETYPE_CFLAGS)
@@ -365,6 +362,8 @@ if test "$enable_libxml2" != "yes"; then
                else
                        EXPAT_LIBS="-lexpat"
                fi
+       else
+               PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY expat"
        fi
 
        expatsaved_CPPFLAGS="$CPPFLAGS"
@@ -406,6 +405,7 @@ AC_ARG_ENABLE(libxml2,
 
 if test "$enable_libxml2" = "yes"; then
     PKG_CHECK_MODULES([LIBXML2], [libxml-2.0 >= 2.6])
+    PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY libxml-2.0"
     AC_DEFINE_UNQUOTED(ENABLE_LIBXML2,1,[Use libxml2 instead of Expat])
 
     AC_SUBST(LIBXML2_CFLAGS)
@@ -521,7 +521,7 @@ AC_ARG_WITH(cache-dir,
 case $fc_cachedir in
 no|yes)
        if test "$os_win32" = "yes"; then
-               fc_cachedir="WINDOWSTEMPDIR_FONTCONFIG_CACHE"
+               fc_cachedir="LOCAL_APPDATA_FONTCONFIG_CACHE"
        else
                fc_cachedir='${localstatedir}/cache/${PACKAGE}'
        fi
@@ -578,7 +578,7 @@ no|yes)
 esac
 case "$configdir" in
 no|yes)
-       configdir='${baseconfigdir}'/conf.d
+       configdir='${BASECONFIGDIR}'/conf.d
        ;;
 *)
        ;;
@@ -595,13 +595,9 @@ TEMPLATEDIR=${templatedir}
 BASECONFIGDIR=${baseconfigdir}
 CONFIGDIR=${configdir}
 XMLDIR=${xmldir}
-AC_SUBST(templatedir)
 AC_SUBST(TEMPLATEDIR)
-AC_SUBST(baseconfigdir)
 AC_SUBST(BASECONFIGDIR)
-AC_SUBST(configdir)
 AC_SUBST(CONFIGDIR)
-AC_SUBST(xmldir)
 AC_SUBST(XMLDIR)
 
 
@@ -713,6 +709,12 @@ dnl include the header file for workaround of miscalculating size on autoconf
 dnl particularly for fat binaries
 AH_BOTTOM([#include "config-fixups.h"])
 
+dnl
+dnl
+AC_SUBST(PKGCONFIG_REQUIRES)
+AC_SUBST(PKGCONFIG_REQUIRES_PRIVATELY)
+
+dnl
 AC_CONFIG_FILES([
 Makefile
 fontconfig/Makefile