summaryrefslogtreecommitdiff
path: root/configure.ac
diff options
context:
space:
mode:
authorANZ1217 <chihun.jeong@samsung.com>2024-01-16 17:47:17 +0900
committerANZ1217 <chihun.jeong@samsung.com>2024-01-16 17:47:17 +0900
commit7aa11e43ef72a5b04665c1efb407cfccc188af27 (patch)
tree3665106bde6601257051f4d69a5153ef1df4ecab /configure.ac
parent2ed73cdd0f0785ca235adf7800e6e43137117a4c (diff)
downloadfontconfig-7aa11e43ef72a5b04665c1efb407cfccc188af27.tar.gz
fontconfig-7aa11e43ef72a5b04665c1efb407cfccc188af27.tar.bz2
fontconfig-7aa11e43ef72a5b04665c1efb407cfccc188af27.zip
Imported Upstream version 2.14.2upstream
Diffstat (limited to 'configure.ac')
-rw-r--r--configure.ac163
1 files changed, 99 insertions, 64 deletions
diff --git a/configure.ac b/configure.ac
index fb8af467..f9a2c36f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,8 +1,8 @@
-dnl
+dnl
dnl fontconfig/configure.in
-dnl
+dnl
dnl Copyright © 2003 Keith Packard
-dnl
+dnl
dnl Permission to use, copy, modify, distribute, and sell this software and its
dnl documentation for any purpose is hereby granted without fee, provided that
dnl the above copyright notice appear in all copies and that both that
@@ -12,7 +12,7 @@ dnl advertising or publicity pertaining to distribution of the software without
dnl specific, written prior permission. The authors make no
dnl representations about the suitability of this software for any purpose. It
dnl is provided "as is" without express or implied warranty.
-dnl
+dnl
dnl THE AUTHOR(S) DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
dnl INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
dnl EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY SPECIAL, INDIRECT OR
@@ -26,15 +26,15 @@ dnl Process this file with autoconf to create configure.
AC_PREREQ(2.61)
dnl ==========================================================================
-dnl Versioning
+dnl Versioning
dnl ==========================================================================
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.13.1], [https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new])
-AM_INIT_AUTOMAKE([1.11 parallel-tests dist-bzip2])
+AC_INIT([fontconfig], [2.14.2], [https://gitlab.freedesktop.org/fontconfig/fontconfig/issues/new])
+AM_INIT_AUTOMAKE([1.11 parallel-tests dist-xz])
m4_ifdef([AM_SILENT_RULES],[AM_SILENT_RULES([yes])])
dnl ==========================================================================
@@ -53,6 +53,7 @@ m4_ifdef([PKG_INSTALLDIR], [PKG_INSTALLDIR], AC_SUBST([pkgconfigdir], ${libdir}/
AM_MISSING_PROG([GIT], [git])
AM_MISSING_PROG([GPERF], [gperf])
+AM_PATH_PYTHON([3])
AC_MSG_CHECKING([for RM macro])
_predefined_rm=`make -p -f /dev/null 2>/dev/null|grep '^RM ='|sed -e 's/^RM = //'`
@@ -88,14 +89,19 @@ PKGCONFIG_REQUIRES=
PKGCONFIG_REQUIRES_PRIVATELY=
dnl ==========================================================================
-case "$host" in
- *-*-mingw*)
- os_win32=yes
- ;;
- *)
- os_win32=no
+AC_CANONICAL_HOST
+os_win32=no
+os_darwin=no
+case "${host_os}" in
+ cygwin*|mingw*)
+ os_win32=yes
+ ;;
+ darwin*)
+ os_darwin=yes
+ ;;
esac
AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
+AM_CONDITIONAL(OS_DARWIN, test "$os_darwin" = "yes")
dnl ==========================================================================
dnl gettext stuff
@@ -104,7 +110,7 @@ GETTEXT_PACKAGE=$PACKAGE
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [Gettext package])
-AM_GNU_GETTEXT_VERSION([0.19.8])
+AM_GNU_GETTEXT_VERSION([0.19.7])
AM_GNU_GETTEXT([external])
dnl ==========================================================================
@@ -157,7 +163,7 @@ dnl ==========================================================================
# Checks for header files.
AC_HEADER_DIRENT
AC_HEADER_STDC
-AC_CHECK_HEADERS([fcntl.h stdlib.h string.h unistd.h sys/statvfs.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h])
+AC_CHECK_HEADERS([dirent.h fcntl.h stdlib.h string.h unistd.h sys/statvfs.h sys/vfs.h sys/statfs.h sys/param.h sys/mount.h])
AX_CREATE_STDINT_H([src/fcstdint.h])
# Checks for typedefs, structures, and compiler characteristics.
@@ -333,39 +339,6 @@ LIBS="$fontconfig_save_libs"
CFLAGS="$fontconfig_save_cflags"
#
-# Check for uuid
-#
-if test "$os_win32" != "yes"; then
- use_pkgconfig_for_uuid=yes
- if test -n "${UUID_LIBS}"; then
- save_UUID_LIBS=$UUID_LIBS
- fi
- PKG_CHECK_MODULES([UUID], [uuid],
- [use_pkgconfig_for_uuid=yes],
- [use_pkgconfig_for_uuid=no])
- if test "x$use_pkgconfig_for_uuid" = "xno"; then
- AC_MSG_CHECKING([where uuid functions comes from])
- AC_TRY_LINK([#include <uuid/uuid.h>],
- [uuid_t a; uuid_generate(a);],
- [AC_MSG_RESULT([builtin])
- UUID_CFLAGS=""
- UUID_LIBS=""
- ],[AC_MSG_ERROR([
-*** uuid is required. install util-linux.
- ])])
- else
- if test -z "${save_UUID_LIBS+x}" && test "x${UUID_LIBS}" != "x"; then
- PKGCONFIG_REQUIRES_PRIVATELY="$PKGCONFIG_REQUIRES_PRIVATELY uuid"
- fi
- fi
-else
- UUID_CFLAGS=""
- UUID_LIBS=""
-fi
-AC_SUBST(UUID_CFLAGS)
-AC_SUBST(UUID_LIBS)
-
-#
# Check expat configuration
#
AC_ARG_WITH(expat,
@@ -483,6 +456,25 @@ AC_SUBST(JSONC_CFLAGS)
AC_SUBST(JSONC_LIBS)
#
+# Set default sub-pixel rendering
+#
+
+AC_ARG_WITH(default-sub-pixel-rendering,
+ [AC_HELP_STRING([--with-default-sub-pixel-rendering=NAME],
+ [Enable your preferred sub-pixel rendering configuration (none/bgr/rgb/vbgr/vrgb) [default=none]])],
+ preferred_sub_pixel_rendering="$withval", preferred_sub_pixel_rendering=none)
+
+case "$preferred_sub_pixel_rendering" in
+none|bgr|rgb|vbgr|vrgb)
+ PREFERRED_SUB_PIXEL_RENDERING="$preferred_sub_pixel_rendering"
+ AC_SUBST(PREFERRED_SUB_PIXEL_RENDERING)
+ ;;
+*)
+ AC_MSG_ERROR([Invalid sub-pixel rendering. please choose one of none, bgr, rgb, vbgr, or vrgb])
+ ;;
+esac
+
+#
# Set default hinting
#
@@ -506,29 +498,38 @@ esac
#
AC_ARG_WITH(default-fonts,
- [AC_HELP_STRING([--with-default-fonts=DIR],
- [Use fonts from DIR when config is busted])],
+ [AC_HELP_STRING([--with-default-fonts=DIR1,DIR2,...],
+ [Use fonts from DIR1,DIR2,... when config is busted])],
default_fonts="$withval", default_fonts=yes)
case "$default_fonts" in
yes)
if test "$os_win32" = "yes"; then
- FC_DEFAULT_FONTS="WINDOWSFONTDIR"
- AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "WINDOWSFONTDIR",
- [Windows font directory])
+ default_fonts="WINDOWSFONTDIR,WINDOWSUSERFONTDIR"
+ elif test "$os_darwin" = "yes"; then
+ default_fonts="/System/Library/Fonts,/Library/Fonts,~/Library/Fonts,/System/Library/Assets/com_apple_MobileAsset_Font3,/System/Library/Assets/com_apple_MobileAsset_Font4"
else
- FC_DEFAULT_FONTS="/usr/share/fonts"
- AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "/usr/share/fonts",
- [System font directory])
+ default_fonts="/usr/share/fonts"
fi
;;
-*)
- FC_DEFAULT_FONTS="$default_fonts"
- AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$default_fonts",
- [System font directory])
- ;;
esac
+FC_DEFAULT_FONTS=""
+if test x${default_fonts+set} = xset; then
+ fc_IFS=$IFS
+ IFS=","
+ for p in $default_fonts; do
+ if test x"$FC_DEFAULT_FONTS" != x; then
+ FC_DEFAULT_FONTS="$FC_DEFAULT_FONTS "
+ fi
+ FC_DEFAULT_FONTS="$FC_DEFAULT_FONTS<dir>$p</dir>"
+ done
+ IFS=$fc_IFS
+fi
+
+AC_DEFINE_UNQUOTED(FC_DEFAULT_FONTS, "$FC_DEFAULT_FONTS",
+ [System font directory])
+
AC_SUBST(FC_DEFAULT_FONTS)
#
@@ -580,7 +581,7 @@ case "$FC_ADD_FONTS" in
"")
;;
*)
- FC_FONTPATH=`echo $FC_ADD_FONTS |
+ FC_FONTPATH=`echo $FC_ADD_FONTS |
sed -e 's/^/<dir>/' -e 's/$/<\/dir>/' -e 's/,/<\/dir> <dir>/g'`
;;
esac
@@ -684,6 +685,22 @@ dnl ===========================================================================
# Thread-safety primitives
#
+AC_CACHE_CHECK([stdatomic.h atomic primitives], fc_cv_have_stdatomic_atomic_primitives, [
+ fc_cv_have_stdatomic_atomic_primitives=false
+ AC_TRY_LINK([
+ #include <stdatomic.h>
+
+ void memory_barrier (void) { atomic_thread_fence (memory_order_acq_rel); }
+ int atomic_add (atomic_int *i) { return atomic_fetch_add_explicit (i, 1, memory_order_relaxed); }
+ int mutex_trylock (atomic_flag *m) { return atomic_flag_test_and_set_explicit (m, memory_order_acquire); }
+ void mutex_unlock (atomic_flag *m) { atomic_flag_clear_explicit (m, memory_order_release); }
+ ], [], fc_cv_have_stdatomic_atomic_primitives=true
+ )
+])
+if $fc_cv_have_stdatomic_atomic_primitives; then
+ AC_DEFINE(HAVE_STDATOMIC_PRIMITIVES, 1, [Have C99 stdatomic atomic primitives])
+fi
+
AC_CACHE_CHECK([for Intel atomic primitives], fc_cv_have_intel_atomic_primitives, [
fc_cv_have_intel_atomic_primitives=false
AC_TRY_LINK([
@@ -738,7 +755,13 @@ dnl ===========================================================================
# Let people not build/install docs if they don't have docbook
#
-AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
+AC_ARG_ENABLE(docbook,
+ [AS_HELP_STRING([--disable-docbook],
+ [Disable building docs with docbook2html (default: no)])],,)
+
+if test x$enable_docbook != xno; then
+ AC_CHECK_PROG(HASDOCBOOK, docbook2html, yes, no)
+fi
AM_CONDITIONAL(USEDOCBOOK, test "x$HASDOCBOOK" = xyes)
@@ -776,6 +799,19 @@ else
fi
AC_SUBST(DOCMAN3)
+dnl ===========================================================================
+default_cache_build="yes"
+if test $cross_compiling = "yes"; then
+ default_cache_build="no"
+fi
+AC_ARG_ENABLE(cache-build,
+ [AC_HELP_STRING([--disable-cache-build],
+ [Don't run fc-cache during the build])],
+ ,
+ enable_cache_build=$default_cache_build)
+
+AM_CONDITIONAL(ENABLE_CACHE_BUILD, test "x$enable_cache_build" = xyes)
+
dnl Figure out what cache format suffix to use for this architecture
AC_C_BIGENDIAN
@@ -815,7 +851,6 @@ its/Makefile
po/Makefile.in
po-conf/Makefile.in
test/Makefile
-fontconfig.spec
fontconfig.pc
fontconfig-zip
])